Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/controller/LearningController.java =================================================================== diff -u -re194f22014c7cbffaf5168f1982aa89e7c34c34d -ra7467b00292762ea5a77e643721b18fb70224451 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/controller/LearningController.java (.../LearningController.java) (revision e194f22014c7cbffaf5168f1982aa89e7c34c34d) +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/controller/LearningController.java (.../LearningController.java) (revision a7467b00292762ea5a77e643721b18fb70224451) @@ -177,6 +177,8 @@ AssessmentUser groupLeader = assessment.isUseSelectLeaderToolOuput() ? service.checkLeaderSelectToolForSessionLeader(user, toolSessionId) : null; + boolean isUserLeader = groupLeader != null && user.getUserId().equals(groupLeader.getUserId()); + if (assessment.isUseSelectLeaderToolOuput() && !mode.isTeacher()) { // forwards to the leaderSelection page @@ -194,8 +196,7 @@ && lastLeaderResult.getFinishDate() != null; // forwards to the waitForLeader pages - boolean isNonLeader = !user.getUserId().equals(groupLeader.getUserId()); - if (assessment.getRelativeTimeLimit() != 0 && isNonLeader && !isLastAttemptFinishedByLeader) { + if (assessment.getRelativeTimeLimit() != 0 && !isUserLeader && !isLastAttemptFinishedByLeader) { //show waitForLeaderLaunchTimeLimit page if the leader hasn't started activity or hasn't pressed OK button to launch time limit if (lastLeaderResult == null || lastLeaderResult.getTimeLimitLaunchedDate() == null) { @@ -224,7 +225,7 @@ } sessionMap.put(AssessmentConstants.ATTR_GROUP_LEADER, groupLeader); - boolean isUserLeader = service.isUserGroupLeader(user.getUserId(), toolSessionId); + isUserLeader |= service.isUserGroupLeader(user.getUserId(), toolSessionId); sessionMap.put(AssessmentConstants.ATTR_IS_USER_LEADER, isUserLeader); Set questionReferences = new TreeSet<>(new SequencableComparator());