From 63b096ccb726e40aa60b2afaedd10365ca3f78d5 Mon Sep 17 00:00:00 2001 From: Jun Pataleta Date: Tue, 1 Aug 2017 15:01:07 +0800 Subject: [PATCH] MDL-59666 mod_assign: Add validation for grading due date --- mod/assign/lang/en/assign.php | 2 ++ mod/assign/mod_form.php | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/mod/assign/lang/en/assign.php b/mod/assign/lang/en/assign.php index 7469fcaa72f..8b34a0f2eaa 100644 --- a/mod/assign/lang/en/assign.php +++ b/mod/assign/lang/en/assign.php @@ -252,6 +252,8 @@ $string['grading'] = 'Grading'; $string['gradingchangessaved'] = 'The grade changes were saved'; $string['gradingduedate'] = 'Remind me to grade by'; $string['gradingduedate_help'] = 'The expected date that marking of the submissions should be completed by. This date is used to prioritise dashboard notifications for teachers.'; +$string['gradingdueduedatevalidation'] = 'Remind me to grade by date cannot be earlier than the due date.'; +$string['gradingduefromdatevalidation'] = 'Remind me to grade by date cannot be earlier than the allow submissions from date.'; $string['gradechangessaveddetail'] = 'The changes to the grade and feedback were saved'; $string['gradingmethodpreview'] = 'Grading criteria'; $string['gradingoptions'] = 'Options'; diff --git a/mod/assign/mod_form.php b/mod/assign/mod_form.php index 3a2327266d4..7f88c0738de 100644 --- a/mod/assign/mod_form.php +++ b/mod/assign/mod_form.php @@ -238,6 +238,14 @@ class mod_assign_mod_form extends moodleform_mod { $errors['cutoffdate'] = get_string('cutoffdatefromdatevalidation', 'assign'); } } + if ($data['gradingduedate']) { + if ($data['allowsubmissionsfromdate'] && $data['allowsubmissionsfromdate'] > $data['gradingduedate']) { + $errors['gradingduedate'] = get_string('gradingduefromdatevalidation', 'assign'); + } + if ($data['duedate'] && $data['duedate'] > $data['gradingduedate']) { + $errors['gradingduedate'] = get_string('gradingdueduedatevalidation', 'assign'); + } + } if ($data['blindmarking'] && $data['attemptreopenmethod'] == ASSIGN_ATTEMPT_REOPEN_METHOD_UNTILPASS) { $errors['attemptreopenmethod'] = get_string('reopenuntilpassincompatiblewithblindmarking', 'assign'); }