From f9b0e253f8c934fb28a59b0ad3609bd5275a2787 Mon Sep 17 00:00:00 2001 From: srosse <stephane.rosse@frentix.com> Date: Tue, 18 Jun 2019 13:23:26 +0200 Subject: [PATCH] OO-4045: close manual mode started too early with follow-up time --- .../manager/AssessmentModeCoordinationServiceImpl.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/main/java/org/olat/course/assessment/manager/AssessmentModeCoordinationServiceImpl.java b/src/main/java/org/olat/course/assessment/manager/AssessmentModeCoordinationServiceImpl.java index 98b7357b861..643ad5575db 100644 --- a/src/main/java/org/olat/course/assessment/manager/AssessmentModeCoordinationServiceImpl.java +++ b/src/main/java/org/olat/course/assessment/manager/AssessmentModeCoordinationServiceImpl.java @@ -249,6 +249,13 @@ public class AssessmentModeCoordinationServiceImpl implements AssessmentModeCoor mode = ensureStatusOfMode(mode, Status.none); sendEvent(AssessmentModeNotificationEvent.BEFORE, mode, assessmentModeManager.getAssessedIdentityKeys(mode)); + } else if(mode.getStatus() == Status.followup && mode.isManualBeginEnd() && !forceStatus) { + // close manual assessment mode in the follow-up time but started before the begin date + if(mode.getEndWithFollowupTime().compareTo(now) < 0) { + mode = ensureStatusOfMode(mode, Status.end); + sendEvent(AssessmentModeNotificationEvent.END, mode, + assessmentModeManager.getAssessedIdentityKeys(mode)); + } } } else if(mode.getBeginWithLeadTime().compareTo(now) <= 0 && mode.getBegin().compareTo(now) > 0 && mode.getBeginWithLeadTime().compareTo(mode.getBegin()) != 0) { -- GitLab