$organization = eF_getTableData("scorm_sequencing_content_to_organization", "*", "content_ID = '" . $_GET['package_ID'] . "'"); $_SESSION['organization_ID'] = $organization[0]['organization_ID']; //Initialize SCORM information $actProgInfo = eF_getTableData("scorm_sequencing_global_state_information", "*", "lessons_ID = '" . $_SESSION['s_lessons_ID'] . "' AND organization_content_ID = '" . $_SESSION['package_ID'] . "' AND users_LOGIN = '******'s_login'] . "'"); if (empty($actProgInfo)) { EfrontContentTreeSCORM::initialize(); } //Cut the tree $scoBranch = array(); $scoBranch[$_GET['package_ID']] = $currentContent->tree->offsetGet($_GET['package_ID']); //SCORM Object $scoContent = new EfrontContentTreeSCORM($scoBranch); if (!isset($_GET['navigation'])) { //Attempt a resumeAll navigation request $navigation = new navigation('resumeAll', $scoContent->flatTree[$_GET['target']]); $navigation = $scoContent->overall_sequencing_process($navigation, true, true); if ($navigation->delivery_request['content_ID'] != '' && $navigation->deliverable) { $navigation = new navigation('resumeAll'); } else { //A new attempt will begin on the Activity Tree. Therefore a new set of tracking data is required. foreach ($scoContent->flatTree as $key2 => $value2) { $scoContent->objectives->initialize($value2['content_ID']); } $navigation = new navigation('start', ''); $navigation = $scoContent->overall_sequencing_process($navigation, true, true); if ($navigation->delivery_request['content_ID'] != '' && $navigation->deliverable) { $navigation = new navigation('start', ''); } else { $navigation = new navigation('', ''); } }