Index: lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/AuthoringController.java =================================================================== diff -u -rc82d171dbdd8918839e396f2851d6e11b68bb9e8 -r7b67ac0353336da9b914a82d30936b7ffe49c534 --- lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/AuthoringController.java (.../AuthoringController.java) (revision c82d171dbdd8918839e396f2851d6e11b68bb9e8) +++ lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/AuthoringController.java (.../AuthoringController.java) (revision 7b67ac0353336da9b914a82d30936b7ffe49c534) @@ -186,6 +186,9 @@ scratchieItem.setDisplayOrder(i); } i++; + + // prepare other version data for displaying + qbService.fillVersionMap(scratchieItem.getQbQuestion()); } //display confidence providing activities @@ -435,6 +438,9 @@ itemList.add(item); ResponseEntity.status(HttpStatus.BAD_REQUEST).body(null); + // prepare other version data for displaying + qbService.fillVersionMap(item.getQbQuestion()); + // set session map ID so that itemlist.jsp can get sessionMAP request.setAttribute(ScratchieConstants.ATTR_SESSION_MAP_ID, sessionMapID); return "pages/authoring/parts/itemlist"; @@ -574,6 +580,9 @@ false); } + // prepare other version data for displaying + qbService.fillVersionMap(item.getQbQuestion()); + // set session map ID so that itemlist.jsp can get sessionMAP request.setAttribute(ScratchieConstants.ATTR_SESSION_MAP_ID, form.getSessionMapID()); return "pages/authoring/parts/itemlist"; @@ -667,6 +676,21 @@ return "pages/authoring/parts/itemlist"; } + @RequestMapping("/changeItemQuestionVersion") + private String changeItemQuestionVersion(@RequestParam int itemIndex, @RequestParam long newQbQuestionUid, + HttpServletRequest request) { + SessionMap sessionMap = getSessionMap(request); + SortedSet itemList = getItemList(sessionMap); + List rList = new ArrayList<>(itemList); + ScratchieItem item = rList.get(itemIndex); + QbQuestion newQbQuestion = qbService.getQuestionByUid(newQbQuestionUid); + qbService.fillVersionMap(newQbQuestion); + item.setQbQuestion(newQbQuestion); + + request.setAttribute(ScratchieConstants.ATTR_ITEM_LIST, itemList); + return "pages/authoring/parts/itemlist"; + } + // ----------------------- Options functions --------------- /** Index: lams_tool_scratchie/web/pages/authoring/authoring.jsp =================================================================== diff -u -re6dc4db4137cfd6b07a4aa79711b9d12b39fb78e -r7b67ac0353336da9b914a82d30936b7ffe49c534 --- lams_tool_scratchie/web/pages/authoring/authoring.jsp (.../authoring.jsp) (revision e6dc4db4137cfd6b07a4aa79711b9d12b39fb78e) +++ lams_tool_scratchie/web/pages/authoring/authoring.jsp (.../authoring.jsp) (revision 7b67ac0353336da9b914a82d30936b7ffe49c534) @@ -24,6 +24,18 @@ #add-question-div { margin-top: -5px; } + .question-type-alert { + white-space: nowrap; + padding-top: 2px; + padding-bottom: 2px; + } + .newer-version-prompt { + text-align: left; + margin-top: 6px; + } + .question-version-dropdown { + margin-top: 3px; + }