MDL-33702 scorm: Adding support for '2004 SCORM' progress status elements

This commit is contained in:
Ankit Agarwal 2012-06-28 14:49:47 +08:00
parent d875cf9cdf
commit 57a32d3eb6
2 changed files with 15 additions and 2 deletions

View File

@ -450,6 +450,7 @@ function scorm_get_tracks($scoid, $userid, $attempt='') {
// Defined in order to unify scorm1.2 and scorm2004
$usertrack->score_raw = '';
$usertrack->status = '';
$usertrack->progress = '';
$usertrack->total_time = '00:00:00';
$usertrack->session_time = '00:00:00';
$usertrack->timemodified = 0;
@ -463,7 +464,15 @@ function scorm_get_tracks($scoid, $userid, $attempt='') {
$track->value = 'notattempted';
}
$usertrack->status = $track->value;
break;
break;
case 'cmi.success_status':
$usertrack->progress = $track->value;
break;
case 'cmi.progress_measure':
if(!empty($track->value) && (empty($usertrack->progress) || $usertrack->progress == 'unknown') ) {
$usertrack->progress = $track->value;
}
break;
case 'cmi.core.score.raw':
case 'cmi.score.raw':
$usertrack->score_raw = (float) sprintf('%2.2f', $track->value);

View File

@ -127,7 +127,11 @@ if ($scoes = $DB->get_records_select('scorm_scoes', "scorm=? ORDER BY id", array
$score = $trackdata->score_raw;
}
if ($trackdata->status == '') {
$trackdata->status = 'notattempted';
if (!empty($trackdata->progress)) {
$trackdata->status = $trackdata->progress;
} else {
$trackdata->status = 'notattempted';
}
}
$detailslink = '<a href="userreport.php?b='.$sco->id.'&amp;user='.$user.'&amp;attempt='.$attempt.'" title="'.
get_string('details', 'scorm').'">'.get_string('details', 'scorm').'</a>';