5require_once(
"./Modules/Scorm2004/classes/class.ilSCORM2004NodeGUI.php");
 
    6require_once(
"./Modules/Scorm2004/classes/class.ilSCORM2004Sco.php");
 
    7require_once(
"./Modules/Scorm2004/classes/seq_editor/class.ilSCORM2004Objective.php");
 
   35                $ilCtrl->saveParameter($this, 
"obj_id");
 
   38                parent::ilSCORM2004NodeGUI($a_slm_obj, $a_node_id);
 
   56                $tpl->getStandardTemplate();
 
   58                $next_class = 
$ilCtrl->getNextClass($this);
 
   65                                switch(
$_GET[
"notes_mode"])
 
   68                                                $ilTabs->setTabActive(
"sahs_organization");
 
   76                                include_once 
'Services/MetaData/classes/class.ilMDEditorGUI.php';
 
   79                                        $this->node_object->getId(), $this->node_object->getType());
 
   80                                $md_gui->addObserver($this->node_object,
'MDUpdateListener',
'General');
 
   81                                $ilCtrl->forwardCommand($md_gui);
 
   84                        case 'ilscorm2004pagegui':
 
   85                                include_once(
"./Modules/Scorm2004/classes/class.ilSCORM2004PageGUI.php");
 
   89                                $ilCtrl->forwardCommand($page_obj);
 
  108                $ilTabs->setTabActive(
"sahs_desc_objectives");
 
  110                include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
 
  115                $cb->setInfo(
$lng->txt(
"sahs_hide_objectives_page_info"));
 
  117                $cb->setChecked($this->node_object->getHideObjectivePage());
 
  123                $ta->setInfo(
$lng->txt(
"sahs_list_info"));
 
  124                $form->setTitle(
$lng->txt(
"properties"));
 
  126                include_once 
"./Services/MetaData/classes/class.ilMD.php";
 
  127                $meta = 
new ilMD($this->node_object->getSLMId(), $this->node_object->getId(), $this->node_object->getType());
 
  128                $desc_ids = $meta->getGeneral()->getDescriptionIds();
 
  129                $ta->setValue($meta->getGeneral()->getDescription($desc_ids[0])->getDescription());
 
  133                $sh->setTitle(
$lng->txt(
"sahs_learning_objectives"));
 
  136                $objectives = $this->node_object->getObjectives();
 
  138                foreach ($objectives as $ob)
 
  141                        $mappings = $ob->getMappings();
 
  143                        foreach($mappings as $map)
 
  145                                $mapinfo .= $map->getTargetObjectiveID();
 
  148                        if ($mapinfo == 
null)
 
  154                                $mapinfo = 
