Index: lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/action/LearningAction.java =================================================================== diff -u -r0aabb756f82d82d1b238b987f4a1b236b841ec61 -r2fc43fdb5c3b774790abb743a5c71587fff6f716 --- lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/action/LearningAction.java (.../LearningAction.java) (revision 0aabb756f82d82d1b238b987f4a1b236b841ec61) +++ lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/action/LearningAction.java (.../LearningAction.java) (revision 2fc43fdb5c3b774790abb743a5c71587fff6f716) @@ -154,6 +154,12 @@ //in case user joins the lesson after leader has scratched some answers already - we need to make sure he has the same scratches as leader if (!mode.isTeacher()) { service.copyScratchesFromLeader(user, groupLeader); + + //if user joins a lesson after leader has already finished an activity set his scratchingFinished parameter to true + if (groupLeader.isScratchingFinished()) { + user.setScratchingFinished(true); + service.saveUser(user); + } } // initial Session Map @@ -365,7 +371,6 @@ SessionMap sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); request.setAttribute(ScratchieConstants.ATTR_SESSION_MAP_ID, sessionMapID); Long toolSessionId = (Long) sessionMap.get(AttributeNames.PARAM_TOOL_SESSION_ID); - ToolAccessMode mode = WebUtil.readToolAccessModeParam(request, AttributeNames.PARAM_MODE, true); IScratchieService service = getScratchieService(); Long userId = (Long) sessionMap.get(ScratchieConstants.ATTR_USER_ID);