diff --git a/mod/assign/locallib.php b/mod/assign/locallib.php index 56127e496c7..1a4964929d0 100644 --- a/mod/assign/locallib.php +++ b/mod/assign/locallib.php @@ -3303,7 +3303,15 @@ class assign { } } - if ($this->grading_disabled($userid)) { + // See if this user grade is locked in the gradebook. + $gradinginfo = grade_get_grades($this->get_course()->id, + 'mod', + 'assign', + $this->get_instance()->id, + array($userid)); + if ($gradinginfo && + isset($gradinginfo->items[0]->grades[$userid]) && + $gradinginfo->items[0]->grades[$userid]->locked) { return false; } @@ -4073,7 +4081,11 @@ class assign { /** +<<<<<<< HEAD * Determine if this users grade is locked or overridden +======= + * Determine if this users grade can be edited. +>>>>>>> fafad00... MDL-34989 assign: Do not add a param to grading_disabled - cannot be backported. * * @param int $userid - The student userid * @return bool $gradingdisabled @@ -4170,10 +4182,11 @@ class assign { if (!$gradingdisabled) { $gradingelement = $mform->addElement('text', 'grade', $name); $mform->addHelpButton('grade', 'gradeoutofhelp', 'assign'); - $mform->setType('grade', PARAM_TEXT); + $mform->setType('grade', PARAM_RAW); } else { $mform->addElement('hidden', 'grade', $name); $mform->hardFreeze('grade'); + $mform->setType('grade', PARAM_RAW); $strgradelocked = get_string('gradelocked', 'assign'); $mform->addElement('static', 'gradedisabled', $name, $strgradelocked); $mform->addHelpButton('gradedisabled', 'gradeoutofhelp', 'assign');