"global to ".$mapinfo;
 
  159                                "obj_".$ob->getId());
 
  162                        $ta->setInfo(
$lng->txt(
"sahs_list_info"));
 
  164                        $ta->setValue($ob->getObjectiveID());
 
  166                $form->setFormAction(
$ilCtrl->getFormAction($this));
 
  167                $form->addCommandButton(
"updateProperties",
 
  169                $tpl->setContent($form->getHTML());
 
  180                foreach (
$_POST as $key=>$value) {
 
  181                        if(preg_match(
'/(obj_)(.+)/', $key,$match)){
 
  182                                $objective = 
new ilScorm2004Objective($this->node_object->getId(),$match[2]);
 
  188                                        $objective->updateObjective();
 
  194                $this->node_object->update();
 
  196                include_once 
"./Services/MetaData/classes/class.ilMD.php";
 
  197                $meta = 
new ilMD($this->node_object->getSLMId(), $this->node_object->getId(), $this->node_object->getType());
 
  198                $gen = $meta->getGeneral();
 
  199                $desc_ids = $gen->getDescriptionIds();
 
  200                $des = $gen->getDescription($desc_ids[0]);
 
  223                include_once 
"./Services/Table/classes/class.ilTableGUI.php";
 
  224                include_once 
"./Modules/Scorm2004/classes/class.ilSCORM2004Page.php";
 
  225                include_once(
"./Modules/TestQuestionPool/classes/class.assQuestion.php");
 
  226                include_once(
"./Services/COPage/classes/class.ilPCQuestionGUI.php");
 
  229                $tpl->addBlockfile(
"ADM_CONTENT", 
"adm_content", 
"tpl.table.html");
 
  230                $tpl->addBlockfile(
"TBL_CONTENT", 
"tbl_content", 
"tpl.scormeditor_sco_question.html", 
"Modules/Scorm2004");
 
  233                $tbl->setTitle(
"Questions for ".$this->node_object->getTitle());
 
  234                $tbl->setHeaderNames(array(
"Question",
"Page"));
 
  235                $cols = array(
"question",
"page");
 
  236                $tbl->setHeaderVars($cols, $header_params);
 
  237                $tbl->setColumnWidth(array(
"50%", 
"50%"));
 
  238                $tbl->disable(
"sort");
 
  239                $tbl->disable(
"footer");
 
  241                $tree = 
new ilTree($this->slm_object->getId());
 
  242                $tree->setTableNames(
'sahs_sc13_tree', 
'sahs_sc13_tree_node');
 
  243                $tree->setTreeTablePK(
"slm_id");
 
  245                foreach($tree->getSubTree($tree->getNodeData($this->node_object->getId()),
true,
'page') as $page)
 
  248                        include_once(
"./Services/COPage/classes/class.ilPCQuestion.php");
 
  250                        if (count($qids) > 0)
 
  253                                foreach ($qids as $qid)
 
  255                                        $tpl->setCurrentBlock(
"tbl_content");
 
  256                                        $tpl->setVariable(
"TXT_PAGE_TITLE", $page[
"title"]);
 
  257                                        $ilCtrl->setParameterByClass(
"ilscorm2004pagenodegui", 
"obj_id", $page[
"obj_id"]);
 
  258                                        $tpl->setVariable(
"HREF_EDIT_PAGE", 
$ilCtrl->getLinkTargetByClass(
"ilscorm2004pagenodegui", 
"edit"));
 
  261                                        $tpl->setVariable(
"TXT_QUESTION", $qtitle);
 
  262                                        $ilCtrl->setParameterByClass(
"ilscorm2004pagenodegui", 
"obj_id", $page[
"obj_id"]);
 
  266                                        $tpl->parseCurrentBlock();
 
  276                $slm_tree = 
new ilTree($this->node_object->getId(),$this->slm_object->getId());
 
  277                $slm_tree->setTreeTablePK(
"slm_id");
 
  278                $slm_tree->setTableNames(
'sahs_sc13_tree', 
'sahs_sc13_tree_node');
 
  289                $ilHelp->setScreenIdComponent(
"sahsed");
 
  292                $ilTabs->addTarget(
"sahs_organization",
 
  293                $ilCtrl->getLinkTarget($this,
'showOrganization'),
 
  294                         "showOrganization", get_class($this));
 
  298                $ilTabs->addTarget(
"sahs_desc_objectives",
 
  299                $ilCtrl->getLinkTarget($this,
'showProperties'),
 
  300                         "showProperties", get_class($this));
 
  303                $ilTabs->addTarget(
"sahs_questions",
 
  304                $ilCtrl->getLinkTarget($this,
'sahs_questions'),
 
  305                         "sahs_questions", get_class($this));
 
  308                $ilTabs->addTarget(
"cont_files",
 
  309                $ilCtrl->getLinkTarget($this,
'sco_resources'),
 
  310                         "sco_resources", get_class($this));
 
  313                $ilTabs->addTarget(
"meta_data",
 
  314                $ilCtrl->getLinkTargetByClass(
"ilmdeditorgui",
''),
 
  315                         "", 
"ilmdeditorgui");
 
  318                $ilTabs->addTarget(
"export",
 
  319                $ilCtrl->getLinkTarget($this, 
"showExportList"), 
"showExportList",
 
  323                $ilTabs->addTarget(
"import",
 
  324                $ilCtrl->getLinkTarget($this, 
"import"), 
"import",
 
  328                $ilTabs->addNonTabbedLink(
"preview",
 
  329                        $lng->txt(
"cont_preview"),
 
  330                        $ilCtrl->getLinkTarget($this,
'sco_preview'), 
"_blank");
 
  334                $lng->txt(
"sahs_unit").
": ".$this->node_object->getTitle());
 
  345                $this->slm_object->executeDragDrop(
$_POST[
"il_hform_source_id"], 
$_POST[
"il_hform_target_id"],
 
  347                $ilCtrl->redirect($this, 
"showOrganization");
 
  359                include_once(
"./Services/Style/classes/class.ilObjStyleSheet.php");
 
  361                $tpl->setBodyClass(
"");
 
  362                $tpl->setCurrentBlock(
"ContentStyle");
 
  363                $tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
 
  365                $tpl->parseCurrentBlock();
 
  368                include_once(
"./Services/jQuery/classes/class.iljQueryUtil.php");
 
  371                $tpl->addJavaScript(
"./Modules/Scorm2004/scripts/questions/pure.js");
 
  372                $tpl->addJavaScript(
"./Modules/Scorm2004/scripts/pager.js");
 
  374                $tpl->addOnLoadCode(
"pager.Init();");
 
  376                $tree = 
new ilTree($this->slm_object->getId());
 
  377                $tree->setTableNames(
'sahs_sc13_tree', 
'sahs_sc13_tree_node');
 
  378                $tree->setTreeTablePK(
"slm_id");
 
  379                include_once 
"./Modules/Scorm2004/classes/class.ilSCORM2004PageGUI.php";
 
  380                include_once 
"./Services/MetaData/classes/class.ilMD.php";
 
  382                $meta = 
new ilMD($this->node_object->getSLMId(), $this->node_object->getId(), $this->node_object->getType());
 
  383                $desc_ids = $meta->getGeneral()->getDescriptionIds();
 
  384                $sco_description = $meta->getGeneral()->getDescription($desc_ids[0])->getDescription();
 
  387                $sco_tpl = 
new ilTemplate(
"tpl.sco.html", 
true, 
true, 
"Modules/Scorm2004");
 
  395                        $this->node_object->getType());
 
  399                $terms = $this->node_object->getGlossaryTermIds();
 
  402                foreach($tree->getSubTree($tree->getNodeData($this->node_object->getId()),
true,
'page') as $page)
 
  405                                0, $this->slm_object->getId());
 
  406                        $page_obj->setPresentationTitle($page[
"title"]);
 
  408                        $page_obj->setStyleId($this->slm_object->getStyleSheetId());
 
  409                        if (count($terms) > 1)
 
  411                                $page_obj->setGlossaryOverviewInfo(
 
  414                        $sco_tpl->setCurrentBlock(
"page_preview");
 
  415                        $html = 
$ilCtrl->getHTML($page_obj);
 
  417                        $sco_tpl->setVariable(
"PAGE_PRV", $html);
 
  418                        $sco_tpl->parseCurrentBlock();
 
  421                $output = $sco_tpl->get();
 
  427                require_once 
'./Modules/Scorm2004/classes/class.ilQuestionExporter.php';
 
  428                $output = preg_replace_callback(
"/{{{{{(Question;)(il__qst_[0-9]+)}}}}}/",array(get_class($this), 
'insertQuestion'),$output);
 
  431                $output = 
"<script>var ScormApi=null;".ilQuestionExporter::questionsJS().
"</script>".$output;
 
  437                $tpl->addJavaScript(
"./Modules/Scorm2004/scripts/questions/question_handling.js");
 
  438                $tpl->addCss(
"./Modules/Scorm2004/templates/default/question_handling.css");
 
  440                include_once(
"./Services/UIComponent/Overlay/classes/class.ilOverlayGUI.php");
 
  444                $output .=
'<script type="text/javascript" src="./Modules/Scorm2004/scripts/questions/question_handling.js"></script>';
 
  445                $tpl->setVariable(
"CONTENT", $output);
 
  452                return $q_exporter->exportQuestion($matches[2]);
 
  460                switch (
$_POST[
'select_export'])
 
  462                        case "exportScorm12":
 
  463                        case "exportScorm2004_3rd":
 
  464                        case "exportScorm2004_4th":
 
  467                                $this->ctrl->redirect($this, 
$_POST[
'select_export']);
 
  470                                $this->ctrl->redirect($this, 
'showExportList');
 
  483                $template = 
new ilTemplate(
"tpl.scorm2004_export_buttons.html", 
true, 
true, 
'Modules/Scorm2004');
 
  486                        "exportScorm2004_3rd" => 
$lng->txt(
"scorm_create_export_file_scrom2004"),
 
  487                        "exportScorm2004_4th" => 
$lng->txt(
"scorm_create_export_file_scrom2004_4th"),
 
  488                        "exportScorm12" => 
$lng->txt(
"scorm_create_export_file_scrom12"),
 
  489                        "exportPDF" => 
$lng->txt(
"scorm_create_export_file_pdf"),
 
  490                        "exportHTML" => 
$lng->txt(
"scorm_create_export_file_html")
 
  492                foreach ($buttons as $value => $text)
 
  494                        $template->setCurrentBlock(
'option');
 
  495                        $template->setVariable(
'OPTION_VALUE', $value);
 
  497                        $template->parseCurrentBlock();
 
  499                $template->setVariable(
'EXPORT_TITLE', 
$lng->txt(
'export'));
 
  500                $template->setVariable(
'EXPORT_LABEL', 
$lng->txt(
'type'));
 
  501                $template->setVariable(
'FORMACTION', 
$ilCtrl->getFormAction($this, 
'selectExport'));
 
  503                $export_files = $this->node_object->getExportFiles();
 
  505                include_once 
"./Modules/Scorm2004/classes/class.ilSCORM2004ExportTableGUI.php";
 
  508                foreach ($export_files as $exp_file)
 
  510                        $filetype = $exp_file[
'type'];
 
  514                        $file_arr = explode(
"__", $exp_file[
"file"]);
 
  517                $table_gui->setData(
$data);
 
  518                $tpl->setVariable(
'ADM_CONTENT', $template->get() . 
"\n" . $table_gui->getHTML());
 
  526                $export->buildExportFile();
 
  527                $this->ctrl->redirect($this, 
"showExportList");
 
  534                $export->buildExportFile();
 
  535                $this->ctrl->redirect($this, 
"showExportList");
 
  541                $export->buildExportFile();
 
  542                $this->ctrl->redirect($this, 
"showExportList");
 
  548                $export->buildExportFile();
 
  549                $this->ctrl->redirect($this, 
"showExportList");
 
  555                $export->buildExportFile();
 
  556                $this->ctrl->redirect($this, 
"showExportList");
 
  562                $export->buildExportFile();
 
  563                $this->ctrl->redirect($this, 
"showExportList");
 
  569                $export = 
new ilSCORM2004Export($this->node_object);
 
  570                $export_dir = $export->getExportDirectoryForType(
$_GET[
'type']);
 
  581                if(!isset(
$_POST[
"file"]))
 
  584                        $this->ctrl->redirect($this, 
"showExportList");
 
  588                $export_files = $this->node_object->getExportFiles();
 
  590                include_once 
"./Modules/Scorm2004/classes/class.ilSCORM2004ExportTableGUI.php";
 
  593                foreach ($export_files as $exp_file)
 
  595                        foreach (
$_POST[
'file'] as $delete_file)
 
  597                                if (strcmp($delete_file, $exp_file[
'file']) == 0)
 
  602                                        $file_arr = explode(
"__", $exp_file[
"file"]);
 
  607                $table_gui->setData(
$data);
 
  608                $tpl->setVariable(
'ADM_CONTENT', $table_gui->getHTML());        
 
  617                $this->ctrl->redirect($this, 
"showExportList");
 
  627                include_once 
"./Services/Utilities/classes/class.ilUtil.php";
 
  628                $export = 
new ilSCORM2004Export($this->node_object);
 
  631                        $export_dir = $export->getExportDirectoryForType(
$_POST[
'type'][$idx]);
 
  632                        $exp_file = $export_dir.
"/".
$file;
 
  633                        if (@is_file($exp_file))
 
  639                $this->ctrl->redirect($this, 
"showExportList");
 
  644                $export_files = array();
 
  646                require_once 
"./Modules/Scorm2004/classes/class.ilSCORM2004Page.php";
 
  647                include_once 
"./Services/MediaObjects/classes/class.ilObjMediaObject.php";
 
  648                include_once 
"./Modules/File/classes/class.ilObjFile.php";
 
  649                $tree = 
new ilTree($this->slm_object->getId());
 
  650                $tree->setTableNames(
'sahs_sc13_tree', 
'sahs_sc13_tree_node');
 
  651                $tree->setTreeTablePK(
"slm_id");
 
  652                foreach($tree->getSubTree($tree->getNodeData($this->node_object->getId()),
true,
'page') as $page)
 
  655                                $page_obj->buildDom();
 
  656                                $mob_ids = $page_obj->collectMediaObjects(
false);
 
  657                                foreach($mob_ids as $mob_id)
 
  664                                                $export_files[$i][
"date"] = $media_obj->getCreateDate();
 
  665                                                $export_files[$i][
"size"] = @filesize(
$path); 
 
  666                                                $export_files[$i][
"file"] = $media_obj->getTitle();
 
  667                                                $export_files[$i][
"type"] = $media_obj->getDescription();
 
  668                                                $export_files[$i][
"path"] = 
$path;
 
  669                                                $this->ctrl->setParameter($this, 
"resource",
 
  671                                                $export_files[$i][
"link"] = $this->ctrl->getLinkTarget($this,
"downloadResource");
 
  675                                include_once(
"./Services/COPage/classes/class.ilPCFileList.php");
 
  677                                foreach($file_ids as $file_id)
 
  679                                        $file_obj = 
new ilObjFile($file_id, 
false);
 
  680                                        $export_files[$i][
"date"] = $file_obj->getCreateDate();
 
  681                                        $export_files[$i][
"size"] = $file_obj->getFileSize();
 
  682                                        $export_files[$i][
"file"] = $file_obj->getFileName();
 
  683                                        $export_files[$i][
"type"] = $file_obj->getFileType();
 
  684                                        $export_files[$i][
"file_id"] = $file_id;
 
  685                                        $this->ctrl->setParameter($this, 
"file_id",$file_id);
 
  686                                        $export_files[$i][
"link"] = $this->ctrl->getLinkTarget($this,
"downloadFile",
"");
 
  692                return $export_files;
 
  706                require_once(
"./Services/Table/classes/class.ilTableGUI.php");
 
  710                $tpl->addBlockfile(
"ADM_CONTENT", 
"adm_content", 
"tpl.table.html");
 
  713                $tpl->addBlockfile(
"TBL_CONTENT", 
"tbl_content", 
"tpl.download_file_row.html", 
"Modules/LearningModule");
 
  717                $tpl->setVariable(
"FORMACTION", $this->ctrl->getFormAction($this));
 
  719                $tbl->setTitle(
$lng->txt(
"cont_files"));
 
  721                $tbl->setHeaderNames(array(
$lng->txt(
"cont_format"),
 
  722                        $lng->txt(
"cont_file"),
 
  723                        $lng->txt(
"size"), 
$lng->txt(
"date"),
 
  726                $cols = array(
"format", 
"file", 
"size", 
"date", 
"download");
 
  727                $header_params = array(
"ref_id" => 
$_GET[
"ref_id"], 
"obj_id" => 
$_GET[
"obj_id"],
 
  728                        "cmd" => 
"sco_resources", 
"cmdClass" => strtolower(get_class($this)),
 
  729                        "cmdNode" => 
$_GET[
"cmdNode"], 
"baseClass" => 
$_GET[
"baseClass"]);
 
  730                $tbl->setHeaderVars($cols, $header_params);
 
  731                $tbl->setColumnWidth(array(
"10%", 
"30%", 
"20%", 
"20%",
"20%"));
 
  732                $tbl->disable(
"sort");
 
  734                $tbl->setOrderColumn(
$_GET[
"sort_by"]);
 
  735                $tbl->setOrderDirection(
$_GET[
"sort_order"]);
 
  736                $tbl->setLimit(
$_GET[
"limit"]);
 
  737                $tbl->setOffset(
$_GET[
"offset"]);
 
  738                $tbl->setMaxCount($this->maxcount);             
 
  741                $tbl->setMaxCount(count($export_files));
 
  744                $tbl->setFooter(
"tblfooter",
$lng->txt(
"previous"),
$lng->txt(
"next"));
 
  747                $tbl->setMaxCount(count($export_files));
 
  748                $export_files = array_slice($export_files, 
$_GET[
"offset"], 
$_GET[
"limit"]);
 
  751                if(count($export_files) > 0)
 
  754                        foreach($export_files as $exp_file)
 
  763                                $tpl->setCurrentBlock(
"tbl_content");
 
  764                                $tpl->setVariable(
"TXT_FILENAME", $exp_file[
"file"]);
 
  767                                $tpl->setVariable(
"CSS_ROW", $css_row);
 
  769                                $tpl->setVariable(
"TXT_SIZE", $exp_file[
"size"]);
 
  770                                $tpl->setVariable(
"TXT_FORMAT", $exp_file[
"type"]);
 
  772                                $tpl->setVariable(
"TXT_DATE", $exp_file[
"date"]);
 
  774                                if($exp_file[
"size"] > 0)
 
  776                                        $tpl->setVariable(
"TXT_DOWNLOAD", 
$lng->txt(
"download"));
 
  777                                        $ilCtrl->setParameter($this, 
"resource", rawurlencode($exp_file[
"path"]));
 
  778                                        $ilCtrl->setParameter($this, 
"file_id", rawurlencode($exp_file[
"file_id"]));
 
  779                                        $tpl->setVariable(
"LINK_DOWNLOAD",
 
  780                                                $ilCtrl->getLinkTarget($this, 
"downloadResource"));
 
  784                                        $tpl->setVariable(
"TXT_DOWNLOAD", 
$lng->txt(
"show"));
 
  785                                        $tpl->setVariable(
"LINK_TARGET", 
" target=\"_blank\"");
 
  786                                        $tpl->setVariable(
"LINK_DOWNLOAD", $exp_file[
"path"]);
 
  789                                $tpl->parseCurrentBlock();
 
  808                if (
$_GET[
"file_id"] > 0)
 
  814                foreach ($export_files as $f)
 
  816                        if (is_object(
$file))
 
  818                                if ($f[
"file"] == 
$file->getFileName())
 
  825                                if ($f[
"path"] == 
$_GET[
"resource"])
 
  827                                        if (is_file($f[
"path"]))
 
  840                require_once(
"./Modules/File/classes/class.ilObjFile.php");
 
  842                $fileObj->sendFile();
 
  853                $tpl->addBlockFile(
"ADM_CONTENT", 
"adm_content", 
"tpl.scormeditor_sco_import.html", 
"Modules/Scorm2004");
 
  856                $tpl->setVariable(
"ALT_IMG", 
$lng->txt(
"obj_sahs"));
 
  858                $tpl->setVariable(
"FORMACTION", $this->ctrl->getFormAction($this));
 
  860                $tpl->setVariable(
"BTN_NAME", 
"importSave");
 
  865                $tpl->setVariable(
"TXT_UPLOAD", 
$lng->txt(
"upload"));
 
  866                $tpl->setVariable(
"TXT_CANCEL", 
$lng->txt(
"cancel"));
 
  867                $tpl->setVariable(
"TXT_IMPORT_SCO", 
$lng->txt(
"import_sco_object"));
 
  868                $tpl->setVariable(
"TXT_SELECT_FILE", 
$lng->txt(
"select_file"));
 
  869                $tpl->setVariable(
"TXT_VALIDATE_FILE", 
$lng->txt(
"cont_validate_file"));
 
  872                $umf=get_cfg_var(
"upload_max_filesize");
 
  874                $pms=get_cfg_var(
"post_max_size");
 
  877                $multiplier_a=array(
"K"=>1024, 
"M"=>1024*1024, 
"G"=>1024*1024*1024);
 
  882        if (count($umf_parts) == 2) { $umf = $umf_parts[0]*$multiplier_a[$umf_parts[1]]; }
 
  883        if (count($pms_parts) == 2) { $pms = $pms_parts[0]*$multiplier_a[$pms_parts[1]]; }
 
  886                $max_filesize=min($umf, $pms);
 
  888                if (!$max_filesize) $max_filesize=max($umf, $pms);
 
  891                $max_filesize=sprintf(
"%.1f MB",$max_filesize/1024/1024);
 
  894                $tpl->setVariable(
"TXT_FILE_INFO", 
$lng->txt(
"file_notice").
" $max_filesize");  
 
  899                global $_FILES, $rbacsystem;
 
  903                $source = $_FILES[
"scormfile"][
"tmp_name"];
 
  904                if (($source == 
'none') || (!$source))
 
  906                        $ilias->raiseError(
"No file selected!",$ilias->error_obj->MESSAGE);
 
  909                if (!$rbacsystem->checkAccess(
"write", 
$_GET[
"ref_id"]))
 
  911                        $ilias->raiseError(
$lng->txt(
"no_create_permission"), $ilias->error_obj->WARNING);
 
  914                switch ($__FILES[
"scormfile"][
"error"])
 
  916                        case UPLOAD_ERR_INI_SIZE:
 
  917                                $ilias->raiseError(
$lng->txt(
"err_max_file_size_exceeds"),$ilias->error_obj->MESSAGE);
 
  920                        case UPLOAD_ERR_FORM_SIZE:
 
  921                                $ilias->raiseError(
$lng->txt(
"err_max_file_size_exceeds"),$ilias->error_obj->MESSAGE);
 
  924                        case UPLOAD_ERR_PARTIAL:
 
  925                                $ilias->raiseError(
$lng->txt(
"err_partial_file_upload"),$ilias->error_obj->MESSAGE);
 
  928                        case UPLOAD_ERR_NO_FILE:
 
  929                                $ilias->raiseError(
$lng->txt(
"err_no_file_uploaded"),$ilias->error_obj->MESSAGE);
 
  933                $file = pathinfo($_FILES[
"scormfile"][
"name"]);
 
  934                $name = substr(
$file[
"basename"], 0, strlen(
$file[
"basename"]) - strlen(
$file[
"extension"]) - 1);
 
  935                $file_path = $this->slm_object->getDataDirectory().
"/".$this->node_object->getId().
"/".$_FILES[
"scormfile"][
"name"];
 
  941                include_once (
"./Modules/Scorm2004/classes/ilSCORM13Package.php");
 
  943                $newPack->il_importSco($this->slm_object->getId(),$this->node_object->getId(),$this->slm_object->getDataDirectory().
"/".$this->node_object->getId());
 
  945                $this->ctrl->redirect($this, 
"showOrganization");
 
  953                $this->ctrl->redirect($this, 
"showOrganization");
 
  977                $tpl = 
new ilTemplate(
"tpl.sco_glossary_overview.html", 
true, 
true, 
"Modules/Scorm2004");
 
  979                $terms = $a_sco->getGlossaryTermIds();
 
  981                foreach ($terms as $k => 
$t)
 
  983                        $tpl->setCurrentBlock(
"link");
 
  984                        $tpl->setVariable(
"TXT_LINK", 
$t);
 
  985                        $tpl->setVariable(
"ID_LINK", 
"glo_ov_t".$k);
 
  986                        $tpl->parseCurrentBlock();
 
  990                $tpl->setVariable(
"TXT_SCO_GLOSSARY", 
$lng->txtlng(
"content", 
"cont_sco_glossary", $lk));
 
  991                $tpl->setVariable(
"TXT_CLOSE", 
$lng->txtlng(
"common", 
"close", $lk));
 
  993                if (count($terms) > 1)
 
_getTitle($a_q_id)
Returns the title of a question.
static formatDate(ilDateTime $date)
Format a date @access public.
@classDescription Date and time handling
getAffectiveLocalization($a_id)
Get affective localization.
getContentStylePath($a_style_id)
get content style path
static _exists($a_id, $a_reference=false, $a_type=null)
checks if an object exists in object_data@access public
static initJavascript()
Init javascript.
static collectFileItems($a_page, $a_domdoc)
Get all file items that are used within the page.
static _getQuestionIdsForPage($a_parent_type, $a_page_id, $a_lang="-")
Get all questions of a page.
Scorm 2004 Question Exporter.
static renderMetaPage($a_tpl, $a_sco, $a_asset_type="", $mode="")
Render meta page (description/objectives at beginning)
static renderNavigation($a_tpl, $a_spacer_img="", $a_lang="")
Render navigation.
Class ilSCORM2004NodeGUI.
showOrganization()
Confirm deletion screen (delete page or structure objects)
setLocator()
Set Locator Items.
Class ilSCORM2004Page GUI class.
static initExport()
Init export.
static getGlossaryHTML($a_sco)
Get glossary html (only in export mode)
$ctrl
Constructor @access public.
static getGloOverviewOv($a_sco)
des
ilSCORM2004ScoGUI($a_slm_obj, $a_node_id=0)
deleteExportFile()
delete export files
confirmDeleteExportFile()
confirmation screen for export file deletion
cancelDeleteExportFile()
cancel deletion of export files
updateProperties()
update Properties
showProperties()
Show learning objectives.
proceedDragDrop()
Perform drag and drop action.
selectExport()
Select the export type of the SCORM 2004 module.
sco_preview()
SCO preview.
static getGlossaryOverviewId()
Get sco glossary overlay id.
& executeCommand()
execute command
Export class for SCORM 2004 object.
static clear($a_var)
Unset a value.
special template class to simplify handling of ITX/PEAR
This class represents a text area property in a property form.
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco...
static moveUploadedFile($a_file, $a_name, $a_target, $a_raise_errors=true, $a_mode="move_uploaded")
move uploaded file
static sendQuestion($a_info="", $a_keep=false)
Send Question to Screen.
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static getStyleSheetLocation($mode="output", $a_css_name="", $a_css_location="")
get full style sheet file name (path inclusive) of current user
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static switchColor($a_num, $a_css1, $a_css2)
switches style sheets for each even $a_num (used for changing colors of different result rows)
static unzip($a_file, $overwrite=false, $a_flat=false)
unzip file
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
static deliverFile($a_file, $a_filename, $a_mime='', $isInline=false, $removeAfterDelivery=false, $a_exit_after=true)
deliver file for download via browser.
static prepareFormOutput($a_str, $a_strip=false)
prepares string output for html forms @access public
static createDirectory($a_dir, $a_mod=0755)
create directory
static renameExecutables($a_dir)
Rename uploaded executables for security reasons.
static initjQueryUI()
Init jQuery UI (see included_components.txt for included components)
static initjQuery($a_tpl=null)
Init jQuery.
echo;exit;}function LogoutNotification($SessionID){ global $ilDB;$q="SELECT session_id, data FROM usr_session WHERE expires > (\w+)\|/" PREG_SPLIT_NO_EMPTY PREG_SPLIT_DELIM_CAPTURE