ILIAS  release_5-0 Revision 5.0.0-1144-gc4397b1f870
ilHelpGUI Class Reference

Help GUI class. More...

+ Collaboration diagram for ilHelpGUI:

Public Member Functions

 ilHelpGUI ()
 constructor More...
 
 setDefaultScreenId ($a_part, $a_id)
 Set default screen id. More...
 
 setScreenId ($a_id)
 Set screen id. More...
 
 setSubScreenId ($a_id)
 Set sub screen id. More...
 
 setScreenIdComponent ($a_comp)
 Set screen id component. More...
 
 getScreenId ()
 Get screen id. More...
 
 addHelpSection ($a_help_id, $a_level=1)
 Add help section. More...
 
 hasSections ()
 Has sections? More...
 
 getHelpSections ()
 Get help sections. More...
 
 setCtrlPar ()
 Get help section url parameter. More...
 
 executeCommand ()
 execute command More...
 
 showHelp ()
 Show online help. More...
 
 showPage ()
 Show page. More...
 
 resetCurrentPage ()
 Hide help. More...
 
 getTabTooltipText ($a_tab_id)
 Get tab tooltip text. More...
 
 initHelp ($a_tpl)
 Render current help page. More...
 
 deactivateTooltips ()
 Deactivate tooltips. More...
 
 activateTooltips ()
 Activate tooltips. More...
 
 getLinkXML ($a_int_links)
 get xml for links More...
 
 getLinkTargetsXML ()
 Get XMl for Link Targets. More...
 

Data Fields

 $help_sections = array()
 
const ID_PART_SCREEN = "screen"
 
const ID_PART_SUB_SCREEN = "sub_screen"
 
const ID_PART_COMPONENT = "component"
 
 $def_screen_id = array()
 
 $screen_id = array()
 

Detailed Description

Help GUI class.

Author
Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e
Version
$Id$

@ilCtrl_Calls ilHelpGUI: ilLMPageGUI

Definition at line 16 of file class.ilHelpGUI.php.

Member Function Documentation

◆ activateTooltips()

ilHelpGUI::activateTooltips ( )

Activate tooltips.

Parameters

return

Definition at line 403 of file class.ilHelpGUI.php.

404 {
405 global $ilUser;
406
407 $ilUser->writePref("hide_help_tt", "0");
408 }
global $ilUser
Definition: imgupload.php:15

References $ilUser.

◆ addHelpSection()

ilHelpGUI::addHelpSection (   $a_help_id,
  $a_level = 1 
)

Add help section.

Parameters

return

Definition at line 117 of file class.ilHelpGUI.php.

118 {
119 $this->help_sections[] = array("help_id" => $a_help_id, $a_level);
120 }

◆ deactivateTooltips()

ilHelpGUI::deactivateTooltips ( )

Deactivate tooltips.

Parameters

return

Definition at line 390 of file class.ilHelpGUI.php.

391 {
392 global $ilUser;
393
394 $ilUser->writePref("hide_help_tt", "1");
395 }

References $ilUser.

◆ executeCommand()

ilHelpGUI::executeCommand ( )

execute command

Definition at line 171 of file class.ilHelpGUI.php.

172 {
173 $cmd = $this->ctrl->getCmd("showHelp");
174 $next_class = $this->ctrl->getNextClass($this);
175
176 switch($next_class)
177 {
178 default:
179 return $this->$cmd();
180 break;
181 }
182 }
$cmd
Definition: sahs_server.php:35

References $cmd.

◆ getHelpSections()

ilHelpGUI::getHelpSections ( )

Get help sections.

Parameters

return

Definition at line 142 of file class.ilHelpGUI.php.

143 {
144 include_once("./Services/Help/classes/class.ilHelpMapping.php");
145 return ilHelpMapping::getHelpSectionsForId($this->getScreenId(), (int) $_GET["ref_id"]);
146 }
$_GET["client_id"]
getScreenId()
Get screen id.
static getHelpSectionsForId($a_screen_id, $a_ref_id)
Get help sections for screen id.

References $_GET, ilHelpMapping\getHelpSectionsForId(), and getScreenId().

+ Here is the call graph for this function:

◆ getLinkTargetsXML()

ilHelpGUI::getLinkTargetsXML ( )

