Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/assessmentApplicationContext.xml =================================================================== diff -u -r98dbe6c2b98e6433f0721172f9c888599fb6fcf2 -r176ee597a35dd2bdf71e49889e6291051e260a29 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/assessmentApplicationContext.xml (.../assessmentApplicationContext.xml) (revision 98dbe6c2b98e6433f0721172f9c888599fb6fcf2) +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/assessmentApplicationContext.xml (.../assessmentApplicationContext.xml) (revision 176ee597a35dd2bdf71e49889e6291051e260a29) @@ -133,6 +133,7 @@ PROPAGATION_REQUIRED,-java.lang.Exception PROPAGATION_REQUIRED,-java.lang.Exception PROPAGATION_REQUIRED,-java.lang.Exception + PROPAGATION_REQUIRED,-java.lang.Exception PROPAGATION_REQUIRED,-java.lang.Exception PROPAGATION_REQUIRED,-java.lang.Exception PROPAGATION_REQUIRED,-java.lang.Exception Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/service/AssessmentServiceImpl.java =================================================================== diff -u -r98dbe6c2b98e6433f0721172f9c888599fb6fcf2 -r176ee597a35dd2bdf71e49889e6291051e260a29 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/service/AssessmentServiceImpl.java (.../AssessmentServiceImpl.java) (revision 98dbe6c2b98e6433f0721172f9c888599fb6fcf2) +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/service/AssessmentServiceImpl.java (.../AssessmentServiceImpl.java) (revision 176ee597a35dd2bdf71e49889e6291051e260a29) @@ -865,6 +865,13 @@ } return nextUrl; } + + @Override + public void unsetSessionFinished(Long toolSessionId, Long userId) { + AssessmentUser user = assessmentUserDao.getUserByUserIDAndSessionID(userId, toolSessionId); + user.setSessionFinished(false); + assessmentUserDao.saveObject(user); + } @Override public List getSessionDtos(Long contentId) { Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/service/IAssessmentService.java =================================================================== diff -u -r98dbe6c2b98e6433f0721172f9c888599fb6fcf2 -r176ee597a35dd2bdf71e49889e6291051e260a29 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/service/IAssessmentService.java (.../IAssessmentService.java) (revision 98dbe6c2b98e6433f0721172f9c888599fb6fcf2) +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/service/IAssessmentService.java (.../IAssessmentService.java) (revision 176ee597a35dd2bdf71e49889e6291051e260a29) @@ -321,6 +321,14 @@ * @return */ String finishToolSession(Long toolSessionId, Long userId) throws AssessmentApplicationException; + + /** + * Set userFinished to false + * + * @param toolSessionId + * @param userId + */ + void unsetSessionFinished(Long toolSessionId, Long userId); /** * Returns sessionDtos containing only session ids and session names. Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/LearningAction.java =================================================================== diff -u -rf8adf0e7362838f4cca08c7c2a5d9df2e45e3a68 -r176ee597a35dd2bdf71e49889e6291051e260a29 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/LearningAction.java (.../LearningAction.java) (revision f8adf0e7362838f4cca08c7c2a5d9df2e45e3a68) +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/LearningAction.java (.../LearningAction.java) (revision 176ee597a35dd2bdf71e49889e6291051e260a29) @@ -553,6 +553,7 @@ Assessment assessment = (Assessment) sessionMap.get(AssessmentConstants.ATTR_ASSESSMENT); Long toolSessionId = (Long) sessionMap.get(AssessmentConstants.ATTR_TOOL_SESSION_ID); AssessmentUser assessmentUser = (AssessmentUser) sessionMap.get(AssessmentConstants.ATTR_USER); + service.unsetSessionFinished(toolSessionId, assessmentUser.getUserId()); //set attempt started: create a new one + mark previous as not being the latest any longer List> pagedQuestions = (List>) sessionMap