From 85a0a69fa4bba7f6367be4c987d4cd5f6e0f833f Mon Sep 17 00:00:00 2001 From: skodak Date: Mon, 21 Jan 2008 07:19:19 +0000 Subject: [PATCH] MDL-13081 add "long grade" formatted string "score / maxscore" into grade_get_grades() and friends; merged from MOODLE_19_STABLE --- grade/querylib.php | 32 ++++++++++++++++++++++++++------ lang/en_utf8/grades.php | 1 + lib/gradelib.php | 16 +++++++++++++--- 3 files changed, 40 insertions(+), 9 deletions(-) diff --git a/grade/querylib.php b/grade/querylib.php index cf809d889a..2380aa8621 100644 --- a/grade/querylib.php +++ b/grade/querylib.php @@ -68,14 +68,24 @@ function grade_get_course_grades($courseid, $userid_or_ids=null) { // create text representation of grade if ($grade_item->needsupdate) { - $grade->grade = false; - $grade->str_grade = get_string('error'); + $grade->grade = false; + $grade->str_grade = get_string('error'); + $grade->str_long_grade = $grade->str_grade; } else if (is_null($grade->grade)) { - $grade->str_grade = '-'; + $grade->str_grade = '-'; + $grade->str_long_grade = $grade->str_grade; } else { $grade->str_grade = grade_format_gradevalue($grade->grade, $grade_item); + if ($grade_item->gradetype == GRADE_TYPE_SCALE or $grade_item->get_displaytype() != GRADE_DISPLAY_TYPE_REAL) { + $grade->str_long_grade = $grade->str_grade; + } else { + $a = new object(); + $a->grade = $grade->str_grade; + $a->max = grade_format_gradevalue($grade_item->grademax, $grade_item); + $grade->str_long_grade = get_string('gradelong', 'grades', $a); + } } // create html representation of feedback @@ -172,14 +182,24 @@ function grade_get_course_grade($userid, $courseid_or_ids=null) { // create text representation of grade if ($grade_item->needsupdate) { - $grade->grade = false; - $grade->str_grade = get_string('error'); + $grade->grade = false; + $grade->str_grade = get_string('error'); + $grade->str_long_grade = $grade->str_grade; } else if (is_null($grade->grade)) { - $grade->str_grade = '-'; + $grade->str_grade = '-'; + $grade->str_long_grade = $grade->str_grade; } else { $grade->str_grade = grade_format_gradevalue($grade->grade, $grade_item); + if ($grade_item->gradetype == GRADE_TYPE_SCALE or $grade_item->get_displaytype() != GRADE_DISPLAY_TYPE_REAL) { + $grade->str_long_grade = $grade->str_grade; + } else { + $a = new object(); + $a->grade = $grade->str_grade; + $a->max = grade_format_gradevalue($grade_item->grademax, $grade_item); + $grade->str_long_grade = get_string('gradelong', 'grades', $a); + } } // create html representation of feedback diff --git a/lang/en_utf8/grades.php b/lang/en_utf8/grades.php index abf9d0f572..ed69624029 100644 --- a/lang/en_utf8/grades.php +++ b/lang/en_utf8/grades.php @@ -207,6 +207,7 @@ $string['gradeletter'] = 'Grade letter'; $string['gradeletters'] = 'Grade letters'; $string['gradeletterhelp'] = 'Grade letter Help'; $string['gradeletternote'] = 'To delete a grade letter just empty any of the
three text areas for that letter and click submit.'; +$string['gradelong'] = '$a->grade / $a->max'; $string['grademax'] = 'Maximum grade'; $string['grademaxhelp'] = 'The maximum allowable grade for this grade item.'; $string['grademin'] = 'Minimum grade'; diff --git a/lib/gradelib.php b/lib/gradelib.php index fff2a2d6cc..85b769dc02 100644 --- a/lib/gradelib.php +++ b/lib/gradelib.php @@ -348,14 +348,24 @@ function grade_get_grades($courseid, $itemtype, $itemmodule, $iteminstance, $use // create text representation of grade if (in_array($grade_item->id, $needsupdate)) { - $grade->grade = false; - $grade->str_grade = get_string('error'); + $grade->grade = false; + $grade->str_grade = get_string('error'); + $grade->str_long_grade = $grade->str_grade; } else if (is_null($grade->grade)) { - $grade->str_grade = '-'; + $grade->str_grade = '-'; + $grade->str_long_grade = $grade->str_grade; } else { $grade->str_grade = grade_format_gradevalue($grade->grade, $grade_item); + if ($grade_item->gradetype == GRADE_TYPE_SCALE or $grade_item->get_displaytype() != GRADE_DISPLAY_TYPE_REAL) { + $grade->str_long_grade = $grade->str_grade; + } else { + $a = new object(); + $a->grade = $grade->str_grade; + $a->max = grade_format_gradevalue($grade_item->grademax, $grade_item); + $grade->str_long_grade = get_string('gradelong', 'grades', $a); + } } // create html representation of feedback -- 2.39.5