Get XMl for Link Targets.

Definition at line 464 of file class.ilHelpGUI.php.

465 {
466 $link_info = "<LinkTargets>";
467 $link_info.="<LinkTarget TargetFrame=\"None\" LinkTarget=\"\" OnClick=\"return il.Help.openLink(event);\" />";
468 $link_info.= "</LinkTargets>";
469 return $link_info;
470 }

Referenced by showPage().

+ Here is the caller graph for this function:

◆ getLinkXML()

ilHelpGUI::getLinkXML (   $a_int_links)

get xml for links

Definition at line 413 of file class.ilHelpGUI.php.

414 {
415 global $ilCtrl;
416
417 $link_info = "<IntLinkInfos>";
418 foreach ($a_int_links as $int_link)
419 {
420 $target = $int_link["Target"];
421 if (substr($target, 0, 4) == "il__")
422 {
423 $target_arr = explode("_", $target);
424 $target_id = $target_arr[count($target_arr) - 1];
425 $type = $int_link["Type"];
426 $targetframe = "None";
427
428 // anchor
429 $anc = $anc_add = "";
430 if ($int_link["Anchor"] != "")
431 {
432 $anc = $int_link["Anchor"];
433 $anc_add = "_".rawurlencode($int_link["Anchor"]);
434 }
435
436 switch($type)
437 {
438 case "PageObject":
439 case "StructureObject":
440 if ($type == "PageObject")
441 {
442 $href = "#pg_".$target_id;
443 }
444 else
445 {
446 $href = "#";
447 }
448 break;
449
450 }
451
452 $link_info.="<IntLinkInfo Target=\"$target\" Type=\"$type\" ".
453 "TargetFrame=\"$targetframe\" LinkHref=\"$href\" LinkTarget=\"\" Anchor=\"\"/>";
454 }
455 }
456 $link_info.= "</IntLinkInfos>";
457
458 return $link_info;
459 }
$target_id
Definition: goto.php:88
$target_arr
Definition: goto.php:86
global $ilCtrl
Definition: ilias.php:18

References $ilCtrl, $target_arr, and $target_id.

Referenced by showPage().

+ Here is the caller graph for this function:

◆ getScreenId()

ilHelpGUI::getScreenId ( )

Get screen id.

Parameters

return

Definition at line 84 of file class.ilHelpGUI.php.

85 {
86 $comp = ($this->screen_id_component != "")
87 ? $this->screen_id_component
88 : $this->def_screen_id[self::ID_PART_COMPONENT];
89
90 if ($comp == "")
91 {
92 return "";
93 }
94
95 $scr_id = ($this->screen_id[self::ID_PART_SCREEN] != "")
96 ? $this->screen_id[self::ID_PART_SCREEN]
97 : $this->def_screen_id[self::ID_PART_SCREEN];
98
99 $sub_scr_id = ($this->screen_id[self::ID_PART_SUB_SCREEN] != "")
100 ? $this->screen_id[self::ID_PART_SUB_SCREEN]
101 : $this->def_screen_id[self::ID_PART_SUB_SCREEN];
102
103 $screen_id = $comp."/".
104 $scr_id."/".
105 $sub_scr_id;
106
107 return $screen_id;
108 }
const ID_PART_SCREEN
const ID_PART_SUB_SCREEN

References $screen_id, ID_PART_SCREEN, and ID_PART_SUB_SCREEN.

Referenced by getHelpSections(), hasSections(), and setCtrlPar().

+ Here is the caller graph for this function:

◆ getTabTooltipText()

ilHelpGUI::getTabTooltipText (   $a_tab_id)

Get tab tooltip text.

Parameters
string$a_tab_idtab id
Returns
string tooltip text

Definition at line 346 of file class.ilHelpGUI.php.

347 {
348 global $lng;
349
350 include_once("./Services/Help/classes/class.ilHelp.php");
351 if ($this->screen_id_component != "")
352 {
353 return ilHelp::getTooltipPresentationText($this->screen_id_component."_".$a_tab_id);
354 //return $lng->txt("help_tt_".$this->screen_id_component."_".$a_tab_id);
355 }
356 return "";
357 }
static getTooltipPresentationText($a_tt_id)
Get tooltip for id.
global $lng
Definition: privfeed.php:40

