course)) { error("Course is misconfigured"); } if (! $scorm = get_record("scorm", "id", $cm->instance)) { error("Course module is incorrect"); } } else if (!empty($a)) { if (! $scorm = get_record("scorm", "id", $a)) { error("Course module is incorrect"); } if (! $course = get_record("course", "id", $scorm->course)) { error("Course is misconfigured"); } if (! $cm = get_coursemodule_from_instance("scorm", $scorm->id, $course->id)) { error("Course Module ID was incorrect"); } } else { error('A required parameter is missing'); } require_login($course->id, false, $cm); $strscorms = get_string('modulenameplural', 'scorm'); $strscorm = get_string('modulename', 'scorm'); $strpopup = get_string('popup','scorm'); $strexit = get_string('exitactivity','scorm'); $navlinks = array(); if ($course->id != SITEID) { if ($scorms = get_all_instances_in_course('scorm', $course)) { // The module SCORM/AICC activity with the first id is the course $firstscorm = current($scorms); if (!(($course->format == 'scorm') && ($firstscorm->id == $scorm->id))) { $navlinks[] = array('name' => $strscorms, 'link' => "index.php?id=$course->id", 'type' => 'activity'); } } } $pagetitle = strip_tags("$course->shortname: ".format_string($scorm->name)); if (!$cm->visible and !has_capability('moodle/course:viewhiddenactivities', get_context_instance(CONTEXT_COURSE,$course->id))) { $navlinks[] = array('name' => format_string($scorm->name,true), 'link' => "view.php?id=$cm->id", 'type' => 'activityinstance'); $navigation = build_navigation($navlinks); print_header($pagetitle, $course->fullname, $navigation, '', '', true, update_module_button($cm->id, $course->id, $strscorm), '', false); notice(get_string("activityiscurrentlyhidden")); } // // TOC processing // $scorm->version = strtolower(clean_param($scorm->version, PARAM_SAFEDIR)); // Just to be safe if (!file_exists($CFG->dirroot.'/mod/scorm/datamodels/'.$scorm->version.'lib.php')) { $scorm->version = 'scorm_12'; } require_once($CFG->dirroot.'/mod/scorm/datamodels/'.$scorm->version.'lib.php'); $attempt = scorm_get_last_attempt($scorm->id, $USER->id); if (($newattempt=='on') && (($attempt < $scorm->maxattempt) || ($scorm->maxattempt == 0))) { $attempt++; $mode = 'normal'; } $attemptstr = '&attempt=' . $attempt; $result = scorm_get_toc($USER,$scorm,'structurelist',$currentorg,$scoid,$mode,$attempt,true); $sco = $result->sco; if (($mode == 'browse') && ($scorm->hidebrowse == 1)) { $mode = 'normal'; } if ($mode != 'browse') { if ($trackdata = scorm_get_tracks($sco->id,$USER->id,$attempt)) { if (($trackdata->status == 'completed') || ($trackdata->status == 'passed') || ($trackdata->status == 'failed')) { $mode = 'review'; } else { $mode = 'normal'; } } else { $mode = 'normal'; } } add_to_log($course->id, 'scorm', 'view', "player.php?id=$cm->id&scoid=$sco->id", "$scorm->id", $cm->id); $scoidstr = '&scoid='.$sco->id; $scoidpop = '&scoid='.$sco->id; $modestr = '&mode='.$mode; if ($mode == 'browse') { $modepop = '&mode='.$mode; } else { $modepop = ''; } $orgstr = '¤torg='.$currentorg; $SESSION->scorm_scoid = $sco->id; $SESSION->scorm_status = 'Not Initialized'; $SESSION->scorm_mode = $mode; $SESSION->scorm_attempt = $attempt; // // Print the page header // $bodyscript = ''; if ($scorm->popup == 1) { $bodyscript = 'onunload="main.close();"'; } $navlinks[] = array('name' => format_string($scorm->name,true), 'link' => "view.php?id=$cm->id", 'type' => 'activityinstance'); $navigation = build_navigation($navlinks); $exitlink = ''.$strexit.' '; print_header($pagetitle, $course->fullname, $navigation, '', '', true, $exitlink.update_module_button($cm->id, $course->id, $strscorm), '', false, $bodyscript); ?> previd != 0) && ((!isset($sco->previous)) || ($sco->previous == 0))) { $scostr = '&scoid='.$sco->previd; echo ' \n"; } else { echo ' \n"; } if (($sco->nextid != 0) && ((!isset($sco->next)) || ($sco->next == 0))) { $scostr = '&scoid='.$sco->nextid; echo ' \n"; } else { echo ' \n"; } ?>
hidetoc == 0) { ?>
hidenav ==0){ ?>
hidenav == 0) && ($sco->previd != 0) && (!isset($sco->previous) || $sco->previous == 0)) { // Print the prev LO button $scostr = '&scoid='.$sco->previd; $url = $CFG->wwwroot.'/mod/scorm/player.php?id='.$cm->id.$orgstr.$modestr.$scostr; ?> hidenav == 0) && ($sco->nextid != 0) && (!isset($sco->next) || $sco->next == 0)) { // Print the next LO button $scostr = '&scoid='.$sco->nextid; $url = $CFG->wwwroot.'/mod/scorm/player.php?id='.$cm->id.$orgstr.$modestr.$scostr; ?>
toc; ?>
hidetoc == 2) || ($scorm->hidetoc == 1)){echo 'style="width:100%"';}?>> hidenav == 0) && // Teacher want to display navigation links ($scorm->hidetoc != 0) && // The buttons has not been displayed ( ( ($sco->previd != 0) && // This is not the first learning object of the package ((!isset($sco->previous)) || ($sco->previous == 0)) // Moodle must manage the previous link ) || ( ($sco->nextid != 0) && // This is not the last learning object of the package ((!isset($sco->next)) || ($sco->next == 0)) // Moodle must manage the next link ) ) ) || ($scorm->hidetoc == 2) // Teacher want to display toc in a small dropdown menu ) { ?>
'.get_string('browsemode','scorm')."
\n" : ''; ?> '.get_string('reviewmode','scorm')."
\n" : ''; ?> hidenav == 0) || ($scorm->hidetoc == 2) || ($scorm->hidetoc == 1)) { ?>
hidenav == 0) && ($sco->previd != 0) && (!isset($sco->previous) || $sco->previous == 0) && (($scorm->hidetoc == 2) || ($scorm->hidetoc == 1)) ) { // Print the prev LO button $scostr = '&scoid='.$sco->previd; $url = $CFG->wwwroot.'/mod/scorm/player.php?id='.$cm->id.$orgstr.$modestr.$scostr; ?>
hidetoc == 2) { echo $result->tocmenu; } if (($scorm->hidenav == 0) && ($sco->nextid != 0) && (!isset($sco->next) || $sco->next == 0) && (($scorm->hidetoc == 2) || ($scorm->hidetoc == 1))) { // Print the next LO button $scostr = '&scoid='.$sco->nextid; $url = $CFG->wwwroot.'/mod/scorm/player.php?id='.$cm->id.$orgstr.$modestr.$scostr; ?>
prerequisites) { if ($scorm->popup == 0) { echo " \n"; $fullurl="loadSCO.php?id=".$cm->id.$scoidstr.$modestr; echo " \n"; } else { // Clean the name for the window as IE is fussy $name = ereg_replace("[^A-Za-z0-9]", "", $scorm->name); if (!$name) { $name = 'DefaultPlayerWindow'; } $name = 'scorm_'.$name; ?> wwwroot.'/mod/scorm/loadSCO.php?id='.$cm->id.$scoidstr.$modestr.'" target="new">'.get_string('popupblockedlinkname','scorm').''; print_simple_box(get_string('popupblocked','scorm',$link),'center'); } } else { print_simple_box(get_string('noprerequisites','scorm'),'center'); } ?>