diff --git a/mod/scorm/datamodels/debug.js.php b/mod/scorm/datamodels/debug.js.php index 1ef9d1a6fd3..9011ab906dc 100644 --- a/mod/scorm/datamodels/debug.js.php +++ b/mod/scorm/datamodels/debug.js.php @@ -737,6 +737,14 @@ function LogAPICall(func, nam, val, rc) { } s += ' => ' + String(rc); AppendToLog(s, rc); +scormtype == 'asset')) { +?> + hint = 'Item identifier; ?> has been defined as an Asset: it should never call the SCORM API'; + AppendToLog(hint, 101); + } diff --git a/mod/scorm/loadSCO.php b/mod/scorm/loadSCO.php index dd569c1a362..a1924b9698e 100644 --- a/mod/scorm/loadSCO.php +++ b/mod/scorm/loadSCO.php @@ -161,11 +161,19 @@ if (scorm_external_link($sco->launch)) { add_to_log($course->id, 'scorm', 'launch', 'view.php?id='.$cm->id, $result, $cm->id); -// which API are we looking for -$LMS_api = (scorm_version_check($scorm->version, SCORM_12) || empty($scorm->version)) ? 'API' : 'API_1484_11'; - header('Content-Type: text/html; charset=UTF-8'); +if ($sco->scormtype == 'asset') { + // HTTP 302 Found => Moved Temporarily. + header('Location: ' . $result); + // Provide a short feedback in case of slow network connection. + echo '

' . get_string('activitypleasewait', 'scorm'). '

'; + exit; +} + +// We expect a SCO: select which API are we looking for. +$LMS_api = (scorm_version_check($scorm->version, SCORM_12) || empty($scorm->version)) ? 'API' : 'API_1484_11'; + ?>