References $lng, and ilHelp\getTooltipPresentationText().

+ Here is the call graph for this function:

◆ hasSections()

ilHelpGUI::hasSections ( )

Has sections?

Parameters

return

Definition at line 128 of file class.ilHelpGUI.php.

129 {
130 global $ilSetting;
131
132 include_once("./Services/Help/classes/class.ilHelpMapping.php");
134 }
hasScreenIdSections($a_screen_id)
Has given screen Id any sections?
global $ilSetting
Definition: privfeed.php:40

References $ilSetting, getScreenId(), and ilHelpMapping\hasScreenIdSections().

+ Here is the call graph for this function:

◆ ilHelpGUI()

ilHelpGUI::ilHelpGUI ( )

constructor

Definition at line 28 of file class.ilHelpGUI.php.

29 {
30 global $ilCtrl;
31
32 $this->ctrl =& $ilCtrl;
33 }

References $ilCtrl.

◆ initHelp()

ilHelpGUI::initHelp (   $a_tpl)

Render current help page.

Parameters

return

Definition at line 365 of file class.ilHelpGUI.php.

366 {
367 global $ilUser, $ilSetting;
368
369 $module_id = (int) $ilSetting->get("help_module");
370
371 if ((OH_REF_ID > 0 || $module_id > 0) && $ilUser->getLanguage() == "de")
372 {
373 if (ilSession::get("help_pg") > 0)
374 {
375 $a_tpl->addOnLoadCode("il.Help.showCurrentPage(".ilSession::get("help_pg").");", 3);
376 }
377 if ($ilUser->getPref("hide_help_tt"))
378 {
379 $a_tpl->addOnLoadCode("if (il && il.Help) il.Help.switchTooltips();", 3);
380 }
381 }
382 }
static get($a_var)
Get a value.

References $ilSetting, $ilUser, and ilSession\get().

Referenced by ilTemplate\initHelp().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ resetCurrentPage()

ilHelpGUI::resetCurrentPage ( )

Hide help.

Parameters

return

Definition at line 334 of file class.ilHelpGUI.php.

335 {
336 ilSession::clear("help_pg");
337 }
static clear($a_var)
Unset a value.

References ilSession\clear().

Referenced by showHelp().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setCtrlPar()

ilHelpGUI::setCtrlPar ( )

Get help section url parameter.

Parameters

return

Definition at line 154 of file class.ilHelpGUI.php.

155 {
156 global $ilCtrl;
157
158 /*$h_ids = $sep = "";
159 foreach ($this->getHelpSections() as $hs)
160 {
161 $h_ids.= $sep.$hs;
162 $sep = ",";
163 }*/
164 $ilCtrl->setParameterByClass("ilhelpgui", "help_screen_id", $this->getScreenId().".".$_GET["ref_id"]);
165 }

References $_GET, $ilCtrl, and getScreenId().

+ Here is the call graph for this function:

◆ setDefaultScreenId()

ilHelpGUI::setDefaultScreenId (   $a_part,
  $a_id 
)

Set default screen id.

Parameters

return

Definition at line 41 of file class.ilHelpGUI.php.

42 {
43 $this->def_screen_id[$a_part] = $a_id;
44 }

◆ setScreenId()

ilHelpGUI::setScreenId (   $a_id)

Set screen id.

Parameters

Definition at line 51 of file class.ilHelpGUI.php.

52 {
53 $this->screen_id[self::ID_PART_SCREEN] = $a_id;
54 }

References ID_PART_SCREEN.

◆ setScreenIdComponent()

ilHelpGUI::setScreenIdComponent (   $a_comp)

Set screen id component.

Parameters

return

Definition at line 72 of file class.ilHelpGUI.php.

73 {
74 $this->screen_id_component = $a_comp;
75 }

◆ setSubScreenId()

ilHelpGUI::setSubScreenId (   $a_id)

Set sub screen id.

Parameters

Definition at line 61 of file class.ilHelpGUI.php.

62 {
63 $this->screen_id[self::ID_PART_SUB_SCREEN] = $a_id;
64 }

References ID_PART_SUB_SCREEN.

◆ showHelp()

ilHelpGUI::showHelp ( )

Show online help.

