Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/controller/AuthoringController.java =================================================================== diff -u -r5d2334856d8fb3cbed3108641e3c4ea6d526cd70 -rf7837f2892736221011a0eb6cbef1027b6692224 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/controller/AuthoringController.java (.../AuthoringController.java) (revision 5d2334856d8fb3cbed3108641e3c4ea6d526cd70) +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/controller/AuthoringController.java (.../AuthoringController.java) (revision f7837f2892736221011a0eb6cbef1027b6692224) @@ -662,6 +662,20 @@ return "pages/authoring/parts/questionlist"; } + @RequestMapping(path = "/toggleQuestionRequired", method = RequestMethod.POST) + @ResponseBody + public String toggleQuestionRequired(HttpServletRequest request, @RequestParam int referenceSequenceId) { + SessionMap sessionMap = getSessionMap(request); + SortedSet questionReferences = getQuestionReferences(sessionMap); + + List rList = new ArrayList<>(questionReferences); + QuestionReference questionReference = rList.remove(referenceSequenceId); + AssessmentQuestion question = questionReference.getQuestion(); + question.setAnswerRequired(!question.isAnswerRequired()); + + return String.valueOf(question.isAnswerRequired()); + } + @RequestMapping("/getAllQbQuestionUids") @ResponseBody public String getAllQbQuestionUids(HttpServletRequest request, HttpServletResponse response, Index: lams_tool_assessment/web/pages/authoring/basic.jsp =================================================================== diff -u -rbd5bbb74ec968f0048a3be657eae4ed7bdeef7d6 -rf7837f2892736221011a0eb6cbef1027b6692224 --- lams_tool_assessment/web/pages/authoring/basic.jsp (.../basic.jsp) (revision bd5bbb74ec968f0048a3be657eae4ed7bdeef7d6) +++ lams_tool_assessment/web/pages/authoring/basic.jsp (.../basic.jsp) (revision f7837f2892736221011a0eb6cbef1027b6692224) @@ -101,6 +101,27 @@ $(link).attr("href", editHref); } + function toggleQuestionRequired(icon){ + var sequenceId = $('.reference-sequence-id', $(icon).parents('tr')).val(); + + $.ajax({ + url: '', + type: 'POST', + dataType : 'text', + data: { + sessionMapID: "${sessionMapID}", + referenceSequenceId: sequenceId + }, + success(isRequired) { + if (isRequired == 'true') { + $(icon).addClass('text-danger'); + } else if (isRequired == 'false') { + $(icon).removeClass('text-danger'); + } + } + }); + } + function refreshThickbox(){ tb_init('a.thickbox, area.thickbox, input.thickbox');//pass where to apply thickbox }; Index: lams_tool_assessment/web/pages/authoring/parts/questionlist.jsp =================================================================== diff -u -r670dd8e248dc4705c92031c79d05a99559e35024 -rf7837f2892736221011a0eb6cbef1027b6692224 --- lams_tool_assessment/web/pages/authoring/parts/questionlist.jsp (.../questionlist.jsp) (revision 670dd8e248dc4705c92031c79d05a99559e35024) +++ lams_tool_assessment/web/pages/authoring/parts/questionlist.jsp (.../questionlist.jsp) (revision f7837f2892736221011a0eb6cbef1027b6692224) @@ -144,6 +144,13 @@ + " + alt="" + onClick="javascript:toggleQuestionRequired(this)"> + + + "> Index: lams_tool_assessment/web/pages/authoring/parts/questionlistRestricted.jsp =================================================================== diff -u -r670dd8e248dc4705c92031c79d05a99559e35024 -rf7837f2892736221011a0eb6cbef1027b6692224 --- lams_tool_assessment/web/pages/authoring/parts/questionlistRestricted.jsp (.../questionlistRestricted.jsp) (revision 670dd8e248dc4705c92031c79d05a99559e35024) +++ lams_tool_assessment/web/pages/authoring/parts/questionlistRestricted.jsp (.../questionlistRestricted.jsp) (revision f7837f2892736221011a0eb6cbef1027b6692224) @@ -75,6 +75,13 @@ + + + " + alt="" + onClick="javascript:toggleQuestionRequired(this)"> +