Index: temp_moodle_dev/moodle/mod/glossary/rate.php =================================================================== diff -u -r5251d2a62e0e78377219456d6bba613eb2d1fd26 -raca9f00eec05f594be36b6397b9c363742db6022 --- temp_moodle_dev/moodle/mod/glossary/rate.php (.../rate.php) (revision 5251d2a62e0e78377219456d6bba613eb2d1fd26) +++ temp_moodle_dev/moodle/mod/glossary/rate.php (.../rate.php) (revision aca9f00eec05f594be36b6397b9c363742db6022) @@ -45,6 +45,10 @@ } if ($data = data_submitted()) { // form submitted + + /// Calculate scale values + $scale_values = make_grades_menu($glossary->scale); + foreach ((array)$data as $entryid => $rating) { if (!is_numeric($entryid)) { continue; @@ -69,6 +73,11 @@ continue; } + /// Check rate is valid for that glossary scale values + if (!array_key_exists($rating, $scale_values) && $rating != -999) { + print_error('invalidrate', 'glossary', '', $rating); + } + if ($oldrating = get_record("glossary_ratings", "userid", $USER->id, "entryid", $entry->id)) { //Check if we must delete the rate if ($rating == -999) {