Definition at line 187 of file class.ilHelpGUI.php.

188 {
189 global $ilHelp, $lng, $ilSetting;
190
191 if ($_GET["help_screen_id"] != "")
192 {
193 ilSession::set("help_screen_id", $_GET["help_screen_id"]);
194 $help_screen_id = $_GET["help_screen_id"];
195 }
196 else
197 {
198 $help_screen_id = ilSession::get("help_screen_id");
199 }
200
201 $this->resetCurrentPage();
202
203 $id_arr = explode(".", $help_screen_id);
204 include_once("./Services/Help/classes/class.ilHelpMapping.php");
205 $help_arr = ilHelpMapping::getHelpSectionsForId($id_arr[0], $id_arr[1]);
206
207 $hm = (int) $ilSetting->get("help_module");
208
209 if ((OH_REF_ID > 0 || $hm > 0) && count($help_arr) > 0)
210 {
211 if (OH_REF_ID > 0)
212 {
213 $oh_lm_id = ilObject::_lookupObjId(OH_REF_ID);
214 }
215 else
216 {
217 include_once("./Services/Help/classes/class.ilObjHelpSettings.php");
219 }
220
221 include_once("./Services/Accordion/classes/class.ilAccordionGUI.php");
222 $acc = new ilAccordionGUI();
223 $acc->setId("oh_acc_".$h_id);
224 $acc->setUseSessionStorage(true);
225 $acc->setBehaviour(ilAccordionGUI::FIRST_OPEN);
226
227 foreach ($help_arr as $h_id)
228 {
229 include_once("./Modules/LearningModule/classes/class.ilLMObject.php");
230 $st_id = $h_id;
231
232 if (!ilLMObject::_exists($st_id))
233 {
234 continue;
235 }
236
237 $pages = ilLMObject::getPagesOfChapter($oh_lm_id, $st_id);
238 include_once("./Services/UIComponent/GroupedList/classes/class.ilGroupedListGUI.php");
239 $grp_list = new ilGroupedListGUI();
240 foreach ($pages as $pg)
241 {
242 $grp_list->addEntry(ilLMObject::_lookupTitle($pg["child"]), "#", "",
243 "return il.Help.showPage(".$pg["child"].");");
244 }
245
246 $acc->addItem(ilLMObject::_lookupTitle($st_id), $grp_list->getHTML());
247 }
248 $h_tpl = new ilTemplate("tpl.help.html", true, true, "Services/Help");
249 $h_tpl->setVariable("HEAD", $lng->txt("help"));
250 $h_tpl->setVariable("CONTENT", $acc->getHTML());
251 include_once("./Services/UIComponent/Glyph/classes/class.ilGlyphGUI.php");
252 $h_tpl->setVariable("CLOSE_IMG", ilGlyphGUI::get(ilGlyphGUI::CLOSE));
253 echo $h_tpl->get();
254 }
255 exit;
256 }
Accordion user interface class.
static get($a_glyph, $a_text="")
Get glyph html.
Grouped list GUI class.
resetCurrentPage()
Hide help.
_exists($a_id)
checks wether a lm content object with specified id exists or not
static getPagesOfChapter($a_lm_id, $a_chap_id)
Get pages of chapter.
static _lookupTitle($a_obj_id)
Lookup title.
lookupModuleLmId($a_id)
lookup module lm id
static _lookupObjId($a_id)
static set($a_var, $a_val)
Set a value.
special template class to simplify handling of ITX/PEAR
exit
Definition: login.php:54

References $_GET, $ilSetting, $lng, ilLMObject\_exists(), ilObject\_lookupObjId(), ilLMObject\_lookupTitle(), ilGlyphGUI\CLOSE, exit, ilAccordionGUI\FIRST_OPEN, ilGlyphGUI\get(), ilSession\get(), ilHelpMapping\getHelpSectionsForId(), ilLMObject\getPagesOfChapter(), ilObjHelpSettings\lookupModuleLmId(), resetCurrentPage(), and ilSession\set().

+ Here is the call graph for this function:

◆ showPage()

ilHelpGUI::showPage ( )

Show page.

Parameters

return

Definition at line 264 of file class.ilHelpGUI.php.

