Index: lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/model/ScratchieItem.java =================================================================== diff -u -r1268ec552ee72a22db3a5df680d46de7db79e0c0 -rff37a5fb4bf9a24adde51ee67eb408f0790e128f --- lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/model/ScratchieItem.java (.../ScratchieItem.java) (revision 1268ec552ee72a22db3a5df680d46de7db79e0c0) +++ lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/model/ScratchieItem.java (.../ScratchieItem.java) (revision ff37a5fb4bf9a24adde51ee67eb408f0790e128f) @@ -65,6 +65,8 @@ private List optionDtos = null; @Transient private int mark; + @Transient + private String correctAnswerLetter; @Override public Object clone() { @@ -121,4 +123,11 @@ this.mark = mark; } + public String getCorrectAnswerLetter() { + return correctAnswerLetter; + } + + public void setCorrectAnswerLetter(String correctAnswerLetters) { + this.correctAnswerLetter = correctAnswerLetters; + } } \ No newline at end of file Index: lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/service/ScratchieServiceImpl.java =================================================================== diff -u -r2db58f73e88ecef930d486c60cc53fb3fa483415 -rff37a5fb4bf9a24adde51ee67eb408f0790e128f --- lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/service/ScratchieServiceImpl.java (.../ScratchieServiceImpl.java) (revision 2db58f73e88ecef930d486c60cc53fb3fa483415) +++ lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/service/ScratchieServiceImpl.java (.../ScratchieServiceImpl.java) (revision ff37a5fb4bf9a24adde51ee67eb408f0790e128f) @@ -1324,8 +1324,7 @@ /** * Return list of correct AnswerLetters, one per each item */ - public static List getCorrectAnswerLetters(Collection items) { - List correctAnswerLetters = new ArrayList<>(); + public static void fillCorrectAnswerLetters(Collection items) { for (ScratchieItem item : items) { boolean isMcqItem = item.getQbQuestion().getType() == QbQuestion.TYPE_MULTIPLE_CHOICE; @@ -1347,10 +1346,8 @@ correctAnswerLetter = options.get(0).isCorrect() ? "A" : "B"; } } - correctAnswerLetters.add(correctAnswerLetter); + item.setCorrectAnswerLetter(correctAnswerLetter); } - - return correctAnswerLetters; } @Override @@ -1444,8 +1441,9 @@ row = reportByTeamSheet.initRow(); row.addCell(getMessage("label.correct.answer")); - for (String correctAnswerLetter : ScratchieServiceImpl.getCorrectAnswerLetters(items)) { - row.addCell(correctAnswerLetter); + ScratchieServiceImpl.fillCorrectAnswerLetters(items); + for (ScratchieItem item : items) { + row.addCell(item.getCorrectAnswerLetter()); } row = reportByTeamSheet.initRow(); @@ -1967,11 +1965,11 @@ Set items = new TreeSet<>(new ScratchieItemComparator()); items.addAll(scratchie.getScratchieItems()); - model.put("items", items); + List itemList = new LinkedList<>(items); + model.put("items", itemList); //correct answers row - List correctAnswerLetters = ScratchieServiceImpl.getCorrectAnswerLetters(items); - model.put("correctAnswerLetters", correctAnswerLetters); + ScratchieServiceImpl.fillCorrectAnswerLetters(itemList); Map sessionsByName = scratchieSessionDao.getByContentId(scratchie.getContentId()) .stream().filter(s -> s.getGroupLeader() != null) @@ -1993,7 +1991,7 @@ List optionDtos = new LinkedList<>(); for (int j = 0; j < optionLetters.length; j++) { String optionLetter = optionLetters[j]; - String correctOptionLetter = correctAnswerLetters.get(i); + String correctOptionLetter = itemList.get(i).getCorrectAnswerLetter(); OptionDTO optionDto = new OptionDTO(); optionDto.setAnswer(optionLetter); Index: lams_tool_scratchie/web/pages/monitoring/studentChoices.jsp =================================================================== diff -u -r3c3e6d09ccfbfd0b279a5c2a0363d482d2eb77d4 -rff37a5fb4bf9a24adde51ee67eb408f0790e128f --- lams_tool_scratchie/web/pages/monitoring/studentChoices.jsp (.../studentChoices.jsp) (revision 3c3e6d09ccfbfd0b279a5c2a0363d482d2eb77d4) +++ lams_tool_scratchie/web/pages/monitoring/studentChoices.jsp (.../studentChoices.jsp) (revision ff37a5fb4bf9a24adde51ee67eb408f0790e128f) @@ -38,6 +38,10 @@ color: white; border-radius: 3px; } + span.user-response .fa, .question-detail-modal .fa { + cursor: default; + } + span.successful-response { background-color: #5cb85c; } @@ -128,9 +132,11 @@ - + - ${correctAnswerLetter} + + ${item.correctAnswerLetter} + @@ -152,7 +158,7 @@ - ${sessionDto.sessionName} + {sessionDto.sessionName} @@ -180,7 +186,14 @@ successful-response wrong-response"> - + + + + + + + + @@ -209,7 +222,7 @@ -