Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McAction.java =================================================================== diff -u -r733ac4c614be88c0156e0050154a4da994c79d27 -r16d25287bf76860910a1f3d79f670382a926fdc2 --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McAction.java (.../McAction.java) (revision 733ac4c614be88c0156e0050154a4da994c79d27) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McAction.java (.../McAction.java) (revision 16d25287bf76860910a1f3d79f670382a926fdc2) @@ -2292,34 +2292,41 @@ if (mcLearningForm.getContinueOptionsCombined() != null) { + setContentInUse(request); return continueOptionsCombined(mapping, form, request, response); } else if (mcLearningForm.getNextOptions() != null) { + setContentInUse(request); return getNextOptions(mapping, form, request, response); } else if (mcLearningForm.getOptionCheckBoxSelected() != null) { + setContentInUse(request); logger.debug("requested selectOptionsCheckBox..."); mcLearningForm.resetCommands(); LearningUtil.selectOptionsCheckBox(request,mcLearningForm, mcLearningForm.getQuestionIndex()); } else if (mcLearningForm.getRedoQuestions() != null) { + setContentInUse(request); return redoQuestions(mapping, form, request, response); } else if (mcLearningForm.getRedoQuestionsOk() != null) { + setContentInUse(request); logger.debug("requested redoQuestionsOk, user is sure to redo the questions."); mcLearningForm.resetCommands(); return redoQuestions(request, mcLearningForm, mapping); } else if (mcLearningForm.getViewAnswers() != null) { + setContentInUse(request); return viewAnswers(mapping, form, request, response); } else if (mcLearningForm.getViewSummary() != null) { + setContentInUse(request); return viewSummary(mapping, form, request, response); } else if (mcLearningForm.getLearnerFinished() != null) @@ -2665,6 +2672,27 @@ return (mapping.findForward(RESULTS_SUMMARY)); } + + /** + * marks the content as used content + * setContentInUse(HttpServletRequest request) + * + * @param request + */ + protected void setContentInUse(HttpServletRequest request) + { + IMcService mcService =McUtils.getToolService(request); + Long toolContentId=(Long)request.getSession().getAttribute(TOOL_CONTENT_ID); + logger.debug("toolContentId:" + toolContentId); + + McContent mcContent=mcService.retrieveMc(toolContentId); + logger.debug("mcContent:" + mcContent); + mcContent.setContentInUse(true); + logger.debug("content has been set to inuse"); + mcService.saveMcContent(mcContent); + } + + /** * redoQuestions(HttpServletRequest request, McLearningForm mcLearningForm, ActionMapping mapping)