265 {
266 global $lng;
267
268 $page_id = (int) $_GET["help_page"];
269
270 $h_tpl = new ilTemplate("tpl.help.html", true, true, "Services/Help");
271 include_once("./Modules/LearningModule/classes/class.ilLMObject.php");
272
273 $h_tpl->setCurrentBlock("backlink");
274 $h_tpl->setVariable("TXT_BACK", $lng->txt("back"));
275 $h_tpl->setVariable("ONCLICK_BACK",
276 "return il.Help.listHelp(event, true);");
277 $h_tpl->parseCurrentBlock();
278
279
280 $h_tpl->setVariable("HEAD", $lng->txt("help")." - ".
281 ilLMObject::_lookupTitle($page_id));
282
283 include_once("./Services/COPage/classes/class.ilPageUtil.php");
284 if (!ilPageUtil::_existsAndNotEmpty("lm", $page_id))
285 {
286 exit;
287 }
288 include_once("./Services/COPage/classes/class.ilPageObject.php");
289 include_once("./Services/COPage/classes/class.ilPageObjectGUI.php");
290
291 // get page object
292 include_once("./Modules/LearningModule/classes/class.ilObjContentObject.php");
293 include_once("./Modules/LearningModule/classes/class.ilLMPageGUI.php");
294 $page_gui = new ilLMPageGUI($page_id);
295 $cfg = $page_gui->getPageConfig();
296 $page_gui->setPresentationTitle("");
297 $page_gui->setTemplateOutput(false);
298 $page_gui->setHeader("");
299 $page_gui->setRawPageContent(true);
300 $cfg->setEnablePCType("Map", false);
301 $cfg->setEnablePCType("Tabs", false);
302 $cfg->setEnablePCType("FileList", false);
303
304 $page_gui->getPageObject()->buildDom();
305 $int_links = $page_gui->getPageObject()->getInternalLinks();
306 $link_xml = $this->getLinkXML($int_links);
307 $link_xml.= $this->getLinkTargetsXML();
308//echo htmlentities($link_xml);
309 $page_gui->setLinkXML($link_xml);
310
311 $ret = $page_gui->showPage();
312
313 $h_tpl->setVariable("CONTENT", $ret);
314 include_once("./Services/UIComponent/Glyph/classes/class.ilGlyphGUI.php");
315 $h_tpl->setVariable("CLOSE_IMG", ilGlyphGUI::get(ilGlyphGUI::CLOSE));
316
317 ilSession::set("help_pg", $page_id);
318
319 $page = $h_tpl->get();
320
321 // replace style classes
322 //$page = str_replace("ilc_text_inline_Strong", "ilHelpStrong", $page);
323
324 echo $page;
325 exit;
326 }
getLinkXML($a_int_links)
get xml for links
getLinkTargetsXML()
Get XMl for Link Targets.
Extension of ilPageObjectGUI for learning modules.
_existsAndNotEmpty($a_parent_type, $a_id, $a_lang="-")
checks whether page exists and is not empty (may return true on some empty pages)

References $_GET, $lng, $ret, ilPageUtil\_existsAndNotEmpty(), ilLMObject\_lookupTitle(), ilGlyphGUI\CLOSE, exit, ilGlyphGUI\get(), getLinkTargetsXML(), getLinkXML(), and ilSession\set().

+ Here is the call graph for this function:

Field Documentation

◆ $def_screen_id

ilHelpGUI::$def_screen_id = array()

Definition at line 22 of file class.ilHelpGUI.php.

◆ $help_sections

ilHelpGUI::$help_sections = array()

Definition at line 18 of file class.ilHelpGUI.php.

◆ $screen_id

ilHelpGUI::$screen_id = array()

Definition at line 23 of file class.ilHelpGUI.php.

Referenced by getScreenId().

◆ ID_PART_COMPONENT

const ilHelpGUI::ID_PART_COMPONENT = "component"

Definition at line 21 of file class.ilHelpGUI.php.

◆ ID_PART_SCREEN

◆ ID_PART_SUB_SCREEN

const ilHelpGUI::ID_PART_SUB_SCREEN = "sub_screen"

Definition at line 20 of file class.ilHelpGUI.php.

Referenced by ilTabsGUI\__getHTML(), getScreenId(), and setSubScreenId().


The documentation for this class was generated from the following file: