MDL-41446 Completion: Incorrectly marks complete when grade data present with no actual grade

This commit is contained in:
sam marshall
2013-09-06 13:04:34 +01:00
parent d8835503a8
commit bd2d268d13
+4 -1
View File
@@ -1264,9 +1264,12 @@ class completion_info {
* @return int Completion state e.g. COMPLETION_INCOMPLETE
*/
public static function internal_get_grade_state($item, $grade) {
if (!$grade) {
// If no grade is supplied or the grade doesn't have an actual value, then
// this is not complete.
if (!$grade || (is_null($grade->finalgrade) && is_null($grade->rawgrade))) {
return COMPLETION_INCOMPLETE;
}
// Conditions to show pass/fail:
// a) Grade has pass mark (default is 0.00000 which is boolean true so be careful)
// b) Grade is visible (neither hidden nor hidden-until)