$finalgrade = unformat_float($postedvalue);
}
+ // Warn if the grade is out of bounds.
+ $errorstr = '';
+ if ($finalgrade < $grade_item->grademax) {
+ $errorstr = 'lessthanmin';
+ } else if ($finalgrade > $grade_item->grademax) {
+ $errorstr = 'morethanmax';
+ }
+ if ($errorstr) {
+ $user = get_record('user', 'id', $userid,'','','','','id, firstname, lastname');
+ $gradestr->username = fullname($user);
+ $gradestr->itemname = $grade_item->get_name();
+ notify(get_string($errorstr, 'grades', $gradestr));
+ }
+
} else if ($data_type == 'feedback') {
$finalgrade = false;
$trimmed = trim($postedvalue);
if (is_null($finalgrade)) {
$grade->finalgrade = null;
} else {
- // MDL-12517, warn user if grade is out of bounds
- if ($finalgrade < $this->grademin) {
- $user = get_record('user', 'id', $grade->userid,'','','','','id, firstname, lastname');
- $gradestr->username = fullname($user);
- $gradestr->itemname = $this->get_name();
- notify(get_string('lessthanmin', 'grades', $gradestr));
- } else if ($finalgrade > $this->grademax) {
- $user = get_record('user', 'id', $grade->userid,'','','','','id, firstname, lastname');
- $gradestr->username = fullname($user);
- $gradestr->itemname = $this->get_name();
- notify(get_string('morethanmax', 'grades', $gradestr));
- }
$grade->finalgrade = (float)bounded_number($this->grademin, $finalgrade, $this->grademax);
}
}