4 require_once(
"./Modules/LearningModule/classes/class.ilObjLearningModule.php");
5 require_once(
"./Services/MainMenu/classes/class.ilMainMenuGUI.php");
6 require_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
41 $lng->loadLanguageModule(
"content");
45 $this->offline =
false;
46 $this->frames =
array();
48 $this->ctrl->saveParameter($this,
array(
"ref_id",
"transl",
"focus_id",
"focus_return"));
51 include_once(
"./Modules/LearningModule/classes/class.ilObjLearningModuleGUI.php");
53 $this->lm = $this->lm_gui->object;
56 include_once(
"./Services/Object/classes/class.ilObjectTranslation.php");
61 if ($this->ot->getContentActivated())
63 $langs = $this->ot->getLanguages();
64 if (isset($langs[
$_GET[
"transl"]]) || $_GET[
"transl"] == $this->ot->getMasterLanguage())
66 $this->lang = $_GET[
"transl"];
68 else if (isset($langs[$ilUser->getCurrentLanguage()]))
70 $this->lang = $ilUser->getCurrentLanguage();
72 if ($this->lang == $this->ot->getMasterLanguage())
79 if (!$rbacsystem->checkAccess(
"write",
$_GET[
"ref_id"]))
81 if (!$this->lm->getOnline())
83 $ilias->raiseError($lng->txt(
"permission_denied"), $ilias->error_obj->WARNING);
87 include_once(
"./Modules/LearningModule/classes/class.ilLMTree.php");
94 if ((
int)
$_GET[
"focus_id"] > 0 && $this->lm_tree->isInTree((
int)
$_GET[
"focus_id"]))
96 $this->focus_id = (int) $_GET[
"focus_id"];
110 if (!$ilAccess->checkAccess(
"read",
"",
$_GET[
"ref_id"]) &&
111 (!(($this->ctrl->getCmd() ==
"infoScreen" || $this->ctrl->getNextClass() ==
"ilinfoscreengui")
112 && $ilAccess->checkAccess(
"visible",
"",
$_GET[
"ref_id"]))))
114 $ilias->raiseError($lng->txt(
"permission_denied"), $ilias->error_obj->WARNING);
117 $next_class = $this->ctrl->getNextClass($this);
118 $cmd = $this->ctrl->getCmd(
"layout",
array(
"showPrintView"));
124 $obj_id =
$_GET[
"obj_id"];
125 $this->ctrl->setParameter($this,
"obj_id",
$_GET[
"obj_id"]);
126 $ilNavigationHistory->addItem(
$_GET[
"ref_id"], $this->ctrl->getLinkTarget($this),
"lm");
127 $this->ctrl->setParameter($this,
"obj_id", $obj_id);
135 case "ilinfoscreengui":
139 case "ilcommonactiondispatchergui":
140 include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
142 $gui->enableCommentsSettings(
false);
143 $this->ctrl->forwardCommand($gui);
147 include_once(
"./Modules/LearningModule/classes/class.ilLMPageGUI.php");
150 $ret = $ilCtrl->forwardCommand($page_gui);
153 case "ilglossarydefpagegui":
154 include_once(
"./Modules/Glossary/classes/class.ilGlossaryDefPageGUI.php");
157 $ret = $ilCtrl->forwardCommand($page_gui);
160 case "illearningprogressgui":
162 include_once
'./Services/Tracking/classes/class.ilLearningProgressGUI.php';
164 $this->ctrl->forwardCommand($new_gui);
168 include_once(
"./Services/Rating/classes/class.ilRatingGUI.php");
170 $rating_gui->setObject($this->lm->getId(),
"lm",
$_GET[
"obj_id"],
"lm");
171 $this->ctrl->forwardCommand($rating_gui);
186 $this->offline = $a_offline;
187 $this->export_all_languages = $a_all_languages;
206 $this->export_format = $a_format;
216 return $this->export_format;
245 include_once(
"./Modules/LearningModule/classes/class.ilLMTracker.php");
254 if(!is_array($a_attributes))
258 foreach ($a_attributes as $attribute)
260 $attr[$attribute->name()] = $attribute->value();
270 return $this->frames;
284 $layout = $this->lm->getLayout();
285 if ($this->lm->getLayoutPerPage())
288 if (!in_array(
$_GET[
"frame"],
array(
"",
"_blank")) &&
$_GET[
"from_page"] > 0)
290 $pg_id = (int)
$_GET[
"from_page"];
294 if (in_array(
$_GET[
"cmd"],
array(
"media",
"glossary")) &&
$_GET[
"back_pg"] > 0)
296 $pg_id = (int)
$_GET[
"back_pg"];
317 if ($ilUser->getId() != ANONYMOUS_USER_ID &&
$_GET[
"focus_id"] ==
"")
319 include_once(
"./Modules/LearningModule/classes/class.ilObjLearningModuleAccess.php");
323 if($last_accessed_page &&
324 $last_accessed_page != $this->lm_tree->getLastActivePage())
326 $_GET[
"obj_id"] = $last_accessed_page;
336 function layout($a_xml =
"main.xml", $doShow =
true)
345 $xmlfile = file_get_contents(
"./Modules/LearningModule/layouts/lm/".
$layout.
"/".$a_xml);
349 include_once(
"./Modules/LearningModule/exceptions/class.ilLMPresentationException.php");
353 $this->layout_doc = $doc;
359 ?
"/ilLayout/ilFrame[1]" 360 :
"//ilFrame[@name='".$_GET[
"frame"].
"']";
363 if (count($found) != 1)
365 include_once(
"./Modules/LearningModule/exceptions/class.ilLMPresentationException.php");
367 " path ".
$path.
" in ".
$layout.
"/".$a_xml.
". LM Layout is ".$this->lm->getLayout());
373 $attributes = $this->
attrib2arr($node->attributes());
375 $this->frames =
array();
376 if((!empty($attributes[
"rows"])) || (!empty($attributes[
"cols"])))
378 $content .= $this->
buildTag(
"start",
"frameset", $attributes);
381 $content .= $this->
buildTag(
"end",
"frameset");
382 $this->tpl =
new ilTemplate(
"tpl.frameset.html",
true,
true,
"Modules/LearningModule");
384 $this->tpl->setVariable(
"FS_CONTENT", $content);
387 $content = $this->tpl->get();
394 if ((empty($attributes[
"template"]) || !empty(
$_GET[
"obj_type"]))
395 && (
$_GET[
"frame"] !=
"_blank" ||
$_GET[
"obj_type"] !=
"MediaObject"))
402 if(empty(
$_GET[
"obj_type"]))
404 $obj_type =
"PageObject";
408 $obj_type =
$_GET[
"obj_type"];
412 $childs = $node->child_nodes();
414 foreach($childs as $child)
416 if ($child->node_name() == $obj_type)
419 $attributes = $this->
attrib2arr($child->attributes());
427 include_once(
"./Modules/LearningModule/exceptions/class.ilLMPresentationException.php");
429 $_GET[
"frame"].
"' and object type '".$obj_type.
"'.");
434 $in_module = ($attributes[
"template_location"] ==
"module")
439 $this->tpl =
new ilTemplate($attributes[
"template"],
true,
true, $in_module);
440 $this->tpl->setBodyClass(
"");
454 $style_name = $ilUser->getPref(
"style").
".css";
455 $this->tpl->setVariable(
"LOCATION_STYLESHEET",
"./style/".$style_name);
458 include_once(
"./Services/jQuery/classes/class.iljQueryUtil.php");
463 include_once(
"./Services/UICore/classes/class.ilUIFramework.php");
469 $childs = $node->child_nodes();
471 foreach($childs as $child)
474 $child_attr = $this->
attrib2arr($child->attributes());
476 switch ($child->node_name())
484 $this->
ilTOC($child_attr[
"target_frame"]);
489 switch($this->lm->getType())
495 $content = $this->
ilPage($child);
504 case "ilLMNavigation":
517 $this->
ilJavaScript($child_attr[
"inline"], $child_attr[
"file"],
518 $child_attr[
"location"]);
549 include_once(
"./Services/Accordion/classes/class.ilAccordionGUI.php");
554 $this->tpl->addJavascript(
"./Modules/LearningModule/js/LearningModule.js");
555 include_once(
"./Services/UIComponent/Glyph/classes/class.ilGlyphGUI.php");
556 $close_call =
"il.LearningModule.setCloseHTML('".ilGlyphGUI::get(
ilGlyphGUI::CLOSE).
"');";
557 $this->tpl->addOnLoadCode($close_call);
562 if (
$_GET[
"frame"] ==
"")
564 include_once(
"./Services/Authentication/classes/class.ilSessionIStorage.php");
566 $last_frame_url = $store->get(
"cf_".$this->lm->getId());
567 if ($last_frame_url !=
"")
569 $this->tpl->addOnLoadCode(
"il.LearningModule.setLastFrameUrl('".$last_frame_url.
"', 'center_bottom');");
574 $this->tpl->addOnLoadCode(
"il.LearningModule.setSaveUrl('".
575 $ilCtrl->getLinkTarget($this,
"saveFrameUrl",
"",
false,
false).
"'); 576 il.LearningModule.openInitFrames(); 579 $this->tpl->addOnLoadCode(
"il.LearningModule.setTocRefreshUrl('".
580 $ilCtrl->getLinkTarget($this,
"refreshToc",
"",
false,
false).
"'); 586 $this->tpl->addJavascript(
"./Services/Navigation/js/ServiceNavigation.js");
587 $this->tpl->fillJavaScriptFiles();
588 $this->tpl->fillScreenReaderFocus();
590 $this->tpl->fillCssFiles();
595 $this->tpl->resetJavascript();
596 $this->tpl->resetCss();
597 $this->tpl->setBodyClass(
"ilLMNoMenu");
599 include_once(
"./Modules/LearningModule/classes/class.ilObjContentObject.php");
602 if ($f[
"type"] ==
"js")
604 $this->tpl->addJavascript($f[
"target"]);
606 if ($f[
"type"] ==
"css")
608 $this->tpl->addCSS($f[
"target"]);
611 $this->tpl->fillJavaScriptFiles(
true);
612 $this->tpl->fillCssFiles(
true);
616 $this->tpl->fillBodyClass();
626 $this->tpl->fillTabs();
627 if ($this->fill_on_load_code)
629 $this->tpl->fillOnLoadCode();
631 $content = $this->tpl->get();
632 $content = str_replace(
"{",
"{", $content);
633 $content = str_replace(
"}",
"}", $content);
635 header(
'Content-type: text/html; charset=UTF-8');
640 $this->tpl->fillLeftNav();
641 $this->tpl->fillOnLoadCode();
642 $content = $this->tpl->get();
656 include_once(
"./Services/Authentication/classes/class.ilSessionIStorage.php");
658 if (
$_GET[
"url"] !=
"")
660 $store->set(
"cf_".$this->lm->getId(),
$_GET[
"url"]);
664 $store->set(
"cf_".$this->lm->getId(),
$_GET[
"url"]);
676 if (
$_GET[
"frame"] !=
"_blank")
690 if (
$_GET[
"frame"] !=
"_blank")
696 $this->tpl =
new ilTemplate(
"tpl.glossary_term_output.html",
true,
true,
true);
707 $style_name = $ilUser->getPref(
"style").
".css";;
708 $this->tpl->setVariable(
"LOCATION_STYLESHEET",
"./style/".$style_name);
718 return $this->tpl->get();
732 $this->tpl->touchBlock(
"pg_intro");
733 $this->tpl->touchBlock(
"pg_outro");
741 $ilMainMenu->setLoginTargetPar(
"pg_".$page_id.
"_".$this->lm->getRefId());
746 $this->tpl->touchBlock(
"pg_intro");
747 $this->tpl->touchBlock(
"pg_outro");
748 $this->tpl->setBodyClass(
"std");
749 $this->tpl->setVariable(
"MAINMENU", $ilMainMenu->getHTML());
755 function ilTOC($a_get_explorer =
false)
757 include_once(
"./Modules/LearningModule/classes/class.ilLMTOCExplorerGUI.php");
758 $exp =
new ilLMTOCExplorerGUI($this,
"ilTOC", $this, $this->lang, $this->focus_id, $this->export_all_languages);
760 if (!$exp->handleCommand())
764 if ($this->deactivated_page)
766 $page_id =
$_GET[
"obj_id"];
770 $exp->setPathOpen((
int) $page_id);
773 if ($this->chapter_has_no_active_page &&
776 $exp->setHighlightNode(
$_GET[
"obj_id"]);
780 if ($this->lm->getTOCMode() ==
"pages")
782 if ($this->deactivated_page)
784 $exp->setHighlightNode(
$_GET[
"obj_id"]);
788 $exp->setHighlightNode($page_id);
793 $exp->setHighlightNode($this->lm_tree->getParentId($page_id));
798 $exp->setOfflineMode(
true);
807 $this->tpl->setCurrentBlock(
"il_toc");
808 $this->tpl->setVariable(
"EXPLORER", $exp->getHTML());
809 $this->tpl->parseCurrentBlock();
822 if ($this->
offlineMode() && $this->lang !=
"" && $this->lang !=
"-")
824 include_once(
"./Services/Object/classes/class.ilObjectTranslation.php");
826 $data = $ot->getLanguages();
833 return $this->lm->getTitle();
842 $this->tpl->setVariable(
"MENU", $this->lm_gui->setilLMMenu($this->offlineMode()
852 $this->tpl->setCurrentBlock(
"header_image");
855 $this->tpl->setVariable(
"IMG_HEADER",
"./images/icon_lm.svg");
861 $this->tpl->parseCurrentBlock();
862 $this->tpl->setCurrentBlock(
"lm_head");
864 $this->tpl->parseCurrentBlock();
879 $showViewInFrameset =
true;
881 if ($showViewInFrameset)
887 $buttonTarget =
"_top";
891 include_once(
"./Services/UICore/classes/class.ilTemplate.php");
892 $tpl_menu =
new ilTemplate(
"tpl.lm_sub_menu.html",
true,
true,
true);
903 if ($rbacsystem->checkAccess(
"write",
$_GET[
"ref_id"]))
905 $tpl_menu->setCurrentBlock(
"edit_page");
907 $tpl_menu->setVariable(
"EDIT_LINK", ILIAS_HTTP_PATH.
"/ilias.php?baseClass=ilLMEditorGUI&ref_id=".
$_GET[
"ref_id"].
908 "&obj_id=".$page_id.
"&to_page=1");
909 $tpl_menu->setVariable(
"EDIT_TXT", $this->lng->txt(
"edit_page"));
910 $tpl_menu->setVariable(
"EDIT_TARGET", $buttonTarget);
911 $tpl_menu->parseCurrentBlock();
916 include_once(
"./Services/PermanentLink/classes/class.ilPermanentLinkGUI.php");
918 $page_id.
"_".$this->lm->getRefId(),
924 $this->lm->getPageHeader(), $this->lm->isActiveNumbering(),
925 $this->lm_set->get(
"time_scheduled_page_activation"),
false, 0,
$this->lang);
928 $title.=
": ".$pg_title;
933 $tpl_menu->setCurrentBlock(
"perma_link");
934 $tpl_menu->setVariable(
"PERMA_LINK", $plinkgui->getHTML());
935 $tpl_menu->parseCurrentBlock();
939 $this->tpl->setVariable(
"SUBMENU", $tpl_menu->get());
957 global $ilAccess,
$tpl;
959 include_once
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php";
961 $ilAccess, $this->lm->getType(),
$_GET[
"ref_id"], $this->lm->getId());
964 include_once
"Services/Object/classes/class.ilObjectListGUI.php";
965 ilObjectListGUI::prepareJSLinks($this->ctrl->getLinkTarget($this,
"redrawHeaderAction",
"",
true),
966 $this->ctrl->getLinkTargetByClass(
array(
"ilcommonactiondispatchergui",
"ilnotegui"),
"",
"",
true,
false),
967 $this->ctrl->getLinkTargetByClass(
array(
"ilcommonactiondispatchergui",
"iltagginggui"),
"",
"",
true,
false));
969 $lg = $dispatcher->initHeaderAction();
970 $lg->enableNotes(
true);
971 $lg->enableComments($this->lm->publicNotes(),
false);
973 if($this->lm->hasRating() && !$this->
offlineMode())
975 $lg->enableRating(
true, $this->lng->txt(
"lm_rating"),
false,
976 array(
"ilcommonactiondispatchergui",
"ilratinggui"));
981 $this->tpl->setVariable(
"HEAD_ACTION", $lg->getHeaderAction());
986 return $lg->getHeaderAction().
987 $tpl->getOnLoadCodeForAsynch();
1007 if (!$ilSetting->get(
"disable_notes"))
1014 if ($ilSetting->get(
"disable_comments"))
1019 if (!$this->lm->publicNotes())
1024 $next_class = $this->ctrl->getNextClass($this);
1026 include_once(
"Services/Notes/classes/class.ilNoteGUI.php");
1035 if ($ilAccess->checkAccess(
"write",
"",
$_GET[
"ref_id"]) &&
1036 $ilSetting->get(
"comments_del_tutor", 1))
1041 $this->ctrl->setParameter($this,
"frame",
$_GET[
"frame"]);
1042 $this->ctrl->setParameter($this,
"obj_id",
$_GET[
"obj_id"]);
1044 $notes_gui->enablePrivateNotes();
1045 if ($this->lm->publicNotes())
1047 $notes_gui->enablePublicNotes();
1050 if ($next_class ==
"ilnotegui")
1052 $html = $this->ctrl->forwardCommand($notes_gui);
1056 $html = $notes_gui->getNotesHTML();
1058 $this->tpl->setVariable(
"NOTES",
$html);
1067 global $ilLocator, $tree,
$ilCtrl;
1069 require_once(
"./Modules/LearningModule/classes/class.ilStructureObject.php");
1071 if (empty(
$_GET[
"obj_id"]))
1073 $a_id = $this->lm_tree->getRootId();
1077 $a_id =
$_GET[
"obj_id"];
1080 if (!$a_std_templ_loaded)
1082 $this->tpl->addBlockFile(
"STATUSLINE",
"statusline",
"tpl.statusline.html");
1085 if (!$this->lm->cleanFrames())
1087 $frame_param =
$_GET[
"frame"];
1098 $frame_target =
"_top";
1103 $ilLocator->addItem(
"...",
"");
1105 $par_id = $tree->getParentId(
$_GET[
"ref_id"]);
1106 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id", $par_id);
1107 $ilLocator->addItem(
1109 $ilCtrl->getLinkTargetByClass(
"ilrepositorygui",
"frameset"),
1111 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id",
$_GET[
"ref_id"]);
1115 $ilLocator->setOffline(
true);
1118 if($this->lm_tree->isInTree($a_id))
1120 $path = $this->lm_tree->getPathFull($a_id);
1124 if (
$row[
"type"] !=
"pg")
1126 if(
$row[
"child"] != $this->lm_tree->getRootId())
1128 $ilLocator->addItem(
1131 $this->lm->isActiveNumbering(),
1132 $this->lm_set->get(
"time_scheduled_page_activation"),
false, 0,
$this->lang),
1134 $this->
getLink(
$_GET[
"ref_id"],
"layout",
$row[
"child"], $frame_param,
"StructureObject"),
1139 $ilLocator->addItem(
1141 $this->
getLink(
$_GET[
"ref_id"],
"layout",
"", $frame_param),
1142 $frame_target,
$_GET[
"ref_id"]);
1150 $ilLocator->addItem(
1154 require_once(
"./Modules/LearningModule/classes/class.ilLMObjectFactory.php");
1157 $ilLocator->addItem(
1158 $lm_obj->getTitle(),
1159 $this->
getLink(
$_GET[
"ref_id"],
"layout", $a_id, $frame_param),
1165 $debug =
"DEBUG: <font color=\"red\">".$this->type.
"::".$this->
id.
"::".
$_GET[
"cmd"].
"</font><br/>";
1171 $this->tpl->setLocator();
1183 if (!$this->
offlineMode() && $this->current_page_id !==
false)
1188 include_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
1190 $this->chapter_has_no_active_page =
false;
1191 $this->deactivated_page =
false;
1194 if(empty(
$_GET[
"obj_id"]))
1196 $obj_id = $this->lm_tree->getRootId();
1200 $obj_id =
$_GET[
"obj_id"];
1202 $this->lm->getType(), $this->lm_set->get(
"time_scheduled_page_activation"));
1207 $this->deactivated_page =
true;
1212 if (!$this->lm_tree->isInTree($obj_id))
1217 $curr_node = $this->lm_tree->getNodeData($obj_id);
1220 $this->lm->getType(), $this->lm_set->get(
"time_scheduled_page_activation"));
1222 if ($curr_node[
"type"] ==
"pg" &&
1225 $page_id = $curr_node[
"obj_id"];
1232 while($succ_node && !$active)
1234 $succ_node = $this->lm_tree->fetchSuccessorNode($page_id,
"pg");
1235 $page_id = $succ_node[
"obj_id"];
1237 $this->lm->getType(), $this->lm_set->get(
"time_scheduled_page_activation"));
1240 if ($succ_node[
"type"] !=
"pg")
1242 $this->chapter_has_no_active_page =
true;
1247 if($ilUser->getId() == ANONYMOUS_USER_ID &&
1248 $this->lm_gui->object->getPublicAccessMode() ==
'selected')
1252 while ($public ===
false && $page_id > 0)
1254 $succ_node = $this->lm_tree->fetchSuccessorNode($page_id,
'pg');
1255 $page_id = $succ_node[
'obj_id'];
1261 if ($this->lm_tree->isInTree($page_id))
1263 $path = $this->lm_tree->getPathId($page_id);
1266 $this->chapter_has_no_active_page =
true;
1271 $this->current_page_id = $page_id;
1278 $this->tpl =
new ilTemplate(
"tpl.page.html",
true,
true,
true);
1280 $this->tpl->setVariable(
"MENU",$this->lm_gui->setilCitationMenu());
1282 include_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
1284 $this->pg_obj = $this->
getLMPage($page_id);
1285 $xml = $this->pg_obj->getXMLContent();
1286 $this->lm_gui->showCitation($xml);
1294 if (!is_object($this->layout_doc))
1299 $path =
"/ilLayout/ilLinkTargets/LinkTarget";
1302 for ($i = 0; $i < count(
$res->nodeset); $i++)
1304 $type =
$res->nodeset[$i]->get_attribute(
"Type");
1305 $frame =
$res->nodeset[$i]->get_attribute(
"Frame");
1306 $onclick =
$res->nodeset[$i]->get_attribute(
"OnClick");
1307 $targets[$type] =
array(
"Type" => $type,
"Frame" => $frame,
"OnClick" => $onclick);
1320 function ilPage(&$a_page_node, $a_page_id = 0)
1322 global
$ilUser, $ilHelp, $ilAccess;
1324 $access = $ilAccess;
1327 $ilHelp->setScreenIdComponent(
"lm");
1328 $ilHelp->setScreenId(
"content");
1329 $ilHelp->setSubScreenId(
"content");
1331 $this->fill_on_load_code =
true;
1335 if ($requested_page_lm != $this->lm->getId())
1337 if ($_REQUEST[
"frame"] ==
"")
1344 $read_access =
false;
1347 if ($access->checkAccess(
"read",
"", $ref_id))
1349 $read_access =
true;
1361 if($ilUser->getId() == ANONYMOUS_USER_ID &&
1362 $this->lm_gui->object->getPublicAccessMode() ==
'selected')
1379 if ($this->lm->getRestrictForwardNavigation())
1390 require_once(
"./Modules/LearningModule/classes/class.ilLMPageGUI.php");
1391 require_once(
"./Modules/LearningModule/classes/class.ilLMPageObject.php");
1394 if ($a_page_id == 0)
1402 include_once
'./Services/Search/classes/class.ilUserSearchCache.php';
1405 $search_string = $cache->getQuery();
1408 if(is_array($search_string))
1410 $search_string = $search_string[
"lom_content"];
1413 include_once(
"./Services/UIComponent/TextHighlighter/classes/class.ilTextHighlighterGUI.php");
1414 include_once(
"./Services/Search/classes/class.ilQueryParser.php");
1418 $words = $p->getQuotedWords();
1419 if (is_array($words))
1421 foreach ($words as
$w)
1427 $this->fill_on_load_code =
true;
1432 $page_id = $a_page_id;
1436 $this->tpl->setCurrentBlock(
"ContentStyle");
1439 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
1444 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
"content_style/content.css");
1446 $this->tpl->parseCurrentBlock();
1449 if ($this->chapter_has_no_active_page &&
1452 $mtpl =
new ilTemplate(
"tpl.no_content_message.html",
true,
true,
1453 "Modules/LearningModule");
1454 $mtpl->setVariable(
"MESSAGE", $this->lng->txt(
"cont_no_page_in_chapter"));
1457 $mtpl->setVariable(
"ITEM_TITLE",
1459 $this->tpl->setVariable(
"PAGE_CONTENT", $mtpl->get());
1460 return $mtpl->get();
1464 if ($this->deactivated_page)
1466 $mtpl =
new ilTemplate(
"tpl.no_content_message.html",
true,
true,
1467 "Modules/LearningModule");
1468 $m = $this->lng->txt(
"cont_page_currently_deactivated");
1470 if ($act_data[
"show_activation_info"] &&
1473 $m.=
"<p>".sprintf($this->lng->txt(
"cont_page_activation_on"),
1478 $mtpl->setVariable(
"MESSAGE", $m);
1481 $mtpl->setVariable(
"ITEM_TITLE",
1483 $this->tpl->setVariable(
"PAGE_CONTENT", $mtpl->get());
1484 return $mtpl->get();
1489 if ($this->focus_id > 0)
1491 $path = $this->lm_tree->getPathId($page_id);
1494 if (!in_array($this->focus_id,
$path))
1496 $mtpl =
new ilTemplate(
"tpl.out_of_focus_message.html",
true,
true,
1497 "Modules/LearningModule");
1498 $mtpl->setVariable(
"MESSAGE", $this->lng->txt(
"cont_out_of_focus_message"));
1499 $mtpl->setVariable(
"TXT_SHOW_CONTENT", $this->lng->txt(
"cont_show_content_after_focus"));
1503 $mtpl->setVariable(
"TXT_BACK_BEGINNING", $this->lng->txt(
"cont_to_focus_beginning"));
1504 $this->ctrl->setParameter($this,
"obj_id", $this->focus_id);
1505 $mtpl->setVariable(
"LINK_BACK_TO_BEGINNING", $this->ctrl->getLinkTarget($this,
"layout"));
1506 $this->ctrl->setParameter($this,
"obj_id", $_GET[
"obj_id"]);
1510 $mtpl->setVariable(
"TXT_BACK_BEGINNING", $this->lng->txt(
"cont_to_focus_return_crs"));
1511 include_once(
"./Services/Link/classes/class.ilLink.php");
1512 $mtpl->setVariable(
"LINK_BACK_TO_BEGINNING",
ilLink::_getLink((
int) $_GET[
"focus_return"]));
1515 $this->ctrl->setParameter($this,
"focus_id",
"");
1516 $mtpl->setVariable(
"LINK_SHOW_CONTENT", $this->ctrl->getLinkTarget($this,
"layout"));
1517 $this->ctrl->setParameter($this,
"focus_id", $_GET[
"focus_id"]);
1519 $focus_mess = $mtpl->get();
1529 if ($sp == 0 || !in_array($this->focus_id, $path2))
1531 $mtpl =
new ilTemplate(
"tpl.out_of_focus_message.html",
true,
true,
1532 "Modules/LearningModule");
1533 $mtpl->setVariable(
"MESSAGE", $this->lng->txt(
"cont_out_of_focus_message_last_page"));
1534 $mtpl->setVariable(
"TXT_SHOW_CONTENT", $this->lng->txt(
"cont_show_content_after_focus"));
1538 $mtpl->setVariable(
"TXT_BACK_BEGINNING", $this->lng->txt(
"cont_to_focus_beginning"));
1539 $this->ctrl->setParameter($this,
"obj_id", $this->focus_id);
1540 $mtpl->setVariable(
"LINK_BACK_TO_BEGINNING", $this->ctrl->getLinkTarget($this,
"layout"));
1541 $this->ctrl->setParameter($this,
"obj_id", $_GET[
"obj_id"]);
1545 $mtpl->setVariable(
"TXT_BACK_BEGINNING", $this->lng->txt(
"cont_to_focus_return_crs"));
1546 include_once(
"./Services/Link/classes/class.ilLink.php");
1547 $mtpl->setVariable(
"LINK_BACK_TO_BEGINNING",
ilLink::_getLink((
int) $_GET[
"focus_return"]));
1550 $this->ctrl->setParameter($this,
"focus_id",
"");
1551 $mtpl->setVariable(
"LINK_SHOW_CONTENT", $this->ctrl->getLinkTarget($this,
"layout"));
1552 $this->ctrl->setParameter($this,
"focus_id", $_GET[
"focus_id"]);
1554 $focus_mess = $mtpl->get();
1562 $cont = $this->lng->txt(
"cont_no_page");
1563 $this->tpl->setVariable(
"PAGE_CONTENT", $cont);
1570 $page_object = $page_object_gui->getPageObject();
1571 $page_object->buildDom();
1572 $page_object->registerOfflineHandler($this);
1574 $int_links = $page_object->getInternalLinks();
1578 $page_object_gui->setTemplateOutput(
false);
1581 $ilUser->setDesktopItemParameters($this->lm->getRefId(), $this->lm->getType(), $page_id);
1584 include_once
'./Modules/Course/classes/class.ilCourseLMHistory.php';
1593 $lm_pg_obj->setLMId($this->lm->getId());
1595 $page_object_gui->setLinkXML($link_xml);
1599 $page_object_gui->setLinkFrame(
$_GET[
"frame"]);
1602 if ($page_id == 0 || ($page_id != $this->lm->getHeaderPage() &&
1603 $page_id != $this->lm->getFooterPage()))
1605 $page_object_gui->setPresentationTitle(
1607 $this->lm->getPageHeader(), $this->lm->isActiveNumbering(),
1608 $this->lm_set->get(
"time_scheduled_page_activation"),
false, 0,
$this->lang));
1611 if ($ilUser->getId() != ANONYMOUS_USER_ID && $page_id != 0 && !$this->
offlineMode())
1618 $page_object_gui->setEnabledPageFocus(
false);
1619 $page_object_gui->getPageConfig()->setEnableSelfAssessment(
false);
1623 $page_object_gui->setLinkParams(
"ref_id=".$this->lm->getRefId());
1624 $page_object_gui->setTemplateTargetVar(
"PAGE_CONTENT");
1628 $this->tpl->setCurrentBlock(
"SyntaxStyle");
1631 $this->tpl->setVariable(
"LOCATION_SYNTAX_STYLESHEET",
1636 $this->tpl->setVariable(
"LOCATION_SYNTAX_STYLESHEET",
1637 "syntaxhighlight.css");
1639 $this->tpl->parseCurrentBlock();
1642 $ret = $page_object_gui->presentation($page_object_gui->getOutputMode());
1645 if ($this->lm->getHeaderPage() > 0 &&
1646 $page_id != $this->lm->getHeaderPage() &&
1647 ($page_id == 0 || $page_id != $this->lm->getFooterPage()))
1651 $head = $this->
ilPage($a_page_node, $this->lm->getHeaderPage());
1656 if ($this->lm->getFooterPage() > 0 &&
1657 $page_id != $this->lm->getFooterPage() &&
1658 ($page_id == 0 || $page_id != $this->lm->getHeaderPage()))
1662 $foot = $this->
ilPage($a_page_node, $this->lm->getFooterPage());
1668 if($this->lm->hasRatingPages() && !$this->
offlineMode())
1670 include_once(
"./Services/Rating/classes/class.ilRatingGUI.php");
1672 $rating_gui->setObject($this->lm->getId(),
"lm", $page_id,
"lm");
1673 $rating_gui->setYourRatingText($this->lng->txt(
"lm_rate_page"));
1680 $this->ctrl->setParameter($this,
"pgid", $page_id);
1681 $this->tpl->addOnLoadCode(
"il.LearningModule.setRatingUrl('".
1682 $this->ctrl->getLinkTarget($this,
"updatePageRating",
"",
true,
false).
1684 $this->ctrl->setParameter($this,
"pgid",
"");
1686 $rating =
'<div id="ilrtrpg" style="text-align:right">'.
1687 $rating_gui->getHtml(
true,
true,
"il.LearningModule.saveRating(%rating%);").
1691 $this->tpl->setVariable(
"PAGE_CONTENT", $rating.$head.$focus_mess.$ret.$foot);
1693 return $head.$focus_mess.$ret.$foot;
1700 $pg_id =
$_GET[
"pgid"];
1701 if(!$this->ctrl->isAsynch() || !$pg_id)
1706 include_once
'./Services/Rating/classes/class.ilRating.php';
1707 $rating = (int)
$_POST[
"rating"];
1711 $pg_id,
"lm", $ilUser->getId(),
$_POST[
"rating"]);
1716 $pg_id,
"lm", $ilUser->getId());
1719 include_once
'./Services/Rating/classes/class.ilRatingGUI.php';
1721 $rating->setObject($this->lm->getId(),
"lm", $pg_id,
"lm", $ilUser->getId());
1722 $rating->setYourRatingText($this->lng->txt(
"lm_rate_page"));
1724 echo $rating->getHtml(
true,
true,
"il.LearningModule.saveRating(%rating%);");
1726 echo $this->tpl->getOnLoadCodeForAsynch();
1738 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
1740 $this->lm->getStyleSheetId(),
"lm"));
1743 $a_page_gui->setOutputMode(
"presentation");
1744 $this->fill_on_load_code =
true;
1748 $a_page_gui->setOutputMode(
"offline");
1750 $this->fill_on_load_code =
false;
1756 $a_page_gui->setFileDownloadLink($this->
getLink(
$_GET[
"ref_id"],
"downloadFile"));
1759 $this->ctrl->setParameter($this,
"obj_id",
$_GET[
"obj_id"]);
1761 $a_page_gui->setFullscreenLink($this->
getLink(
$_GET[
"ref_id"],
"fullscreen"));
1775 $this->tpl->setCurrentBlock(
"ContentStyle");
1778 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
1783 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
"content_style/content.css");
1785 $this->tpl->parseCurrentBlock();
1787 $this->tpl->addBlockFile(
"PAGE_CONTENT",
"pg_content",
"tpl.page_preconditions.html",
true);
1790 include_once(
"./Services/Repository/classes/class.ilRepositoryExplorer.php");
1791 foreach($conds as $cond)
1793 include_once(
"./Services/Link/classes/class.ilLink.php");
1795 $this->tpl->setCurrentBlock(
"condition");
1797 $this->tpl->setVariable(
"LINK_ITEM", $obj_link);
1798 if ($cond[
"operator"] ==
"passed")
1800 $cond_str = $this->lng->txt(
"passed");
1804 $cond_str = $this->lng->txt(
"condition_".$cond[
"operator"]);
1806 $this->tpl->setVariable(
"VAL_CONDITION", $cond_str.
" ".$cond[
"value"]);
1807 $this->tpl->parseCurrentBlock();
1809 $this->tpl->setCurrentBlock(
"pg_content");
1811 $this->tpl->setVariable(
"TXT_MISSING_PRECONDITIONS",
1812 sprintf($this->lng->txt(
"cont_missing_preconditions"),
1814 $this->tpl->setVariable(
"TXT_ITEM", $this->lng->txt(
"object"));
1815 $this->tpl->setVariable(
"TXT_CONDITION", $this->lng->txt(
"condition"));
1818 $parent = $this->lm_tree->getParentId($topchap);
1819 $childs = $this->lm_tree->getChildsByType($parent,
"st");
1822 foreach($childs as $child)
1824 if ($child[
"child"] == $topchap)
1830 $succ_node = $this->lm_tree->fetchSuccessorNode($child[
"child"],
"pg");
1833 if($succ_node !=
"")
1835 $framestr = (!empty(
$_GET[
"frame"]))
1836 ?
"frame=".
$_GET[
"frame"].
"&" 1839 $showViewInFrameset =
true;
1840 $link =
"<br /><a href=\"".
1841 $this->
getLink($this->lm->getRefId(),
"layout", $succ_node[
"obj_id"],
$_GET[
"frame"]).
1842 "\">".$this->lng->txt(
"cont_skip_chapter").
"</a>";
1843 $this->tpl->setVariable(
"LINK_SKIP_CHAPTER", $link);
1846 $this->tpl->parseCurrentBlock();
1858 $showViewInFrameset =
true;
1860 if ($a_layoutframes ==
"")
1862 $a_layoutframes =
array();
1864 $link_info =
"<IntLinkInfos>";
1865 foreach ($a_int_links as $int_link)
1867 $target = $int_link[
"Target"];
1868 if (substr(
$target, 0, 4) ==
"il__")
1872 $type = $int_link[
"Type"];
1873 $targetframe = ($int_link[
"TargetFrame"] !=
"")
1874 ? $int_link[
"TargetFrame"]
1878 $anc = $anc_add =
"";
1879 if ($int_link[
"Anchor"] !=
"")
1881 $anc = $int_link[
"Anchor"];
1882 $anc_add =
"_".rawurlencode($int_link[
"Anchor"]);
1888 case "StructureObject":
1890 if ($lm_id == $this->lm->getId() ||
1891 ($targetframe !=
"None" && $targetframe !=
"New"))
1893 $ltarget = $a_layoutframes[$targetframe][
"Frame"];
1897 $nframe = ($ltarget ==
"")
1902 if ($showViewInFrameset) {
1927 if ($type ==
"PageObject")
1929 $href =
"./goto.php?target=pg_".$target_id.$anc_add;
1933 $href =
"./goto.php?target=st_".$target_id;
1938 if ($type ==
"PageObject")
1940 $href = ILIAS_HTTP_PATH.
"/goto.php?target=pg_".
$target_id.$anc_add.
"&client_id=".CLIENT_ID;
1944 $href = ILIAS_HTTP_PATH.
"/goto.php?target=st_".
$target_id.
"&client_id=".CLIENT_ID;
1947 if ($targetframe !=
"New")
1953 $ltarget =
"_blank";
1958 case "GlossaryItem":
1959 if ($targetframe ==
"None")
1961 $targetframe =
"Glossary";
1963 $ltarget = $a_layoutframes[$targetframe][
"Frame"];
1964 $nframe = ($ltarget ==
"")
1972 $ltarget = $a_layoutframes[$targetframe][
"Frame"];
1973 $nframe = ($ltarget ==
"")
1980 case "RepositoryItem":
1985 $href =
"./goto.php?target=".$obj_type.
"_".
$target_id;
1989 $href = ILIAS_HTTP_PATH.
"/goto.php?target=".$obj_type.
"_".
$target_id.
"&client_id=".CLIENT_ID;
1995 include_once(
"./Modules/Wiki/classes/class.ilWikiPage.php");
2003 $ilCtrl->setParameter($this,
"file_id",
"il__file_".
$target_id);
2004 $href = $ilCtrl->getLinkTarget($this,
"downloadFile");
2005 $ilCtrl->setParameter($this,
"file_id",
"");
2006 $ilCtrl->setParameter($this,
"obj_id",
$_GET[
"obj_id"]);
2011 $anc_par =
'Anchor="'.$anc.
'"';
2015 $link_info .=
"<IntLinkInfo Target=\"$target\" Type=\"$type\" " .
2016 "TargetFrame=\"$targetframe\" LinkHref=\"$href\" LinkTarget=\"$ltarget\" $anc_par/>";
2028 $link_info.=
"</IntLinkInfos>";
2037 $link_info =
"<LinkTargets>";
2040 $link_info.=
"<LinkTarget TargetFrame=\"".$t[
"Type"].
"\" LinkTarget=\"".
$t[
"Frame"].
"\" OnClick=\"".
$t[
"OnClick"].
"\" />";
2042 $link_info.=
"</LinkTargets>";
2053 require_once(
"./Modules/Glossary/classes/class.ilGlossaryTermGUI.php");
2057 $this->tpl->setCurrentBlock(
"ContentStyle");
2060 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
2065 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
"content_style/content.css");
2067 $this->tpl->parseCurrentBlock();
2070 $this->tpl->setCurrentBlock(
"SyntaxStyle");
2074 $this->tpl->setVariable(
"LOCATION_SYNTAX_STYLESHEET",
2079 $this->tpl->setVariable(
"LOCATION_SYNTAX_STYLESHEET",
2080 "syntaxhighlight.css");
2082 $this->tpl->parseCurrentBlock();
2084 $int_links = $term_gui->getInternalLinks();
2087 $term_gui->setLinkXML($link_xml);
2092 $ilCtrl->setParameter($this,
"pg_type",
"glo");
2094 $term_gui->output($this->
offlineMode(), $this->tpl);
2100 $ilCtrl->setParameter($this,
"pg_type",
"");
2111 $this->tpl->setCurrentBlock(
"ContentStyle");
2114 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
2119 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
"content_style/content.css");
2121 $this->tpl->parseCurrentBlock();
2132 $style_name = $ilUser->getPref(
"style").
".css";;
2133 $this->tpl->setVariable(
"LOCATION_STYLESHEET",
"./style/".$style_name);
2136 $this->tpl->setCurrentBlock(
"ilMedia");
2143 require_once(
"./Services/MediaObjects/classes/class.ilObjMediaObject.php");
2145 if (!empty (
$_GET[
"pg_id"]))
2147 require_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
2149 $pg_obj->buildDom();
2154 $xml.= $pg_obj->getMediaAliasElement(
$_GET[
"mob_id"]);
2175 $xsl = file_get_contents(
"./Services/COPage/xsl/page.xsl");
2176 $args =
array(
'/_xml' => $xml,
'/_xsl' => $xsl );
2191 $mode = (
$_GET[
"cmd"] ==
"fullscreen")
2196 $this->
getLink($this->lm->getRefId(),
"fullscreen");
2197 $params =
array (
'mode' => $mode,
'enlarge_path' => $enlarge_path,
2198 'link_params' =>
"ref_id=".$this->lm->getRefId(),
'fullscreen_link' => $fullscreen_link,
2199 'ref_id' => $this->lm->getRefId(),
'pg_frame' => $pg_frame,
'webspace_path' => $wb_path);
2200 $output = xslt_process($xh,
"arg:/_xml",
"arg:/_xsl",NULL,$args, $params);
2205 $this->tpl->setVariable(
"MEDIA_CONTENT", $output);
2208 include_once(
"./Services/MediaObjects/classes/class.ilObjMediaObjectGUI.php");
2217 if ($a_inline !=
"")
2219 $js_tpl =
new ilTemplate($a_inline,
true,
false, $a_location);
2220 $js = $js_tpl->get();
2221 $this->tpl->setVariable(
"INLINE_JS",
$js);
2246 if ($this->chapter_has_no_active_page &&
2249 $c_id =
$_GET[
"obj_id"];
2253 if ($this->deactivated_page)
2255 $c_id =
$_GET[
"obj_id"];
2264 $succ_node = $this->lm_tree->fetchSuccessorNode($c_id,
"pg");
2265 $c_id = $succ_node[
"obj_id"];
2268 $this->lm->getType(), $this->lm_set->get(
"time_scheduled_page_activation"));
2270 if ($succ_node[
"obj_id"] > 0 &&
2271 $ilUser->getId() == ANONYMOUS_USER_ID &&
2272 ( $this->lm->getPublicAccessMode() ==
"selected" &&
2277 else if ($succ_node[
"obj_id"] > 0 && !$active)
2281 if ($act_data[
"show_activation_info"] &&
2299 return $succ_node[
"obj_id"];
2313 include_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
2315 include_once(
"./Services/Accessibility/classes/class.ilAccessKeyGUI.php");
2325 if(!$this->lm_tree->isInTree($page_id))
2331 $limpos = strpos(
$_GET[
"back_pg"],
":");
2334 $back_pg = substr(
$_GET[
"back_pg"], 0, $limpos);
2338 $back_pg =
$_GET[
"back_pg"];
2340 if (!$this->lm->cleanFrames())
2343 $this->
getLink($this->lm->getRefId(),
"layout", $back_pg,
$_GET[
"frame"],
2350 $this->
getLink($this->lm->getRefId(),
"layout", $back_pg,
"",
2352 $back_target =
'target="'.ilFrameTargetInfo::_getFrame(
"MainContent").
'" ';
2356 $this->tpl->setCurrentBlock(
"ilLMNavigation_Prev");
2357 $this->tpl->setVariable(
"IMG_PREV", $back_img);
2358 $this->tpl->setVariable(
"HREF_PREV", $back_href);
2359 $this->tpl->setVariable(
"FRAME_PREV", $back_target);
2360 $this->tpl->setVariable(
"TXT_PREV", $this->lng->txt(
"back"));
2361 $this->tpl->setVariable(
"ALT_PREV", $this->lng->txt(
"back"));
2362 $this->tpl->setVariable(
"PREV_ACC_KEY",
2364 $this->tpl->setVariable(
"SPACER_PREV", $this->
offlineMode()
2365 ?
"images/spacer.png" 2367 $this->tpl->parseCurrentBlock();
2368 $this->tpl->setCurrentBlock(
"ilLMNavigation_Prev2");
2369 $this->tpl->setVariable(
"IMG_PREV2", $back_img);
2370 $this->tpl->setVariable(
"HREF_PREV2", $back_href);
2371 $this->tpl->setVariable(
"FRAME_PREV2", $back_target);
2372 $this->tpl->setVariable(
"TXT_PREV2", $this->lng->txt(
"back"));
2373 $this->tpl->setVariable(
"ALT_PREV2", $this->lng->txt(
"back"));
2374 $this->tpl->setVariable(
"SPACER_PREV2", $this->
offlineMode()
2375 ?
"images/spacer.png" 2377 $this->tpl->parseCurrentBlock();
2385 if ($this->chapter_has_no_active_page &&
2388 $c_id =
$_GET[
"obj_id"];
2392 if ($this->deactivated_page)
2394 $c_id =
$_GET[
"obj_id"];
2403 $succ_node = $this->lm_tree->fetchSuccessorNode($c_id,
"pg");
2404 $c_id = $succ_node[
"obj_id"];
2407 $this->lm->getType(), $this->lm_set->get(
"time_scheduled_page_activation"));
2409 if ($succ_node[
"obj_id"] > 0 &&
2410 $ilUser->getId() == ANONYMOUS_USER_ID &&
2411 ( $this->lm->getPublicAccessMode() ==
"selected" &&
2416 else if ($succ_node[
"obj_id"] > 0 && !$active)
2420 if ($act_data[
"show_activation_info"] &&
2436 $succ_str = ($succ_node !==
false)
2437 ?
" -> ".$succ_node[
"obj_id"].
"_".$succ_node[
"type"]
2442 if ($this->deactivated_page)
2444 $c_id =
$_GET[
"obj_id"];
2452 $pre_node = $this->lm_tree->fetchPredecessorNode($c_id,
"pg");
2453 $c_id = $pre_node[
"obj_id"];
2455 $this->lm->getType(), $this->lm_set->get(
"time_scheduled_page_activation"));
2456 if ($pre_node[
"obj_id"] > 0 &&
2457 $ilUser->getId() == ANONYMOUS_USER_ID &&
2458 ($this->lm->getPublicAccessMode() ==
"selected" &&
2463 else if ($pre_node[
"obj_id"] > 0 && !$active)
2467 if ($act_data[
"show_activation_info"] &&
2483 $pre_str = ($pre_node !==
false)
2484 ? $pre_node[
"obj_id"].
"_".$pre_node[
"type"].
" -> " 2488 $framestr = (!empty(
$_GET[
"frame"]))
2489 ?
"frame=".
$_GET[
"frame"].
"&" 2495 $showViewInFrameset =
true;
2501 $this->lm->getPageHeader(), $this->lm->isActiveNumbering(),
2502 $this->lm_set->get(
"time_scheduled_page_activation"),
false, 0,
$this->lang);
2507 if (!$this->lm->cleanFrames())
2510 $this->
getLink($this->lm->getRefId(),
"layout", $pre_node[
"obj_id"],
$_GET[
"frame"]);
2513 else if ($showViewInFrameset && !$this->
offlineMode())
2516 $this->
getLink($this->lm->getRefId(),
"layout", $pre_node[
"obj_id"]);
2517 $prev_target =
'target="'.ilFrameTargetInfo::_getFrame(
"MainContent").
'" ';
2522 $this->
getLink($this->lm->getRefId(),
"layout", $pre_node[
"obj_id"]);
2523 $prev_target =
'target="_top" ';
2526 if($ilUser->getId() == ANONYMOUS_USER_ID &&
2529 $output = $this->lng->txt(
"msg_page_not_public");
2532 $this->tpl->setCurrentBlock(
"ilLMNavigation_Prev");
2533 $this->tpl->setVariable(
"IMG_PREV", $prev_img);
2534 $this->tpl->setVariable(
"HREF_PREV", $prev_href);
2535 $this->tpl->setVariable(
"FRAME_PREV", $prev_target);
2536 $this->tpl->setVariable(
"TXT_PREV", $prev_title);
2537 $this->tpl->setVariable(
"ALT_PREV", $this->lng->txt(
"previous"));
2538 $this->tpl->setVariable(
"SPACER_PREV", $this->
offlineMode()
2539 ?
"images/spacer.png" 2541 $this->tpl->setVariable(
"PREV_ACC_KEY",
2543 $this->tpl->parseCurrentBlock();
2544 $this->tpl->setCurrentBlock(
"ilLMNavigation_Prev2");
2545 $this->tpl->setVariable(
"IMG_PREV2", $prev_img);
2546 $this->tpl->setVariable(
"HREF_PREV2", $prev_href);
2547 $this->tpl->setVariable(
"FRAME_PREV2", $prev_target);
2548 $this->tpl->setVariable(
"TXT_PREV2", $prev_title);
2549 $this->tpl->setVariable(
"ALT_PREV2", $this->lng->txt(
"previous"));
2550 $this->tpl->setVariable(
"SPACER_PREV2", $this->
offlineMode()
2551 ?
"images/spacer.png" 2553 $this->tpl->parseCurrentBlock();
2555 if($succ_node !=
"")
2559 $this->lm->getPageHeader(), $this->lm->isActiveNumbering(),
2560 $this->lm_set->get(
"time_scheduled_page_activation"),
false, 0,
$this->lang);
2564 if (!$this->lm->cleanFrames())
2567 $this->
getLink($this->lm->getRefId(),
"layout", $succ_node[
"obj_id"],
$_GET[
"frame"]);
2570 else if ($showViewInFrameset && !$this->
offlineMode())
2573 $this->
getLink($this->lm->getRefId(),
"layout", $succ_node[
"obj_id"]);
2574 $succ_target =
' target="'.ilFrameTargetInfo::_getFrame(
"MainContent").
'" ';
2579 $this->
getLink($this->lm->getRefId(),
"layout", $succ_node[
"obj_id"]);
2580 $succ_target =
' target="_top" ';
2583 if($ilUser->getId() == ANONYMOUS_USER_ID &&
2586 $output = $this->lng->txt(
"msg_page_not_public");
2589 $this->tpl->setCurrentBlock(
"ilLMNavigation_Next");
2590 $this->tpl->setVariable(
"IMG_SUCC", $succ_img);
2591 $this->tpl->setVariable(
"HREF_SUCC", $succ_href);
2592 $this->tpl->setVariable(
"FRAME_SUCC", $succ_target);
2593 $this->tpl->setVariable(
"TXT_SUCC", $succ_title);
2594 $this->tpl->setVariable(
"ALT_SUCC", $this->lng->txt(
"next"));
2595 $this->tpl->setVariable(
"SPACER_SUCC", $this->
offlineMode()
2596 ?
"images/spacer.png" 2598 $this->tpl->setVariable(
"NEXT_ACC_KEY",
2600 $this->tpl->parseCurrentBlock();
2601 $this->tpl->setCurrentBlock(
"ilLMNavigation_Next2");
2602 $this->tpl->setVariable(
"IMG_SUCC2", $succ_img);
2603 $this->tpl->setVariable(
"HREF_SUCC2", $succ_href);
2604 $this->tpl->setVariable(
"FRAME_SUCC2", $succ_target);
2605 $this->tpl->setVariable(
"TXT_SUCC2", $succ_title);
2606 $this->tpl->setVariable(
"ALT_SUCC2", $this->lng->txt(
"next"));
2607 $this->tpl->setVariable(
"SPACER_SUCC2", $this->
offlineMode()
2608 ?
"images/spacer.png" 2610 $this->tpl->parseCurrentBlock();
2615 if ($this->lm->getRestrictForwardNavigation())
2617 if ($this->
getTracker()->hasPredIncorrectAnswers($succ_node[
"obj_id"]))
2619 $this->tpl->addOnLoadCode(
"$('.ilc_page_rnav_RightNavigation').addClass('ilNoDisplay');");
2629 $child_nodes = $a_node->child_nodes();
2630 foreach ($child_nodes as $child)
2632 if($child->node_name() ==
"ilFrame")
2634 $attributes = $this->
attrib2arr($child->attributes());
2636 if ((!empty($attributes[
"rows"])) || (!empty($attrubtes[
"cols"])))
2640 if(!empty($attributes[
"name"]))
2642 unset($attributes[
"template"]);
2643 unset($attributes[
"template_location"]);
2644 $attributes[
"src"] =
2645 $this->
getLink($this->lm->getRefId(),
"layout",
$_GET[
"obj_id"], $attributes[
"name"],
2646 "",
"keep",
"",
$_GET[
"srcstring"]);
2647 $attributes[
"title"] = $this->lng->txt(
"cont_frame_".$attributes[
"name"]);
2649 $this->frames[$attributes[
"name"]] = $attributes[
"name"];
2661 unset($attributes[
"template"]);
2662 unset($attributes[
"template_location"]);
2663 $attributes[
"src"] =
2664 $this->
getLink($this->lm->getRefId(),
"layout",
$_GET[
"obj_id"], $attributes[
"name"],
2665 "",
"keep",
"",
$_GET[
"srcstring"]);
2666 $attributes[
"title"] = $this->lng->txt(
"cont_frame_".$attributes[
"name"]);
2667 if ($attributes[
"name"] ==
"toc")
2669 $attributes[
"src"].=
"#".$_GET[
"obj_id"];
2674 if (
$_GET[
"anchor"] !=
"")
2676 $attributes[
"src"].=
"#".rawurlencode(
$_GET[
"anchor"]);
2680 $this->frames[$attributes[
"name"]] = $attributes[
"name"];
2702 if (is_array($attr))
2704 while (list($k,$v) = each($attr))
2705 $tag.=
" ".$k.
"=\"$v\"";
2724 if (!$this->lm->isActiveTOC() || !$this->lm->isActiveLMMenu())
2730 $this->tpl->setCurrentBlock(
"ContentStyle");
2733 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
2738 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
"content_style/content.css");
2740 $this->tpl->parseCurrentBlock();
2751 $style_name = $ilUser->getPref(
"style").
".css";;
2752 $this->tpl->setVariable(
"LOCATION_STYLESHEET",
"./style/".$style_name);
2758 $this->tpl->getStandardTemplate();
2763 $this->tpl->setVariable(
"TABS", $this->lm_gui->setilLMMenu($this->offlineMode()
2768 $this->tpl->setVariable(
"TXT_TOC", $this->lng->txt(
"cont_toc"));
2772 include_once(
"./Modules/LearningModule/classes/class.ilLMTableOfContentsExplorerGUI.php");
2775 if (!$exp->handleCommand())
2779 if ($this->deactivated_page)
2781 $page_id =
$_GET[
"obj_id"];
2788 if ($this->chapter_has_no_active_page &&
2791 $exp->setHighlightNode(
$_GET[
"obj_id"]);
2794 if ($this->lm->getTOCMode() ==
"pages")
2796 if ($this->deactivated_page)
2798 $exp->setHighlightNode(
$_GET[
"obj_id"]);
2801 $exp->setHighlightNode($page_id);
2805 $exp->setHighlightNode($this->lm_tree->getParentId($page_id));
2811 $exp->setOfflineMode(
true);
2814 $this->tpl->setVariable(
"ADM_CONTENT", $exp->getHTML());
2819 $this->tpl->resetJavascript();
2820 $this->tpl->resetCss();
2821 $this->tpl->setBodyClass(
"ilLMNoMenu");
2823 include_once(
"./Modules/LearningModule/classes/class.ilObjContentObject.php");
2826 if ($f[
"type"] ==
"js")
2828 $this->tpl->addJavascript($f[
"target"]);
2830 if ($f[
"type"] ==
"css")
2832 $this->tpl->addCSS($f[
"target"]);
2835 $this->tpl->fillJavaScriptFiles(
true);
2836 $this->tpl->fillOnLoadCode();
2838 return $this->tpl->get();
2854 $this->ctrl->setCmd(
"showSummary");
2855 $this->ctrl->setCmdClass(
"ilinfoscreengui");
2869 global $ilAccess, $ilLocator,
$ilUser;
2880 $style_name = $ilUser->getPref(
"style").
".css";;
2881 $this->tpl->setStyleSheetLocation(
"./".$style_name);
2884 $this->tpl->getStandardTemplate();
2888 $this->tpl->setVariable(
"TABS", $this->lm_gui->setilLMMenu($this->offlineMode()
2893 if ($ilAccess->checkAccess(
"read",
"",
$_GET[
"ref_id"]))
2899 $ilLocator->addRepositoryItems();
2900 $this->tpl->setLocator();
2913 $this->lng->loadLanguageModule(
"meta");
2915 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
2918 $info->enablePrivateNotes();
2919 $info->enableLearningProgress();
2921 $info->enableNews();
2922 if ($ilAccess->checkAccess(
"write",
"",
$_GET[
"ref_id"]))
2925 $enable_internal_rss = $news_set->get(
"enable_rss_for_internal");
2927 $info->enableNewsEditing();
2929 if ($enable_internal_rss)
2931 $info->setBlockProperty(
"news",
"settings",
true);
2953 $info->addMetaDataSections($this->lm->getId(),0, $this->lm->getType());
2957 $this->tpl->setContent(
$info->getHTML());
2958 return $this->tpl->get();
2963 $this->ctrl->forwardCommand(
$info);
2976 include_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
2977 if (!$this->lm->isActivePrintView() || !$this->lm->isActiveLMMenu())
2982 include_once(
"./Modules/LearningModule/classes/class.ilStructureObject.php");
2985 $this->tpl->setCurrentBlock(
"ContentStyle");
2988 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
2993 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
"content_style/content.css");
2995 $this->tpl->parseCurrentBlock();
2999 $this->tpl->getStandardTemplate();
3001 $this->tpl->setVariable(
"TABS", $this->lm_gui->setilLMMenu($this->offlineMode()
3006 $this->tpl->addBlockFile(
"ADM_CONTENT",
"adm_content",
3007 "tpl.lm_print_selection.html",
"Modules/LearningModule");
3018 $this->ctrl->setParameterByClass(
"illmpresentationgui",
"obj_id",
$_GET[
"obj_id"]);
3019 $this->tpl->setVariable(
"FORMACTION", $this->ctrl->getFormaction($this));
3021 $nodes = $this->lm_tree->getSubtree($this->lm_tree->getNodeData($this->lm_tree->getRootId()));
3023 if (!is_array(
$_POST[
"item"]))
3025 if (
$_GET[
"obj_id"] !=
"")
3037 foreach ($nodes as $node)
3042 $this->lm_set->get(
"time_scheduled_page_activation"));
3044 if ($node[
"type"] ==
"pg" &&
3050 $text = $img_scr = $img_alt =
"";
3054 switch ($node[
"type"])
3060 $this->lm->getPageHeader(), $this->lm->isActiveNumbering(),
3061 $this->lm_set->get(
"time_scheduled_page_activation"),
false, 0,
$this->lang);
3063 if($ilUser->getId() == ANONYMOUS_USER_ID &&
3064 $this->lm_gui->object->getPublicAccessMode() ==
"selected")
3069 $text.=
" (".$this->lng->txt(
"cont_no_access").
")";
3073 $img_alt = $lng->txt(
"icon").
" ".$lng->txt(
"pg");
3080 $img_alt = $lng->txt(
"icon").
" ".$lng->txt(
"obj_lm");
3087 $this->lm->isActiveNumbering(),
3088 $this->lm_set->get(
"time_scheduled_page_activation"),
false, 0,
$this->lang);
3089 if($ilUser->getId() == ANONYMOUS_USER_ID &&
3090 $this->lm_gui->object->getPublicAccessMode() ==
"selected")
3095 $text.=
" (".$this->lng->txt(
"cont_no_access").
")";
3099 $img_alt = $lng->txt(
"icon").
" ".$lng->txt(
"st");
3105 $text.=
" (".$this->lng->txt(
"cont_no_access").
")";
3108 $this->nl->addListNode($node[
"obj_id"],
$text, $node[
"parent"], $checked, $disabled,
3109 $img_src, $img_alt);
3114 if (
$_GET[
"obj_id"] > 0 && !$this->lm_tree->isInTree(
$_GET[
"obj_id"]))
3118 $this->lm->getPageHeader(), $this->lm->isActiveNumbering(),
3119 $this->lm_set->get(
"time_scheduled_page_activation"),
false, 0,
$this->lang);
3121 if($ilUser->getId() == ANONYMOUS_USER_ID &&
3122 $this->lm_gui->object->getPublicAccessMode() ==
"selected")
3127 $text.=
" (".$this->lng->txt(
"cont_no_access").
")";
3131 $id =
$_GET[
"obj_id"];
3135 $this->nl->addListNode($id,
$text, 0, $checked, $disabled,
3136 $img_src, $img_alt);
3139 $f = $this->form->getHTML();
3143 $tb->addFormButton($lng->txt(
"cont_show_print_view"),
"showPrintView");
3144 $this->tpl->setVariable(
"TOOLBAR", $tb->getHTML());
3146 $this->tpl->setVariable(
"ITEM_SELECTION", $f);
3158 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
3164 $op1 =
new ilRadioOption($lng->txt(
"cont_current_page"),
"page");
3165 $radg->addOption($op1);
3166 $op2 =
new ilRadioOption($lng->txt(
"cont_current_chapter"),
"chapter");
3167 $radg->addOption($op2);
3168 $op3=
new ilRadioOption($lng->txt(
"cont_selected_pg_chap"),
"selection");
3169 $radg->addOption($op3);
3171 include_once(
"./Services/Form/classes/class.ilNestedListInputGUI.php");
3174 $op3->addSubItem($nl);
3177 $this->form->addItem($radg);
3179 $this->form->addCommandButton(
"showPrintView", $lng->txt(
"cont_show_print_view"));
3180 $this->form->setOpenTag(
false);
3181 $this->form->setCloseTag(
false);
3183 $this->form->setTitle($lng->txt(
"cont_print_selection"));
3184 $this->form->setFormAction($ilCtrl->getFormAction($this));
3194 include_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
3196 if (!$this->lm->isActivePrintView() || !$this->lm->isActiveLMMenu())
3205 if (
$_POST[
"sel_type"] ==
"page")
3207 if (!is_array(
$_POST[
"obj_id"]) || !in_array($c_obj_id,
$_POST[
"obj_id"]))
3209 $_POST[
"obj_id"][] = $c_obj_id;
3212 if (
$_POST[
"sel_type"] ==
"chapter" && $c_obj_id > 0)
3215 $path = $this->lm_tree->getPathFull($c_obj_id);
3216 $chap_id =
$path[1][
"child"];
3219 $_POST[
"obj_id"][] = $chap_id;
3232 $style_name = $ilUser->getPref(
"style").
".css";;
3233 $this->tpl->setVariable(
"LOCATION_STYLESHEET",
"./style/".$style_name);
3237 $this->tpl->setCurrentBlock(
"ContentStyle");
3240 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
3245 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
"content_style/content.css");
3247 $this->tpl->parseCurrentBlock();
3250 $this->tpl->setCurrentBlock(
"SyntaxStyle");
3251 $this->tpl->setVariable(
"LOCATION_SYNTAX_STYLESHEET",
3253 $this->tpl->parseCurrentBlock();
3256 $this->tpl->addBlockFile(
"CONTENT",
"content",
"tpl.lm_print_view.html",
true);
3261 $nodes = $this->lm_tree->getSubtree($this->lm_tree->getNodeData($this->lm_tree->getRootId()));
3263 include_once(
"./Modules/LearningModule/classes/class.ilLMPageGUI.php");
3264 include_once(
"./Modules/LearningModule/classes/class.ilLMPageObject.php");
3265 include_once(
"./Modules/LearningModule/classes/class.ilStructureObject.php");
3270 $glossary_links =
array();
3271 $output_header =
false;
3272 $media_links =
array();
3275 if ($this->lm->getFooterPage() > 0 && !$this->lm->getHideHeaderFooterPrint())
3279 $page_object_gui = $this->
getLMPageGUI($this->lm->getFooterPage());
3280 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
3282 $this->lm->getStyleSheetId(),
"lm"));
3286 $page_object_gui->setLinkFrame(
$_GET[
"frame"]);
3287 $page_object_gui->setOutputMode(
"print");
3288 $page_object_gui->setPresentationTitle(
"");
3289 $page_object_gui->setFileDownloadLink(
"#");
3290 $page_object_gui->setFullscreenLink(
"#");
3291 $page_object_gui->setSourceCodeDownloadScript(
"#");
3292 $footer_page_content = $page_object_gui->showPage();
3295 if ($this->lm->getHeaderPage() > 0 && !$this->lm->getHideHeaderFooterPrint())
3299 $page_object_gui = $this->
getLMPageGUI($this->lm->getHeaderPage());
3300 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
3302 $this->lm->getStyleSheetId(),
"lm"));
3306 $page_object_gui->setLinkFrame(
$_GET[
"frame"]);
3307 $page_object_gui->setOutputMode(
"print");
3308 $page_object_gui->setPresentationTitle(
"");
3309 $page_object_gui->setFileDownloadLink(
"#");
3310 $page_object_gui->setFullscreenLink(
"#");
3311 $page_object_gui->setSourceCodeDownloadScript(
"#");
3312 $header_page_content = $page_object_gui->showPage();
3317 if (is_array(
$_POST[
"obj_id"]))
3319 foreach(
$_POST[
"obj_id"] as $k)
3321 if ($k > 0 && !$this->lm_tree->isInTree($k))
3325 $nodes[] =
array(
"obj_id" => $k,
"type" =>
"pg",
"free" =>
true);
3333 $ilCtrl->redirect($this,
"showPrintViewSelection");
3336 foreach ($nodes as $node_key => $node)
3340 $this->lm_set->get(
"time_scheduled_page_activation"));
3341 if ($node[
"type"] ==
"pg" && !$active)
3348 if ($node[
"depth"] <= $act_level)
3350 if (is_array(
$_POST[
"obj_id"]) && in_array($node[
"obj_id"],
$_POST[
"obj_id"]))
3352 $act_level = $node[
"depth"];
3366 if ($node[
"type"] ==
"du")
3368 $output_header =
true;
3372 if ($node[
"type"] ==
"st")
3374 if($ilUser->getId() == ANONYMOUS_USER_ID &&
3375 $this->lm_gui->object->getPublicAccessMode() ==
"selected")
3384 $this->tpl->setCurrentBlock(
"print_chapter");
3386 $chapter_title = $chap->_getPresentationTitle($node[
"obj_id"],
3387 $this->lm->isActiveNumbering(),
3388 $this->lm_set->get(
"time_scheduled_page_activation"), 0,
$this->lang);
3389 $this->tpl->setVariable(
"CHAP_TITLE",
3394 if ($nodes[$node_key + 1][
"type"] ==
"pg")
3396 $this->tpl->setVariable(
"CHAP_HEADER",
3397 $header_page_content);
3398 $did_chap_page_header =
true;
3402 $this->tpl->parseCurrentBlock();
3403 $this->tpl->setCurrentBlock(
"print_block");
3404 $this->tpl->parseCurrentBlock();
3408 if ($node[
"type"] ==
"pg")
3410 if($ilUser->getId() == ANONYMOUS_USER_ID &&
3411 $this->lm_gui->object->getPublicAccessMode() ==
"selected")
3419 $this->tpl->setCurrentBlock(
"print_item");
3422 $page_id = $node[
"obj_id"];
3424 $page_object = $page_object_gui->getPageObject();
3425 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
3427 $this->lm->getStyleSheetId(),
"lm"));
3432 $lm_pg_obj->setLMId($this->lm->getId());
3435 $page_object_gui->setLinkFrame(
$_GET[
"frame"]);
3436 $page_object_gui->setOutputMode(
"print");
3437 $page_object_gui->setPresentationTitle(
"");
3439 if ($this->lm->getPageHeader() ==
IL_PAGE_TITLE || $node[
"free"] ===
true)
3442 $this->lm->getPageHeader(), $this->lm->isActiveNumbering(),
3443 $this->lm_set->get(
"time_scheduled_page_activation"),
false, 0,
$this->lang);
3447 if ($this->lm->isActiveNumbering())
3449 $chapter_title = trim(substr($chapter_title,
3450 strpos($chapter_title,
" ")));
3453 if ($page_title != $chapter_title)
3455 $page_object_gui->setPresentationTitle($page_title);
3460 $hcont = $header_page_content;
3461 $fcont = $footer_page_content;
3465 if ($did_chap_page_header)
3469 if ($nodes[$node_key + 1][
"type"] ==
"pg" &&
3470 !($nodes[$node_key + 1][
"depth"] <= $act_level
3471 && !in_array($nodes[$node_key + 1][
"obj_id"],
$_POST[
"obj_id"])))
3477 $page_object_gui->setFileDownloadLink(
"#");
3478 $page_object_gui->setFullscreenLink(
"#");
3479 $page_object_gui->setSourceCodeDownloadScript(
"#");
3480 $page_content = $page_object_gui->showPage();
3483 $this->tpl->setVariable(
"CONTENT",
3484 $hcont.$page_content.$fcont);
3488 $this->tpl->setVariable(
"CONTENT",
3489 $hcont.$page_content.$fcont.
"<br />");
3491 $chapter_title =
"";
3492 $this->tpl->parseCurrentBlock();
3493 $this->tpl->setCurrentBlock(
"print_block");
3494 $this->tpl->parseCurrentBlock();
3501 foreach ($int_links as $key => $link)
3503 if ($link[
"type"] ==
"git" &&
3504 ($link[
"inst"] == IL_INST_ID || $link[
"inst"] == 0))
3506 $glossary_links[$key] = $link;
3508 if ($link[
"type"] ==
"mob" &&
3509 ($link[
"inst"] == IL_INST_ID || $link[
"inst"] == 0))
3512 $mob_links[$key] = $link;
3523 $page_object->buildDom();
3524 $links = $page_object->getInternalLinks();
3525 foreach($links as $link)
3527 if ($link[
"Type"] ==
"MediaObject" 3528 && $link[
"TargetFrame"] !=
"" 3529 && $link[
"TargetFrame"] !=
"None")
3531 $media_links[] = $link;
3543 if (count($glossary_links) > 0 && !$this->lm->isActivePreventGlossaryAppendix())
3545 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTerm.php");
3546 include_once(
"./Modules/Glossary/classes/class.ilGlossaryDefinition.php");
3551 foreach($glossary_links as $key => $link)
3554 $terms[$term.
":".$key] =
array(
"key" => $key,
"link" => $link,
"term" => $term);
3559 foreach($terms as
$t)
3567 foreach($defs as $def)
3570 if (count($defs) > 1)
3572 $this->tpl->setCurrentBlock(
"def_title");
3573 $this->tpl->setVariable(
"TXT_DEFINITION",
3574 $this->lng->txt(
"cont_definition").
" ".($def_cnt++));
3575 $this->tpl->parseCurrentBlock();
3577 include_once(
"./Modules/Glossary/classes/class.ilGlossaryDefPageGUI.php");
3579 $page_gui->setTemplateOutput(
false);
3580 $page_gui->setOutputMode(
"print");
3582 $this->tpl->setCurrentBlock(
"definition");
3583 $page_gui->setFileDownloadLink(
"#");
3584 $page_gui->setFullscreenLink(
"#");
3585 $page_gui->setSourceCodeDownloadScript(
"#");
3586 $output = $page_gui->showPage();
3587 $this->tpl->setVariable(
"VAL_DEFINITION",
$output);
3588 $this->tpl->parseCurrentBlock();
3592 $this->tpl->setCurrentBlock(
"term");
3593 $this->tpl->setVariable(
"VAL_TERM",
3595 $this->tpl->parseCurrentBlock();
3600 $this->tpl->setCurrentBlock(
"glossary");
3601 $annex_title = $this->lng->txt(
"cont_annex").
" ".
3602 chr(64+$annex_cnt).
": ".$this->lng->txt(
"glo");
3603 $this->tpl->setVariable(
"TXT_GLOSSARY", $annex_title);
3604 $this->tpl->parseCurrentBlock();
3606 $annexes[] = $annex_title;
3610 if (count($media_links) > 0)
3612 include_once(
"./Services/MediaObjects/classes/class.ilObjMediaObject.php");
3613 include_once(
"./Services/MediaObjects/classes/class.ilMediaItem.php");
3615 foreach($media_links as $media)
3617 if (substr($media[
"Target"],0,4) ==
"il__")
3619 $arr = explode(
"_",$media[
"Target"]);
3620 $id = $arr[count($arr) - 1];
3623 $med_item = $med_obj->getMediaItem(
"Standard");
3624 if (is_object($med_item))
3626 if (is_int(strpos($med_item->getFormat(),
"image")))
3628 $this->tpl->setCurrentBlock(
"ref_image");
3631 if ($med_item->getLocationType() ==
"LocalFile")
3633 $this->tpl->setVariable(
"IMG_SOURCE",
3635 "/".$med_item->getLocation());
3639 $this->tpl->setVariable(
"IMG_SOURCE",
3640 $med_item->getLocation());
3643 if ($med_item->getCaption() !=
"")
3645 $this->tpl->setVariable(
"IMG_TITLE", $med_item->getCaption());
3649 $this->tpl->setVariable(
"IMG_TITLE", $med_obj->getTitle());
3651 $this->tpl->parseCurrentBlock();
3659 $this->tpl->setCurrentBlock(
"ref_images");
3660 $annex_title = $this->lng->txt(
"cont_annex").
" ".
3661 chr(64+$annex_cnt).
": ".$this->lng->txt(
"cont_ref_images");
3662 $this->tpl->setVariable(
"TXT_REF_IMAGES", $annex_title);
3663 $this->tpl->parseCurrentBlock();
3665 $annexes[] = $annex_title;
3671 $this->tpl->setCurrentBlock(
"print_header");
3673 if ($this->lm->getDescription() !=
"none")
3675 include_once(
"Services/MetaData/classes/class.ilMD.php");
3676 $md =
new ilMD($this->lm->getId(), 0, $this->lm->getType());
3678 foreach($md_gen->getDescriptionIds() as $id)
3680 $md_des = $md_gen->getDescription($id);
3681 $description = $md_des->getDescription();
3684 $this->tpl->setVariable(
"LM_DESCRIPTION",
3687 $this->tpl->parseCurrentBlock();
3691 foreach ($nodes2 as $node2)
3693 if ($node2[
"type"] ==
"st" 3696 for ($j=1; $j < $node2[
"depth"]; $j++)
3698 $this->tpl->setCurrentBlock(
"indent");
3700 $this->tpl->parseCurrentBlock();
3702 $this->tpl->setCurrentBlock(
"toc_entry");
3703 $this->tpl->setVariable(
"TXT_TOC_TITLE",
3705 $this->lm->isActiveNumbering(),
3706 $this->lm_set->get(
"time_scheduled_page_activation"),
false, 0,
$this->lang));
3707 $this->tpl->parseCurrentBlock();
3712 foreach ($annexes as $annex)
3714 $this->tpl->setCurrentBlock(
"indent");
3716 $this->tpl->parseCurrentBlock();
3717 $this->tpl->setCurrentBlock(
"toc_entry");
3718 $this->tpl->setVariable(
"TXT_TOC_TITLE", $annex);
3719 $this->tpl->parseCurrentBlock();
3722 $this->tpl->setCurrentBlock(
"toc");
3723 $this->tpl->setVariable(
"TXT_TOC", $this->lng->txt(
"cont_toc"));
3724 $this->tpl->parseCurrentBlock();
3726 $this->tpl->setCurrentBlock(
"print_start_block");
3727 $this->tpl->parseCurrentBlock();
3731 include_once
'Services/MetaData/classes/class.ilMD.php';
3732 $md =
new ilMD($this->lm->getId(),0, $this->lm->getType());
3733 if(is_object($lifecycle = $md->getLifecycle()))
3735 $sep = $author =
"";
3736 foreach(($ids = $lifecycle->getContributeIds()) as $con_id)
3738 $md_con = $lifecycle->getContribute($con_id);
3739 if ($md_con->getRole() ==
"Author")
3741 foreach($ent_ids = $md_con->getEntityIds() as $ent_id)
3743 $md_ent = $md_con->getEntity($ent_id);
3744 $author = $author.$sep.$md_ent->getEntity();
3751 $this->lng->loadLanguageModule(
"meta");
3752 $this->tpl->setCurrentBlock(
"author");
3753 $this->tpl->setVariable(
"TXT_AUTHOR", $this->lng->txt(
"meta_author"));
3754 $this->tpl->setVariable(
"LM_AUTHOR", $author);
3755 $this->tpl->parseCurrentBlock();
3761 if (is_object($md_rights = $md->getRights()))
3763 $copyright = $md_rights->getDescription();
3764 include_once(
'Services/MetaData/classes/class.ilMDUtils.php');
3767 if ($copyright !=
"")
3769 $this->lng->loadLanguageModule(
"meta");
3770 $this->tpl->setCurrentBlock(
"copyright");
3771 $this->tpl->setVariable(
"TXT_COPYRIGHT", $this->lng->txt(
"meta_copyright"));
3772 $this->tpl->setVariable(
"LM_COPYRIGHT", $copyright);
3773 $this->tpl->parseCurrentBlock();
3777 $this->tpl->show(
false);
3786 $pg_obj->buildDom();
3787 $int_links = $pg_obj->getInternalLinks();
3788 foreach ($int_links as $il)
3790 if ($il[
"Target"] == str_replace(
"_file_",
"_dfile_",
$_GET[
"file_id"]))
3794 require_once(
"./Modules/File/classes/class.ilObjFile.php");
3795 $fileObj =
new ilObjFile($file_id,
false);
3796 $fileObj->sendFile();
3800 if (in_array(
$_GET[
"file_id"], $pg_obj->getAllFileObjIds()))
3802 require_once(
"./Modules/File/classes/class.ilObjFile.php");
3805 $fileObj =
new ilObjFile($file_id,
false);
3806 $fileObj->sendFile();
3817 require_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
3819 $pg_obj->send_paragraph (
$_GET[
"par_id"],
$_GET[
"downloadtitle"]);
3827 if (!$this->lm->isActiveDownloads() || !$this->lm->isActiveLMMenu())
3833 $this->tpl->setCurrentBlock(
"ContentStyle");
3836 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
3841 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
"content_style/content.css");
3843 $this->tpl->parseCurrentBlock();
3847 $this->tpl->getStandardTemplate();
3849 $this->tpl->setVariable(
"TABS", $this->lm_gui->setilLMMenu($this->offlineMode()
3855 $this->tpl->addBlockFile(
"ADM_CONTENT",
"adm_content",
"tpl.lm_download_list.html",
"Modules/LearningModule");
3868 include_once
'Services/MetaData/classes/class.ilMD.php';
3869 $md =
new ilMD($this->lm->getId(),0, $this->lm->getType());
3870 if (is_object($md_rights = $md->getRights()))
3872 $copyright = $md_rights->getDescription();
3874 include_once(
'Services/MetaData/classes/class.ilMDUtils.php');
3877 if ($copyright !=
"")
3879 $this->lng->loadLanguageModule(
"meta");
3880 $this->tpl->setCurrentBlock(
"copyright");
3881 $this->tpl->setVariable(
"TXT_COPYRIGHT", $this->lng->txt(
"meta_copyright"));
3882 $this->tpl->setVariable(
"LM_COPYRIGHT", $copyright);
3883 $this->tpl->parseCurrentBlock();
3888 include_once(
"./Modules/LearningModule/classes/class.ilLMDownloadTableGUI.php");
3890 $this->tpl->setVariable(
"DOWNLOAD_TABLE", $download_table->getHTML());
3900 if (!$this->lm->isActiveDownloads() || !$this->lm->isActiveLMMenu())
3905 $base_type = explode(
"_",
$_GET[
"type"]);
3906 $base_type = $base_type[0];
3907 $file = $this->lm->getPublicExportFile($base_type);
3908 if ($this->lm->getPublicExportFile($base_type) !=
"")
3910 $dir = $this->lm->getExportDirectory(
$_GET[
"type"]);
3911 if (is_file($dir.
"/".
$file))
3930 return "ilias.php?baseClass=ilLMPresentationGUI&ref_id=".$a_ref_id.
"&obj_id=".$a_obj_id.
"&focus_id=".
3931 $a_obj_id.
"&focus_return=".$a_return_ref_id;
3938 function getLink($a_ref_id, $a_cmd =
"", $a_obj_id =
"", $a_frame =
"",
$a_type =
"",
3939 $a_back_link =
"append", $a_anchor =
"", $a_srcstring =
"")
3950 $back_pg =
$_GET[
"back_pg"];
3951 if ($a_obj_id !=
"" && !$this->lm_tree->isInTree($a_obj_id) && $cur_page_id !=
"" &&
3952 $a_back_link ==
"append")
3956 $back_pg = $cur_page_id.
":".$back_pg;
3960 $back_pg = $cur_page_id;
3965 if ($a_back_link ==
"reduce")
3967 $limpos = strpos(
$_GET[
"back_pg"],
":");
3971 $back_pg = substr($back_pg, strpos($back_pg,
":") + 1);
3978 else if ($a_back_link !=
"keep")
3987 if (
$_GET[
"from_page"] ==
"")
3990 if (!in_array($a_frame,
array(
"",
"_blank")))
3992 $this->ctrl->setParameter($this,
"from_page", $cur_page_id);
3999 if (!in_array($a_frame,
array(
"",
"_blank")))
4001 $this->ctrl->setParameter($this,
"from_page",
$_GET[
"from_page"]);
4005 if ($a_anchor !=
"")
4007 $this->ctrl->setParameter($this,
"anchor", rawurlencode($a_anchor));
4009 if ($a_srcstring !=
"")
4011 $this->ctrl->setParameter($this,
"srcstring", $a_srcstring);
4016 $link = $this->ctrl->getLinkTarget($this,
"fullscreen",
"",
false,
false);
4023 $this->ctrl->setParameter($this,
"back_pg", $back_pg);
4027 $this->ctrl->setParameter($this,
"frame", $a_frame);
4029 if ($a_obj_id !=
"")
4034 $this->ctrl->setParameter($this,
"mob_id", $a_obj_id);
4038 $this->ctrl->setParameter($this,
"obj_id", $a_obj_id);
4039 $link.=
"&obj_id=".$a_obj_id;
4045 $this->ctrl->setParameter($this,
"obj_type",
$a_type);
4047 $link = $this->ctrl->getLinkTarget($this, $a_cmd, $a_anchor);
4050 $this->ctrl->setParameter($this,
"frame",
"");
4051 $this->ctrl->setParameter($this,
"obj_id",
"");
4052 $this->ctrl->setParameter($this,
"mob_id",
"");
4059 if ($this->export_all_languages)
4061 if ($this->lang !=
"" && $this->lang !=
"-")
4063 $lang_suffix =
"_".$this->lang;
4069 case "downloadFile":
4073 $link =
"fullscreen.html";
4078 if ($a_obj_id ==
"")
4080 $a_obj_id = $this->lm_tree->getRootId();
4081 $pg_node = $this->lm_tree->fetchSuccessorNode($a_obj_id,
"pg");
4082 $a_obj_id = $pg_node[
"obj_id"];
4084 if (
$a_type ==
"StructureObject")
4086 $pg_node = $this->lm_tree->fetchSuccessorNode($a_obj_id,
"pg");
4087 $a_obj_id = $pg_node[
"obj_id"];
4089 if ($a_frame !=
"" && $a_frame !=
"_blank")
4091 if ($a_frame !=
"toc")
4093 $link =
"frame_".$a_obj_id.
"_".$a_frame.$lang_suffix.
".html";
4097 $link =
"frame_".$a_frame.$lang_suffix.
".html";
4105 $link =
"lm_pg_".$nid.$lang_suffix.
".html";
4109 $link =
"lm_pg_".$a_obj_id.$lang_suffix.
".html";
4115 $link =
"term_".$a_obj_id.
".html";
4119 $link =
"media_".$a_obj_id.
".html";
4127 $this->ctrl->clearParameters($this);
4141 $this->tpl->setCurrentBlock(
"ContentStyle");
4144 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
4149 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
"content_style/content.css");
4151 $this->tpl->parseCurrentBlock();
4153 $tpl =
new ilTemplate(
"tpl.page_message_screen.html",
true,
true,
"Modules/LearningModule");
4154 $tpl->setVariable(
"TXT_PAGE_NO_PUBLIC_ACCESS",
$a_content);
4156 $this->tpl->setVariable(
"PAGE_CONTENT", $tpl->get());
4190 $target = $this->ctrl->getLinkTarget($this,
"");
4192 return $this->ctrl->getLinkTarget($this,
"");
4208 $this->offline_directory = $offdir;
4230 if (!($fp = @fopen(
$file,
"w+")))
4232 die (
"<b>Error</b>: Could not open \"".
$file.
"\" for writing".
4233 " in <b>".__FILE__.
"</b> on line <b>".__LINE__.
"</b><br />");
4244 $this->tpl->fillWindowTitle();
4245 $this->tpl->fillContentLanguage();
4257 include_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
4258 include_once(
"./Modules/LearningModule/classes/class.ilLMPageGUI.php");
4261 return new ilLMPageGUI($a_id, 0,
false, $this->lang);
4274 include_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
4277 return new ilLMPage($a_id, 0, $this->lang);
4287 $exp = $this->
ilTOC(
true);
4289 echo $exp->getHTML().
4290 "<script>".$exp->getOnLoadCode().
"</script>";
outputInfoScreen($a_standard_locator=false)
info screen
static _exists($a_parent_type, $a_id, $a_lang="", $a_no_cache=false)
Checks whether page exists.
saveFrameUrl()
Save frame url.
static makeDirParents($a_dir)
Create a new directory and all parent directories.
static _getMissingPreconditionsTopChapter($cont_obj_ref_id, $cont_obj_id, $page_id)
get top chapter of page for that any precondition is missing
determineLayout()
Determine layout.
static _parseCopyright($a_copyright)
Parse copyright.
This class represents an option in a radio group.
static initjQueryUI()
Init jQuery UI (see included_components.txt for included components)
LM presentation (left frame) explorer GUI class.
static getContentPrintStyle()
get content print style
static getDefinitionList($a_term_id)
static
downloadFile()
download file of file lists
redrawHeaderAction()
Redraw header action.
static _lookupType($a_obj_id, $a_lm_id=0)
Lookup type.
Class for permanent links.
static _getPresentationTitle($a_st_id, $a_mode=IL_CHAPTER_TITLE, $a_include_numbers=false, $a_time_scheduled_activation=false, $a_force_content=false, $a_lm_id=0, $a_lang="-")
get presentation title
static _updateLastAccess($a_user_id, $a_lm_ref_id, $a_page_id)
xpath_new_context($dom_document)
getOfflineDirectory()
get offline directory
static getStyleSheetLocation($mode="output", $a_css_name="", $a_css_location="")
get full style sheet file name (path inclusive) of current user
setOfflineDirectory($offdir)
set offline directory to offdir
static _exists($a_id)
checks wether a lm content object with specified id exists or not
showDownloadList()
show download list
static _checkPreconditionsOfPage($cont_ref_id, $cont_obj_id, $page_id)
checks wether the preconditions of a page are fulfilled or not
ilLMMenu()
output learning module menu
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
xpath_eval($xpath_context, $eval_str, $contextnode=null)
getLMPageGUI($a_id)
Get lm page gui object.
showNavRestrictionDueToQuestions()
Show message if navigation to page is not allowed due to unanswered questions.
static shortenText($a_str, $a_len, $a_dots=false, $a_next_blank=false, $a_keep_extension=false)
shorten a string to given length.
getLink($a_ref_id, $a_cmd="", $a_obj_id="", $a_frame="", $a_type="", $a_back_link="append", $a_anchor="", $a_srcstring="")
handles links for learning module presentation
static _lookupTitle($a_id)
lookup object title
ilPage(&$a_page_node, $a_page_id=0)
process <ilPage> content tag
ilGlossary()
show glossary term
static _lookupContObjID($a_id)
get learning module / digibook id for lm object
static init($a_tpl=null)
Init.
static writeRatingForUserAndObject($a_obj_id, $a_obj_type, $a_sub_obj_id, $a_sub_obj_type, $a_user_id, $a_rating, $a_category_id=0)
Write rating for a user and an object.
static _lookupTitle($a_obj_id)
Lookup title.
getLinkXML($a_int_links, $a_layoutframes)
get xml for links
static addJavaScript()
Add javascript files that are necessary to run accordion.
export()
calls export of digilib-object at this point other lm-objects can be exported
static sortArray($array, $a_array_sortby, $a_array_sortorder=0, $a_numeric=false, $a_keep_keys=false)
sortArray
showInfoScreen()
info screen call from inside learning module
static now()
Return current timestamp in Y-m-d H:i:s format.
ilLMHead()
output lm header
refreshToc()
Refresh toc (called if questions have been answered correctly)
static _getAllReferences($a_id)
get all reference ids of object
ilLMSubMenu()
output learning module submenu
Base exception class for learning module presentation.
addHeaderAction($a_redraw=false)
Add header action.
getLMPresentationTitle()
Get lm presentationtitle.
Class ilLearningModuleGUI.
ilJavaScript($a_inline="", $a_file="", $a_location="")
Puts JS into template.
showTableOfContents()
table of contents
static lookupParentId($a_id, $a_type)
Lookup parent id.
Class ilLMPresentationGUI.
getFocusLink($a_ref_id, $a_obj_id, $a_return_ref_id)
Get focused link (used in learning objectives courses)
getSourcecodeDownloadLink()
getCurrentFrameSet()
get frames of current frame set
if(!is_dir( $entity_dir)) exit("Fatal Error ([A-Za-z0-9]+)\+" &#(? foreach( $entity_files as $file) $output
static _getInstance($a_usr_id)
Get singleton instance.
getLinkTargetsXML()
Get XMl for Link Targets.
static appendUrlParameterString($a_url, $a_par, $xml_style=false)
append URL parameter string ("par1=value1&par2=value2...") to given URL string
static addCss()
Add required css.
getExportFormat()
get export format
static _lookupActive($a_id, $a_parent_type, $a_check_scheduled_activation=false, $a_lang="-")
lookup activation status
buildTag($type, $name, $attr="")
generate a tag with given name and attributes
executeCommand()
execute command
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
showMessageScreen($a_content)
Show message screen.
showPreconditionsOfPage()
show preconditions of the page
setTitle($a_val)
Set title.
static _lookupObjId($a_id)
Extension of ilPageObjectGUI for learning modules.
special template class to simplify handling of ITX/PEAR
static getEffectiveContentStyleId($a_style_id, $a_type="")
Get effective Style Id.
static getInstance($a_tree_id)
Get Instance.
ilLMNavigation()
inserts sequential learning module navigation at template variable LMNAVIGATION_CONTENT ...
ilTOC($a_get_explorer=false)
table of contents
TableGUI class for lm download files.
static getInstance(&$a_content_obj, $a_id=0, $a_halt=true)
static formatDate(ilDateTime $date)
Format a date public.
processNodes(&$a_content, &$a_node)
offlineMode()
checks wether offline content generation is activated
GUI class for glossary terms.
downloadExportFile()
send download file (xml/html)
setExportFormat($a_format)
set export format
ilLocator($a_std_templ_loaded=false)
locator
getCurrentPageId()
Get the current page id.
Add a drawing to the header
static getExportId($a_lm_id, $a_lmobj_id, $a_type="pg")
Get export ID.
static getSyntaxStylePath()
get syntax style path
static resetRatingForUserAndObject($a_obj_id, $a_obj_type, $a_sub_obj_id, $a_sub_obj_type, $a_user_id)
Reset rating for a user and an object.
static _getTargetsOfSource($a_source_type, $a_source_id, $a_source_lang="-")
Get all targets of a source object (e.g., a page)
static deliverFile($a_file, $a_filename, $a_mime='', $isInline=false, $removeAfterDelivery=false, $a_exit_after=true)
deliver file for download via browser.
static lookupLayout($a_obj_id)
Lookup type.
showPrintViewSelection()
show selection screen for print view
basicPageGuiInit($a_page_gui)
Basic page gui initialisation.
getLMPage($a_id)
Get lm page object.
Create styles array
The data for the language used.
static _lookupType($a_id, $a_reference=false)
lookup object type
static getSupplyingExportFiles($a_target_dir=".")
Get supplying export files.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
attrib2arr($a_attributes)
nop()
this dummy function is needed for offline package creation
static _getMissingPreconditionsOfPage($cont_ref_id, $cont_obj_id, $page_id)
gets all missing preconditions of page
LM presentation (separate toc screen) explorer GUI class.
static getContentStylePath($a_style_id)
get content style path
showNoPageAccess()
Show info message, if page is not accessible in public area.
static getInstance($a_ref_id, $a_user_id=0)
Get instance.
getSuccessorPage()
Get successor page.
initScreenHead($a_active_tab="info")
static _lookupActivationData($a_id, $a_parent_type, $a_lang="-")
Lookup activation data.
showNoPublicAccess()
Show info message, if page is not accessible in public area.
enablePublicNotesDeletion($a_enable=true)
enable public notes
handleCodeParagraph($page_id, $paragraph_id, $title, $text)
store paragraph into file directory files/codefile_$pg_id_$paragraph_id/downloadtitle ...
static highlight($a_dom_node_id, $a_text, $a_tpl=null)
Searches for all occurences of a text (case-insensitive) and highlights it.
const LP_CONTEXT_REPOSITORY
Glossary definition page GUI class.
static getInstance($a_obj_id)
Get instance.
infoScreen()
this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually...
for($i=1; $i<=count($kw_cases_sel); $i+=1) $lang
Session based immediate storage.
static initjQuery($a_tpl=null)
Init jQuery.
setOfflineMode($a_offline=true, $a_all_languages=false)
set offline mode (content is generated for offline package)
static _getPresentationTitle($a_pg_id, $a_mode=IL_CHAPTER_TITLE, $a_include_numbers=false, $a_time_scheduled_activation=false, $a_force_content=false, $a_lm_id=0, $a_lang="-")
presentation title doesn't have to be page title, it may be chapter title + page title or chapter tit...
ilMainMenu()
output main menu
static getAttribute($a_func_id)
Get accesskey HTML attribute.
domxml_open_mem($str, $mode=0, &$error=NULL)
if(!file_exists("$old.txt")) if($old===$new) if(file_exists("$new.txt")) $file
layout($a_xml="main.xml", $doShow=true)
generates frame layout
static _isPagePublic($a_node_id, $a_check_public_mode=false)
ilLMNotes()
output notes of page
static getWebspaceDir($mode="filesystem")
get webspace directory
Class ilObjUserTrackingGUI.
static _lookGlossaryTerm($term_id)
get glossary term
showPrintView()
show print view
static _getLink($a_ref_id, $a_type='', $a_params=array(), $append="")
Class ilCommonActionDispatcherGUI.
Extension of ilPageObject for learning modules.
static _getLastAccessedPage($a_ref_id, $a_user_id="")
get last accessed page
setSubObject($a_sub_obj_type, $a_sub_obj_id)
Set sub object attributes.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
download_paragraph()
download source code paragraph
static getGotoForWikiPageTarget($a_target, $a_offline=false)
Get goto href for internal wiki page link target.
initPrintViewSelectionForm()
Init print view selection form.