From a0b366843b0e69a08e668f2b7895defd7f5e8516 Mon Sep 17 00:00:00 2001 From: piers Date: Sun, 24 Aug 2008 21:10:09 +0000 Subject: [PATCH] MDL-16111 - SCORM grade not updated in Grader Report. Include grading by learning objects if status is complete. --- mod/scorm/locallib.php | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/mod/scorm/locallib.php b/mod/scorm/locallib.php index a2b89bfd2a6..38126ac614c 100755 --- a/mod/scorm/locallib.php +++ b/mod/scorm/locallib.php @@ -249,10 +249,15 @@ function scorm_insert_track($userid,$scormid,$scoid,$attempt,$element,$value) { } // MDL-9552, update the gradebook everything raw score is sent - if (strstr($element, '.score.raw')) { - $scorm = $DB->get_record('scorm', array('id'=>$scormid)); - include_once('lib.php'); - scorm_update_grades($scorm, $userid); + // Scoring by learning objects also needs to be included in the gradebook update + if (strstr($element, '.score.raw') || + (($element == 'cmi.core.lesson_status' || $element == 'cmi.completion_status') && ($track->value == 'completed' || $track->value == 'passed'))) { + $scorm = $DB->get_record('scorm', array('id' => $scormid)); + $grademethod = $scorm->grademethod % 10; + if (strstr($element, '.score.raw') || $grademethod == GRADESCOES) { + include_once('lib.php'); + scorm_update_grades($scorm, $userid); + } } return $id;