4 include_once(
"./Modules/LearningModule/classes/class.ilLMExplorerGUI.php");
31 $this->lm_pres = $a_lm_pres;
32 $this->lm = $this->lm_pres->lm;
33 $exp_id = (!$this->
getOfflineMode() && $this->lm->getProgressIcons())
36 parent::__construct($a_parent_obj, $a_parent_cmd, $this->lm, $exp_id);
38 $this->lang = $a_lang;
43 if ($this->lm->getTOCMode() !=
"pages")
47 $this->focus_id = $a_focus_id;
55 $root_id = $this->
getTree()->readRootId();
56 if ($this->focus_id > 0 && $this->
getTree()->isInTree($this->focus_id) &&
61 return $this->
getTree()->getNodeData($root_id);
71 $this->tracker = $a_val;
91 $this->highlight_node = $a_val;
127 if ($a_node[
"type"] ==
"st")
130 $this->lm->isActiveNumbering(),
false, $this->lm->getId(),
$this->lang);
132 else if ($a_node[
"type"] ==
"pg")
135 $this->lm->getPageHeader(), $this->lm->isActiveNumbering(),
136 $this->lm_set->get(
"time_scheduled_page_activation"),
true, $this->lm->getId(),
$this->lang);
140 return $this->lm->getTitle();
143 if ($a_node[
"type"] ==
"pg")
146 $this->lm->getPageHeader(), $this->lm->isActiveNumbering(),
147 $this->lm_set->get(
"time_scheduled_page_activation"),
true, $this->lm->getId(),
$this->lang);
150 return $a_node[
"title"];
175 return $this->tracker->getIconForLMObject($a_node, $this->highlight_node);
178 include_once(
"./Modules/LearningModule/classes/class.ilLMObject.php");
180 if ($a_node[
"type"] ==
"du")
182 $a_node[
"type"] =
"lm";
184 $a_name =
"icon_".$a_node[
"type"].
".svg";
185 if ($a_node[
"type"] ==
"pg")
187 include_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
190 $lm_set->get(
"time_scheduled_page_activation"));
193 $img_sc = (
$lm_set->get(
"time_scheduled_page_activation") &&
199 $a_name =
"icon_pg".$img_sc.
".svg";
203 $a_name =
"icon_pg_d".$img_sc.
".svg";
220 $orig_node_id = $a_node[
"child"];
226 if ($this->lm->getRestrictForwardNavigation())
228 if ($this->
getTracker()->hasPredIncorrectAnswers($orig_node_id))
235 if ($a_node[
"type"] ==
"st")
239 if ($this->lm->getTOCMode() !=
"pages")
241 $a_node = $this->
getTree()->fetchSuccessorNode($a_node[
"child"],
"pg");
248 if ($a_node[
"child"] == 0)
259 if ($this->lm->getTOCMode() !=
"pages")
261 $a_node = $this->
getTree()->fetchSuccessorNode($a_node[
"child"],
"pg");
267 include_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
269 $this->lm_set->get(
"time_scheduled_page_activation"));
271 if ($a_node[
"child"] > 0 && !$active)
280 if ($a_node[
"child"] <= 0)
287 if (!in_array($orig_node_id,
$path))
295 if ($a_node[
"type"] ==
"pg")
298 include_once(
"./Modules/LearningModule/classes/class.ilLMObject.php");
299 include_once
'Services/Payment/classes/class.ilPaymentObject.php';
300 if (($ilUser->getId() == ANONYMOUS_USER_ID ||
333 return $this->lm_pres->getLink($this->lm->getRefId(),
"", $a_node[
"child"]);
338 if ($a_node[
"type"] !=
"pg")
344 $a_node = $this->
getTree()->fetchSuccessorNode($a_node[
"child"],
"pg");
345 include_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
347 $this->lm_set->get(
"time_scheduled_page_activation"));
349 if ($a_node[
"child"] > 0 && !$active)
359 include_once(
"./Modules/LearningModule/classes/class.ilLMPageObject.php");
362 return "lm_pg_".$nid.
".html";
364 return "lm_pg_".$a_node[
"child"].
".html";
377 include_once(
"./Modules/LearningModule/classes/class.ilLMTracker.php");
getSuccessorNode($a_node_id, $a_type="")
Get successor node (currently only(!) based on lft/rgt tree values)
isNodeHighlighted($a_node)
Is node highlighted?
LM presentation (left frame) explorer GUI class.
__construct($a_parent_obj, $a_parent_cmd, ilLMPresentationGUI $a_lm_pres, $a_lang="-", $a_focus_id=0)
Constructor.
static _lookupType($a_obj_id, $a_lm_id=0)
Lookup type.
static _getPresentationTitle($a_st_id, $a_include_numbers=false, $a_time_scheduled_activation=false, $a_lm_id=0, $a_lang="-")
get presentation title
isNodeVisible($a_node)
Is node visible?
static _requiresPurchaseToAccess($a_ref_id, $a_purchasetype='')
this function should be used by all buyable repository objects !!
getRootNode()
Get root node.
setTracker($a_val)
Set tracker.
getHighlightNode()
Get highlighted node.
setSecondaryHighlightedNodes($a_val)
Set secondary (background) highlighted nodes.
setTypeWhiteList($a_val)
Set type white list.
setHighlightNode($a_val)
Set highlighted node.
Class ilLMPresentationGUI.
checkLPIcon($a_id)
Check learning progress icon.
static _lookupActive($a_id, $a_parent_type, $a_check_scheduled_activation=false, $a_lang="-")
lookup activation status
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
getNodeHref($a_node)
Get href for node.
LM editor explorer GUI class.
static getExportId($a_lm_id, $a_lmobj_id, $a_type="pg")
Get export ID.
getNodeId($a_node)
Get id for node.
getOfflineMode()
Get offline mode.
static _isScheduledActivation($a_id, $a_parent_type, $a_lang="-")
Check whether page is activated by time schedule.
isNodeClickable($a_node)
Is node clickable.
getNodeIcon($a_node)
Get node icon.
getNodeIconAlt($a_node)
Get node icon alt text.
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...
static _isNodeVisible($a_node)
Is node visible for the learner.
static _isPagePublic($a_node_id, $a_check_public_mode=false)
getNodeContent($a_node)
Get node content.