diff --git a/mod/lti/servicelib.php b/mod/lti/servicelib.php index 438cea2d1cf..df21b61e058 100644 --- a/mod/lti/servicelib.php +++ b/mod/lti/servicelib.php @@ -217,14 +217,11 @@ function lti_read_grade($ltiinstance, $userid) { if (!empty($ltigrade) && isset($grades) && isset($grades->items[0]) && is_array($grades->items[0]->grades)) { foreach ($grades->items[0]->grades as $agrade) { $grade = $agrade->grade; - $grade = $grade / $ltigrade; - break; + if (isset($grade)) { + return $grade / $ltigrade; + } } } - - if (isset($grade)) { - return $grade; - } } function lti_delete_grade($ltiinstance, $userid) { diff --git a/mod/lti/upgrade.txt b/mod/lti/upgrade.txt index 501cb4c2fbb..7b15886aa41 100644 --- a/mod/lti/upgrade.txt +++ b/mod/lti/upgrade.txt @@ -1,5 +1,10 @@ This files describes API changes in the lti code. +=== 3.1 === + +* When requesting a grade from the outcome service, and empty grade will now be returned as + an empty grade in accordance with the spec. Previously a grade of 0 would be returned. + === 3.0 === * Function lti_view (locallib.php) was renamed to lti_launch_tool.