ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
class.ilSCORM2004PageNodeGUI.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (c) 1998-2011 ILIAS open source, Extended GPL, see docs/LICENSE */
3 
4 require_once("./Modules/Scorm2004/classes/class.ilSCORM2004NodeGUI.php");
5 require_once("./Modules/Scorm2004/classes/class.ilSCORM2004PageNode.php");
6 
20 {
21 
26  public function __construct($a_slm_obj, $a_node_id = 0)
27  {
28  global $DIC;
29 
30  $this->ctrl = $DIC->ctrl();
31  $this->tpl = $DIC["tpl"];
32  $this->tabs = $DIC->tabs();
33  $this->lng = $DIC->language();
34  $ilCtrl = $DIC->ctrl();
35 
36  $ilCtrl->saveParameter($this, "obj_id");
37 
38  parent::__construct($a_slm_obj, $a_node_id);
39  }
40 
44  public function getType()
45  {
46  return "page";
47  }
48 
52  public function executeCommand()
53  {
55  $tpl = $this->tpl;
56 
57  $next_class = $ilCtrl->getNextClass($this);
58  $cmd = $ilCtrl->getCmd();
59 
60  switch ($next_class) {
61 
62  case "ilscorm2004pagegui":
63  $tpl->getStandardTemplate();
64  $this->setContentStyle();
65  $this->setLocator();
66  // Determine whether the view of a learning resource should
67  // be shown in the frameset of ilias, or in a separate window.
68  $showViewInFrameset = true;
69 
70  $ilCtrl->setReturn($this, "edit");
71  include_once("./Modules/Scorm2004/classes/class.ilSCORM2004PageGUI.php");
72  $page_gui = new ilSCORM2004PageGUI(
73  $this->slm_object->getType(),
74  $this->node_object->getId(),
75  0,
76  $this->getParentGUI()->object->getId(),
77  $this->slm_object->getAssignedGlossary()
78  );
79  $page_gui->setEditPreview(true);
80  $page_gui->setPresentationTitle($this->node_object->getTitle());
81  include_once("./Services/Style/Content/classes/class.ilObjStyleSheet.php");
82  $page_gui->setStyleId(ilObjStyleSheet::getEffectiveContentStyleId(
83  $this->slm_object->getStyleSheetId(),
84  "sahs"
85  ));
86 
87  if ($this->node_object->tree->getParentId($this->node_object->getId()) > 0) {
88  $sco = new ilSCORM2004Sco(
89  $this->node_object->getSLMObject(),
90  $this->node_object->tree->getParentId(
91  $this->node_object->getId()
92  )
93  );
94  if (count($sco->getGlossaryTermIds()) > 1) {
95  include_once("./Modules/Scorm2004/classes/class.ilSCORM2004ScoGUI.php");
96  $page_gui->setGlossaryOverviewInfo(
98  $sco
99  );
100  }
101  }
102 
103  $ilCtrl->setParameterByClass(
104  "ilobjscorm2004learningmodulegui",
105  "active_node",
106  $_GET["obj_id"]
107  );
108  $page_gui->setExplorerUpdater(
109  "tree",
110  "tree_div",
111  $ilCtrl->getLinkTargetByClass(
112  "ilobjscorm2004learningmodulegui",
113  "showTree",
114  "",
115  true
116  )
117  );
118  $ilCtrl->setParameterByClass(
119  "ilobjscorm2004learningmodulegui",
120  "active_node",
121  ""
122  );
123 
124  // set page view link
125  $view_frame = ilFrameTargetInfo::_getFrame("MainContent");
126  $page_gui->setLinkParams("ref_id=" . $this->slm_object->getRefId());
127  $tpl->setTitleIcon(ilUtil::getImagePath("icon_pg.svg"));
128 
129  $page_gui->activateMetaDataEditor(
130  $this->slm_object,
131  $this->node_object->getType(),
132  $this->node_object->getId(),
134  'MDUpdateListener'
135  );
136 
137  $ret = $ilCtrl->forwardCommand($page_gui);
138  $this->setTabs();
139  $tpl->setContent($ret);
140  break;
141 
142  default:
143  $ret = $this->$cmd();
144  break;
145  }
146 
147  return $ret;
148  }
149 
153  public function edit()
154  {
156 
157  $ilCtrl->setCmdClass("ilscorm2004pagegui");
158  $ilCtrl->setCmd("edit");
159  $this->executeCommand();
160  }
161 
165  public function setTabs()
166  {
167  $ilTabs = $this->tabs;
169  $tpl = $this->tpl;
170  $lng = $this->lng;
171 
172  // metadata
173  /* $ilTabs->addTarget("meta_data",
174  $ilCtrl->getLinkTargetByClass("ilmdeditorgui",''),
175  "", "ilmdeditorgui");*/
176 
177  $tpl->setTitleIcon(ilUtil::getImagePath("icon_pg.svg"));
178  $tpl->setTitle(
179  $lng->txt("sahs_page") . ": " . $this->node_object->getTitle()
180  );
181  }
182 }
Class ilSCORM2004Sco.
setEditPreview($a_editpreview)
Set Display first Edit tab, then Preview tab, instead of Page and Edit.
Class ilSCORM2004NodeGUI.
global $DIC
Definition: saml.php:7
$_GET["client_id"]
getParentGUI()
Get Parent GUI class (ilObjSCORM2004LearningModuleGUI).
setLocator()
Set Locator Items.
static getGlossaryOverviewId()
Get sco glossary overlay id.
__construct($a_slm_obj, $a_node_id=0)
Constructor public.
global $ilCtrl
Definition: ilias.php:18
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
static getEffectiveContentStyleId($a_style_id, $a_type="")
Get effective Style Id.
Class ilSCORM2004PageNodeGUI.
static _getFrame($a_class, $a_type='')
Get content frame name.
Class ilSCORM2004Page GUI class.
edit()
Edit -> switch to ilscorm2004pagegui.
$ret
Definition: parser.php:6
setContentStyle()
Set content style sheet.