public function buildLinkTarget($a_node_id, $a_type) { if (!$this->offlineMode()) { return parent::buildLinkTarget($a_node_id, $a_type); } else { if ($a_node_id < 1) { $a_node_id = $this->tree->getRootId(); } if ($a_type != 'pg') { $a_node = $this->tree->fetchSuccessorNode($a_node_id, 'pg'); $a_node_id = $a_node['child']; } if (!$this->lm_obj->cleanFrames()) { return 'frame_' . $a_node_id . '_maincontent.html'; } else { return 'lm_pg_' . $a_node_id . '.html'; } } }
/** * table of contents */ function ilTOC($a_target) { require_once "./Modules/LearningModule/classes/class.ilLMTOCExplorer.php"; if ($this->lm->cleanFrames()) { $a_target = ""; } $exp = new ilLMTOCExplorer($this->getLink($this->lm->getRefId(), "layout", "", $a_target), $this->lm, $this->lang); $exp->setExpandTarget($this->getLink($this->lm->getRefId(), $_GET["cmd"], $_GET["obj_id"], $_GET["frame"])); $exp->setTargetGet("obj_id"); if ($this->lm->cleanFrames()) { if ($this->offlineMode()) { $exp->setFrameTarget("_top"); } else { $exp->setFrameTarget(ilFrameTargetInfo::_getFrame("MainContent")); } } else { $exp->setFrameTarget($a_target); } $exp->addFilter("du"); $exp->addFilter("st"); // force expansion if ($this->lm->cleanFrames()) { $page_id = $this->getCurrentPageId(); if ($this->deactivated_page) { $page_id = $_GET["obj_id"]; } if ($page_id > 0) { $path = $this->lm_tree->getPathId($page_id); $exp->setForceOpenPath($path); } if (!$this->offlineMode()) { // empty chapter if ($this->chapter_has_no_active_page && ilLMObject::_lookupType($_GET["obj_id"]) == "st") { $exp->highlightNode($_GET["obj_id"]); } else { if ($this->lm->getTOCMode() == "pages") { if ($this->deactivated_page) { $exp->highlightNode($_GET["obj_id"]); } else { $exp->highlightNode($page_id); } } else { $exp->highlightNode($this->lm_tree->getParentId($page_id)); } } } } $exp->setOfflineMode($this->offlineMode()); if ($this->lm->getTOCMode() == "pages") { $exp->addFilter("pg"); } $exp->setFiltered(true); $exp->setFilterMode(IL_FM_POSITIVE); if ($_GET["lmexpand"] == "") { $expand_keys = array(); if (is_array($_SESSION["lmexpand"])) { $expand_keys = array_keys($_SESSION["lmexpand"]); } $_SESSION["lmexpand"] = array($this->lm_tree->readRootId()); $expanded = $this->lm_tree->readRootId(); } else { $expanded = $_GET["lmexpand"]; } $exp->setExpand($expanded); // build html-output $exp->setOutput(0); $output = $exp->getOutput(); // $this->renderPageTitle(); // set explorer $this->tpl->setCurrentBlock("il_toc"); $this->tpl->setVariable("TXT_EXPLORER_HEADER", $this->lng->txt("overview")); $this->tpl->setVariable("EXPLORER", $output); $this->tpl->setVariable("ACTION", $this->getLink($this->lm->getRefId(), $_GET["cmd"], "", $_GET["frame"]) . "&lmexpand=" . $_GET["lmexpand"]); $this->tpl->parseCurrentBlock(); // $this->tpl->parseCurrentBlock(); if ($_GET["lmexpand"] == "") { // collapse all other branches on navigation foreach ($expand_keys as $k) { unset($_SESSION["lmexpand"][$k]); } } //var_dump($_SESSION["lmexpand"]); }
/** * table of contents */ function ilTOC($a_target) { global $ilBench; $ilBench->start("ContentPresentation", "ilTOC"); require_once "./Modules/LearningModule/classes/class.ilLMTOCExplorer.php"; if ($this->lm->cleanFrames()) { $a_target = ""; } $exp = new ilLMTOCExplorer($this->getLink($this->lm->getRefId(), "layout", "", $a_target), $this->lm); $exp->setExpandTarget($this->getLink($this->lm->getRefId(), $_GET["cmd"], $_GET["obj_id"], $_GET["frame"])); $exp->setTargetGet("obj_id"); if ($this->lm->cleanFrames()) { if ($this->offlineMode()) { $exp->setFrameTarget("_top"); } else { $exp->setFrameTarget(ilFrameTargetInfo::_getFrame("MainContent")); } } else { $exp->setFrameTarget($a_target); } $exp->addFilter("du"); $exp->addFilter("st"); // force expansion if ($this->lm->cleanFrames()) { $page_id = $this->getCurrentPageId(); if ($this->deactivated_page) { $page_id = $_GET["obj_id"]; } if ($page_id > 0) { $path = $this->lm_tree->getPathId($page_id); $exp->setForceOpenPath($path); } if (!$this->offlineMode()) { // empty chapter if ($this->chapter_has_no_active_page && ilLMObject::_lookupType($_GET["obj_id"]) == "st") { $exp->highlightNode($_GET["obj_id"]); } else { if ($this->lm->getTOCMode() == "pages") { if ($this->deactivated_page) { $exp->highlightNode($_GET["obj_id"]); } else { $exp->highlightNode($page_id); } } else { $exp->highlightNode($this->lm_tree->getParentId($page_id)); } } } } $exp->setOfflineMode($this->offlineMode()); if ($this->lm->getTOCMode() == "pages") { $exp->addFilter("pg"); } $exp->setFiltered(true); $exp->setFilterMode(IL_FM_POSITIVE); if ($_GET["lmexpand"] == "") { $expand_keys = array(); if (is_array($_SESSION["lmexpand"])) { $expand_keys = array_keys($_SESSION["lmexpand"]); } $_SESSION["lmexpand"] = array($this->lm_tree->readRootId()); $expanded = $this->lm_tree->readRootId(); } else { $expanded = $_GET["lmexpand"]; } $exp->setExpand($expanded); // build html-output $exp->setOutput(0); $output = $exp->getOutput(); // $this->renderPageTitle(); // set style sheets /* if (!$this->offlineMode()) { $this->tpl->setVariable("LOCATION_STYLESHEET", ilUtil::getStyleSheetLocation()); } else { $style_name = $this->ilias->account->prefs["style"].".css";; $this->tpl->setVariable("LOCATION_STYLESHEET","./style/".$style_name); }*/ if (!$this->offlineMode()) { // $this->tpl->addBlockFile("EXPL_TOP", "exp_top", "tpl.explorer_top.html"); //$this->tpl->setVariable("DUMMY", " "); // $this->tpl->setVariable("IMG_SPACE", ilUtil::getImagePath("spacer.png", false)); } $this->tpl->setVariable("TXT_EXPLORER_HEADER", $this->lng->txt("overview")); $this->tpl->setVariable("EXPLORER", $output); $this->tpl->setVariable("ACTION", $this->getLink($this->lm->getRefId(), $_GET["cmd"], "", $_GET["frame"]) . "&lmexpand=" . $_GET["lmexpand"]); // $this->tpl->parseCurrentBlock(); $ilBench->stop("ContentPresentation", "ilTOC"); if ($_GET["lmexpand"] == "") { // collapse all other branches on navigation foreach ($expand_keys as $k) { unset($_SESSION["lmexpand"][$k]); } } //var_dump($_SESSION["lmexpand"]); }