54 string $a_default_link_type,
55 int $a_default_parent_id,
59 $this->tree =
$DIC->repositoryTree();
60 $this->
lng = $DIC->language();
61 $this->
ctrl = $DIC->ctrl();
62 $this->
user = $DIC->user();
69 $this->
lng->loadLanguageModule(
"link");
70 $this->
lng->loadLanguageModule(
"content");
71 $this->
ctrl->saveParameter($this, array(
"linkmode",
"link_par_ref_id",
"link_par_obj_id",
72 "link_par_fold_id",
"link_type"));
75 $this->default_link_type = $a_default_link_type;
77 $this->default_parent_ref_id = $a_default_parent_id;
80 $this->default_parent_ref_id = 0;
81 $this->default_parent_obj_id = $a_default_parent_id;
83 $this->default_parent_obj_type = ($this->default_parent_obj_id > 0)
88 $this->parent_ref_id = $this->request->getLinkParentRefId();
89 $this->parent_fold_id = $this->request->getLinkParentFolderId();
90 if ($this->parent_ref_id > 0) {
93 $this->parent_obj_id = $this->request->getLinkParentObjId();
97 public function init(): void
103 if ($this->parent_ref_id > 0 && !
$tree->
isInTree($this->parent_ref_id)) {
107 $this->parent_type = array(
108 "StructureObject" =>
"lm",
109 "PageObject" =>
"lm",
110 "GlossaryItem" =>
"glo",
112 "WikiPage" =>
"wiki",
113 "PortfolioPage" =>
"prtf",
114 "PortfolioTemplatePage" =>
"prtt",
116 "RepositoryItem" =>
"",
121 $this->ltypes = array(
122 "StructureObject" =>
$lng->
txt(
"cont_lk_chapter"),
123 "StructureObject_New" =>
$lng->
txt(
"cont_lk_chapter_new"),
124 "PageObject" =>
$lng->
txt(
"cont_lk_page"),
125 "PageObject_FAQ" =>
$lng->
txt(
"cont_lk_page_faq"),
126 "PageObject_New" =>
$lng->
txt(
"cont_lk_page_new"),
127 "GlossaryItem" =>
$lng->
txt(
"cont_lk_term"),
128 "GlossaryItem_New" =>
$lng->
txt(
"cont_lk_term_new"),
129 "Media" =>
$lng->
txt(
"cont_lk_media_inline"),
130 "Media_Media" =>
$lng->
txt(
"cont_lk_media_media"),
131 "Media_FAQ" =>
$lng->
txt(
"cont_lk_media_faq"),
132 "Media_New" =>
$lng->
txt(
"cont_lk_media_new"),
133 "WikiPage" =>
$lng->
txt(
"cont_wiki_page"),
134 "PortfolioPage" =>
$lng->
txt(
"cont_prtf_page"),
135 "PortfolioTemplatePage" =>
$lng->
txt(
"cont_prtt_page"),
136 "File" =>
$lng->
txt(
"cont_lk_file"),
137 "RepositoryItem" =>
$lng->
txt(
"cont_repository_item"),
138 "User" =>
$lng->
txt(
"cont_user")
140 if (!$this->filter_white_list) {
141 foreach ($this->filter_link_types as
$link_type) {
146 foreach ($this->ltypes as $k => $l) {
147 if (in_array($k, $this->filter_link_types,
true)) {
154 $this->link_type = ($this->request->getLinkType() ===
"")
155 ? $this->default_link_type
156 : $this->request->getLinkType();
157 $ltype_arr = explode(
"_", $this->link_type);
158 $this->base_link_type = $ltype_arr[0];
159 $this->link_target = $ltype_arr[1] ??
"";
165 switch ($this->base_link_type) {
167 case "StructureObject":
171 case "PortfolioPage":
172 case "PortfolioTemplatePage":
173 if ($this->parent_ref_id === 0 && $this->parent_obj_id === 0
174 && $def_type === ($this->parent_type[$this->base_link_type] ??
"")) {
186 $this->set_link_script = $a_script;
191 $this->
return = $a_return;
201 $this->filter_link_types[] = $a_link_type;
209 $this->filter_white_list = $a_white_list;
216 $next_class = $this->
ctrl->getNextClass($this);
218 $cmd = $this->
ctrl->getCmd(
"showLinkHelp");
219 switch ($next_class) {
221 $ret = $this->$cmd();
225 return (
string) $ret;
242 if ($this->
return ===
"") {
243 $this->
ctrl->returnToParent($this);
254 return htmlspecialchars($str, ENT_QUOTES);
268 if ((in_array($this->base_link_type, array(
"GlossaryItem",
"WikiPage",
"PageObject",
"StructureObject"),
true) &&
269 ($this->parent_ref_id === 0))
271 (($this->parent_ref_id > 0) &&
277 if ($ilCtrl->isAsynch()) {
279 $tpl->setVariable(
"NEW_LINK_URL", $this->
ctrl->getLinkTarget(
291 $tpl->setVariable(
"FORMACTION", $this->
ctrl->getFormAction($this,
"changeLinkType",
"",
true));
292 $tpl->setVariable(
"FORMACTION2", $this->
ctrl->getFormAction($this));
293 $tpl->setVariable(
"TXT_HELP_HEADER", $this->
lng->txt(
"cont_link_select"));
294 $tpl->setVariable(
"TXT_TYPE", $this->
lng->txt(
"cont_link_type"));
305 array(
"id" =>
"ilIntLinkTypeSelector")
307 $tpl->setVariable(
"SELECT_TYPE", $select_ltype);
308 $tpl->setVariable(
"CMD_CHANGETYPE",
"changeLinkType");
309 $tpl->setVariable(
"BTN_CHANGETYPE", $this->
lng->txt(
"cont_change_type"));
311 $tpl->setVariable(
"CMD_CLOSE",
"closeLinkHelp");
312 $tpl->setVariable(
"BTN_CLOSE", $this->
lng->txt(
"close"));
314 $chapterRowBlock =
"chapter_row_js";
317 switch ($this->base_link_type) {
323 $ctree = $cont_obj->getLMTree();
324 $nodes = $ctree->getSubTree($ctree->getNodeData($ctree->getRootId()));
325 $tpl->setCurrentBlock(
"chapter_list");
326 $tpl->setVariable(
"TXT_CONTENT_OBJECT", $this->
lng->txt(
"obj_lm"));
327 $tpl->setVariable(
"TXT_CONT_TITLE", $cont_obj->getTitle());
328 $tpl->setVariable(
"THEAD", $this->
lng->txt(
"pages"));
331 $tpl->setCurrentBlock(
"change_cont_obj");
332 $tpl->setVariable(
"CMD_CHANGE_CONT_OBJ",
"changeTargetObject");
333 $tpl->setVariable(
"BTN_CHANGE_CONT_OBJ", $this->
lng->txt(
"change"));
334 $tpl->parseCurrentBlock();
336 foreach ($nodes as $node) {
337 if ($node[
"type"] ===
"st") {
338 $tpl->setCurrentBlock(
"header_row");
339 $tpl->setVariable(
"TXT_HEADER", $node[
"title"]);
340 $tpl->parseCurrentBlock();
341 $tpl->setCurrentBlock(
"row");
342 $tpl->parseCurrentBlock();
345 if ($node[
"type"] ===
"pg") {
360 $free_pages = array();
361 foreach ($pages as $page) {
362 if (!$ctree->isInTree($page[
"obj_id"])) {
363 $free_pages[] = $page;
366 if (count($free_pages) > 0) {
367 $tpl->setCurrentBlock(
"header_row");
368 $tpl->setVariable(
"TXT_HEADER", $this->
lng->txt(
"cont_free_pages"));
369 $tpl->parseCurrentBlock();
371 foreach ($free_pages as $node) {
384 $tpl->setCurrentBlock(
"chapter_list");
385 $tpl->parseCurrentBlock();
390 case "StructureObject":
400 $ctree = $cont_obj->getLMTree();
401 $nodes = $ctree->getSubTree($ctree->getNodeData($ctree->getRootId()));
402 $tpl->setCurrentBlock(
"chapter_list");
403 $tpl->setVariable(
"TXT_CONTENT_OBJECT", $this->
lng->txt(
"obj_lm"));
404 $tpl->setVariable(
"TXT_CONT_TITLE", $cont_obj->getTitle());
405 $tpl->setVariable(
"THEAD", $this->
lng->txt(
"link_chapters"));
406 $tpl->setCurrentBlock(
"change_cont_obj");
407 $tpl->setVariable(
"CMD_CHANGE_CONT_OBJ",
"changeTargetObject");
408 $tpl->setVariable(
"BTN_CHANGE_CONT_OBJ", $this->
lng->txt(
"change"));
409 $tpl->parseCurrentBlock();
411 foreach ($nodes as $node) {
412 if ($node[
"type"] ===
"st") {
423 $tpl->setCurrentBlock(
"chapter_list");
424 $tpl->parseCurrentBlock();
432 $terms = $glossary->getTermList();
433 $tpl->setCurrentBlock(
"chapter_list");
434 $tpl->setVariable(
"TXT_CONTENT_OBJECT", $this->
lng->txt(
"glossary"));
435 $tpl->setVariable(
"TXT_CONT_TITLE", $glossary->getTitle());
436 $tpl->setVariable(
"THEAD", $this->
lng->txt(
"link_terms"));
437 $tpl->setCurrentBlock(
"change_cont_obj");
438 $tpl->setVariable(
"CMD_CHANGE_CONT_OBJ",
"changeTargetObject");
439 $tpl->setVariable(
"BTN_CHANGE_CONT_OBJ", $this->
lng->txt(
"change"));
440 $tpl->parseCurrentBlock();
442 foreach ($terms as $term) {
453 $tpl->setCurrentBlock(
"chapter_list");
454 $tpl->parseCurrentBlock();
461 if ($this->parent_ref_id === 0) {
462 $tpl->setCurrentBlock(
"change_cont_obj");
463 $tpl->setVariable(
"CMD_CHANGE_CONT_OBJ",
"changeTargetObject");
464 $tpl->setVariable(
"BTN_CHANGE_CONT_OBJ", $this->
lng->txt(
"change"));
465 $tpl->parseCurrentBlock();
466 $mobjs =
$ilUser->getClipboardObjects(
"mob");
469 foreach ($mobjs as $obj) {
470 $objs[$obj[
"title"] .
":" . $obj[
"id"]] = $obj;
473 $tpl->setCurrentBlock(
"chapter_list");
474 $tpl->setVariable(
"TXT_CONTENT_OBJECT", $this->
lng->txt(
"cont_media_source"));
475 $tpl->setVariable(
"TXT_CONT_TITLE", $this->
lng->txt(
"cont_personal_clipboard"));
476 $tpl->setVariable(
"THEAD", $this->
lng->txt(
"link_mobs"));
477 $tpl->setVariable(
"COLSPAN",
"2");
479 foreach ($objs as $obj) {
492 $fobjs = $med_pool->getChilds($this->parent_fold_id,
"fold");
494 foreach ($fobjs as $obj) {
495 $f2objs[$obj[
"title"] .
":" . $obj[
"child"]] = $obj;
499 $mobjs = $med_pool->getChilds($this->parent_fold_id,
"mob");
501 foreach ($mobjs as $obj) {
502 $m2objs[$obj[
"title"] .
":" . $obj[
"child"]] = $obj;
507 $objs = array_merge($f2objs, $m2objs);
509 $tpl->setCurrentBlock(
"chapter_list");
510 $tpl->setVariable(
"TXT_CONTENT_OBJECT", $this->
lng->txt(
"mep"));
511 $tpl->setVariable(
"TXT_CONT_TITLE", $med_pool->getTitle());
512 $tpl->setVariable(
"THEAD", $this->
lng->txt(
"link_mobs"));
513 $tpl->setCurrentBlock(
"change_cont_obj");
514 $tpl->setVariable(
"CMD_CHANGE_CONT_OBJ",
"changeTargetObject");
515 $tpl->setVariable(
"BTN_CHANGE_CONT_OBJ", $this->
lng->txt(
"change"));
516 $tpl->setVariable(
"COLSPAN",
"2");
517 $tpl->parseCurrentBlock();
518 if ($parent_id = $med_pool->getParentId($this->parent_fold_id)) {
519 $tpl->setCurrentBlock(
"icon");
521 $tpl->parseCurrentBlock();
522 $tpl->setCurrentBlock(
"link_row");
523 $tpl->setVariable(
"TXT_CHAPTER",
"..");
524 $this->
ctrl->setParameter($this,
"mep_fold", $parent_id);
525 if ($ilCtrl->isAsynch()) {
526 $tpl->setVariable(
"LINK",
"#");
529 " onclick=\"return il.IntLink.setMepPoolFolder('" . $parent_id .
"');\" "
534 $this->
ctrl->getLinkTarget($this,
"setMedPoolFolder")
537 $tpl->parseCurrentBlock();
538 $tpl->setCurrentBlock(
"row");
539 $tpl->parseCurrentBlock();
541 foreach ($objs as $obj) {
542 if ($obj[
"type"] ===
"fold") {
543 $tpl->setCurrentBlock(
"icon");
545 $tpl->parseCurrentBlock();
546 $tpl->setCurrentBlock(
"link_row");
547 $tpl->setVariable(
"TXT_CHAPTER", $obj[
"title"]);
548 $this->
ctrl->setParameter($this,
"mep_fold", $obj[
"child"]);
549 if ($ilCtrl->isAsynch()) {
550 $tpl->setVariable(
"LINK",
"#");
553 " onclick=\"return il.IntLink.setMepPoolFolder('" . $obj[
"child"] .
"');\" "
558 $this->
ctrl->getLinkTarget($this,
"setMedPoolFolder")
561 $tpl->parseCurrentBlock();
575 $tpl->setCurrentBlock(
"row");
576 $tpl->parseCurrentBlock();
579 $tpl->setCurrentBlock(
"chapter_list");
580 $tpl->parseCurrentBlock();
589 $tpl->setCurrentBlock(
"chapter_list");
590 $tpl->setVariable(
"TXT_CONTENT_OBJECT", $this->
lng->txt(
"obj_wiki"));
592 $tpl->setVariable(
"THEAD", $this->
lng->txt(
"link_wpages"));
593 $tpl->setCurrentBlock(
"change_cont_obj");
594 $tpl->setVariable(
"CMD_CHANGE_CONT_OBJ",
"changeTargetObject");
595 $tpl->setVariable(
"BTN_CHANGE_CONT_OBJ", $this->
lng->txt(
"change"));
596 $tpl->parseCurrentBlock();
598 foreach ($wpages as $wpage) {
609 $tpl->setCurrentBlock(
"chapter_list");
610 $tpl->parseCurrentBlock();
614 case "PortfolioPage":
615 case "PortfolioTemplatePage":
620 $tpl->setCurrentBlock(
"chapter_list");
623 $tpl->setVariable(
"THEAD", $this->
lng->txt(
"pages"));
625 foreach ($ppages as $ppage) {
638 $tpl->setCurrentBlock(
"chapter_list");
639 $tpl->parseCurrentBlock();
643 case "RepositoryItem":
649 if (!isset($this->uploaded_file)) {
659 $tpl->setVariable(
"LINK_HELP_CONTENT", $this->
addUser());
664 if ($ilCtrl->isAsynch()) {
680 $tpl =
new ilTemplate(
"tpl.link_file.html",
true,
true,
"Services/Link");
681 if (!is_object($this->uploaded_file)) {
682 $tpl->setCurrentBlock(
"form");
685 $ilCtrl->getFormAction($this,
"saveFileLink",
"",
true)
687 $tpl->setVariable(
"TXT_SELECT_FILE",
$lng->
txt(
"cont_select_file"));
688 $tpl->setVariable(
"TXT_SAVE_LINK",
$lng->
txt(
"cont_create_link"));
689 $tpl->setVariable(
"CMD_SAVE_LINK",
"saveFileLink");
692 $tpl->setVariable(
"INPUT", $fi->getToolbarHTML());
693 $tpl->parseCurrentBlock();
695 $tpl->setCurrentBlock(
"link_js");
701 '[iln dfile=\x22' . $this->uploaded_file->getId() .
'\x22]'
709 $this->uploaded_file->getTitle()
721 if ($_FILES[
"link_file"][
"name"] !=
"") {
723 $fileObj->setType(
"file");
724 $fileObj->setTitle($_FILES[
"link_file"][
"name"]);
725 $fileObj->setDescription(
"");
726 $fileObj->setFileName($_FILES[
"link_file"][
"name"]);
727 $fileObj->setMode(
"filelist");
730 $fileObj->getUploadFile(
731 $_FILES[
"link_file"][
"tmp_name"],
732 $_FILES[
"link_file"][
"name"]
734 $this->uploaded_file = $fileObj;
750 $target = $med->getThumbnailTarget(
"small");
756 $tpl->setCurrentBlock(
"thumbnail_js");
760 if ($target !==
"") {
761 $tpl->setCurrentBlock(
"thumb" . $suff);
762 $tpl->setVariable(
"SRC_THUMB", $target);
763 $tpl->parseCurrentBlock();
765 $tpl->setVariable(
"NO_THUMB",
" ");
771 $tpl->setCurrentBlock(
"thumbnail_js");
773 $tpl->parseCurrentBlock();
780 $ctrl->
setParameter($this,
"link_type", $this->request->getLinkType());
781 $base_type = explode(
"_", $this->request->getLinkType())[0];
787 $ctrl->
redirect($this,
"showLinkHelp",
"",
true);
796 $ctrl->
setParameter($this,
"link_par_fold_id", $this->request->getMediaPoolFolder());
797 $ctrl->
redirect($this,
"showLinkHelp",
"",
true);
808 $a_type = $this->parent_type[$this->base_link_type] ??
"";
810 $white = array(
"root",
"cat",
"crs",
"fold",
"grp");
813 $exp->setClickableType($a_type);
814 if ($a_type ===
"prtf") {
816 $exp->setClickableType(
"prtt");
819 $exp->setTypeWhiteList($white);
822 if (!$exp->handleCommand()) {
823 return $exp->getHTML();
834 $ilCtrl = $this->
ctrl;
836 $ilCtrl->setParameter($this,
"link_par_fold_id",
"");
837 if ($this->request->getDo() ===
"set") {
838 $ilCtrl->setParameter($this,
"link_par_ref_id", $this->request->getSelectedId());
839 $ilCtrl->redirect($this,
"showLinkHelp",
"",
true);
843 $ilCtrl->setParameter($this,
"link_type", $this->link_type);
845 $tpl =
new ilTemplate(
"tpl.link_help_explorer.html",
true,
true,
"Services/Link");
847 $output = $this->getTargetExplorer();
849 $tpl->setVariable(
"TXT_EXPLORER_HEADER", $this->
lng->txt(
"cont_choose_" . ($this->parent_type[$this->base_link_type] ??
"")));
851 $tpl->setVariable(
"EXPLORER", $output);
852 $tpl->setVariable(
"ACTION", $this->
ctrl->getFormAction($this,
"resetLinkList",
"",
true));
853 $tpl->setVariable(
"BTN_RESET",
"resetLinkList");
854 $tpl->setVariable(
"TXT_RESET", $this->
lng->txt(
"back"));
856 if (($this->parent_type[$this->base_link_type] ??
"") ===
"mep") {
857 $tpl->setCurrentBlock(
"sel_clipboard");
858 $this->
ctrl->setParameter($this,
"do",
"set");
859 if ($ilCtrl->isAsynch()) {
860 $tpl->setVariable(
"LINK_CLIPBOARD",
"#");
863 " onclick=\"return il.IntLink.selectLinkTargetObject('mep', 0, '" . $this->link_type .
"');\" "
866 $tpl->setVariable(
"LINK_CLIPBOARD", $this->
ctrl->getLinkTarget($this,
"changeTargetObject"));
868 $tpl->setVariable(
"TXT_PERS_CLIPBOARD", $this->
lng->txt(
"clipboard"));
872 $tpl->parseCurrentBlock();
884 $ilCtrl = $this->ctrl;
886 $ilCtrl->setParameter($this,
"link_par_fold_id",
"");
889 $exp->setSetLinkTargetScript($this->getSetLinkTargetScript());
891 if (!$exp->handleCommand()) {
892 return $exp->getHTML();
902 $output = $this->selectRepositoryItem();
909 return "il.Util.addOnLoad(function() {il.IntLink.init({url: '$a_url'});});";
923 self::getOnloadCode($a_url)
926 $lng->loadLanguageModule(
"link");
928 $tpl->addJavaScript(
"./Services/UIComponent/Explorer/js/ilExplorer.js");
932 $tpl->addJavascript(
"./Services/Link/js/ilIntLink.js");
934 $tpl->addJavaScript(
"Services/Form/js/Form.js");
937 $modal->setHeading(
$lng->txt(
"link_link"));
938 $modal->setId(
"ilIntLinkModal");
939 $modal->setBody(
"<div id='ilIntLinkModalContent'></div>");
941 return $modal->getHTML();
952 string $a_type_short,
954 array $a_anchors = array(),
955 string $a_link_content =
""
957 $chapterRowBlock =
"chapter_row_js";
958 $anchor_row_block =
"anchor_link_js";
960 $target_str = ($this->link_target ===
"")
962 :
" target=\"" . $this->link_target .
"\"";
964 if (count($a_anchors) > 0) {
965 foreach ($a_anchors as $anchor) {
966 if ($this->getSetLinkTargetScript() !==
"") {
979 $tpl->setCurrentBlock($anchor_row_block);
982 $this->prepareJavascriptOutput(
"[iln " . $a_bb_type .
"=\"" . $a_obj_id .
"\"" . $target_str .
" anchor=\"$anchor\"]")
984 $tpl->setVariable(
"ALINK_END",
"[/iln]");
985 $tpl->setVariable(
"TXT_LINK",
"#" . $anchor);
986 $tpl->parseCurrentBlock();
991 if ($this->getSetLinkTargetScript() !==
"") {
993 if ($a_type ===
"MediaObject") {
994 $this->outputThumbnail(
$tpl, $a_obj_id);
996 $tpl->setCurrentBlock(
"link_row");
997 $tpl->setVariable(
"TXT_CHAPTER", $a_title);
1001 $this->getSetLinkTargetScript(),
1002 "linktype=" . $a_type .
1003 "&linktarget=il__" . $a_type_short .
"_" . $a_obj_id .
1004 "&linktargetframe=" . $this->link_target
1008 $tpl->setCurrentBlock($chapterRowBlock);
1009 if ($a_type ===
"MediaObject") {
1010 $this->outputThumbnail(
$tpl, $a_obj_id);
1011 $tpl->setCurrentBlock($chapterRowBlock);
1013 $tpl->setVariable(
"TXT_CHAPTER", $a_title);
1014 if ($a_type ===
"MediaObject" && empty($target_str)) {
1017 $this->prepareJavascriptOutput(
"[iln " . $a_bb_type .
"=\"" . $a_obj_id .
"\"/]")
1019 $tpl->setVariable(
"LINK_END",
"");
1023 $this->prepareJavascriptOutput(
"[iln " . $a_bb_type .
"=\"" . $a_obj_id .
"\"" . $target_str .
"]")
1025 $tpl->setVariable(
"LINK_CONTENT", $a_link_content);
1026 $tpl->setVariable(
"LINK_END",
"[/iln]");
1029 $tpl->parseCurrentBlock();
1031 $tpl->setCurrentBlock(
"row");
1032 $tpl->parseCurrentBlock();
1040 $form = $this->initUserSearchForm();
1041 return $form->getHTML() . $this->getUserSearchResult();
1050 $form->setId(
"link_user_search_form");
1054 $ti->setValue($this->request->getUserSearchStr());
1055 $form->addItem($ti);
1057 $form->addCommandButton(
"searchUser", $this->
lng->txt(
"search"));
1071 if (strlen($this->request->getUserSearchStr()) < 3) {
1072 if (strlen($this->request->getUserSearchStr()) > 0) {
1073 $lng->loadLanguageModule(
"search");
1080 $form = $this->initUserSearchForm();
1081 $form->checkInput();
1084 if (count($users) === 0) {
1088 $f =
$DIC->ui()->factory();
1089 $r =
$DIC->ui()->renderer();
1092 foreach ($users as $user) {
1093 $b =
$f->button()->standard(
$lng->txt(
"insert"),
"#")
1094 ->withOnLoadCode(
function (
$id) use ($user) {
1096 '$("#' .
$id .
"\").click(function(ev) { il.IntLink.addInternalLink('[iln user=\"" .
1101 ->withSections(array(
$b));
1103 $deck =
$f->deck($cards)->withLargeCardsSize();
1105 return $r->renderAsync($deck);
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Class ilCtrl provides processing control methods.
redirect(object $a_gui_obj, string $a_cmd=null, string $a_anchor=null, bool $is_async=false)
@inheritDoc
setParameter(object $a_gui_obj, string $a_parameter, $a_value)
@inheritDoc
static init(ilGlobalTemplateInterface $a_main_tpl=null)
special template class to simplify handling of ITX/PEAR
setCurrentBlock(string $part=self::DEFAULT_BLOCK)
parseCurrentBlock(string $part=self::DEFAULT_BLOCK)
static _recoverParameters()
Recover parameters from session variables (static)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
renderLink(ilGlobalTemplate $tpl, string $a_title, int $a_obj_id, string $a_type, string $a_type_short, string $a_bb_type, array $a_anchors=array(), string $a_link_content="")
Render internal link item.
refreshRepositorySelector()
Refresh Repository Selector.
StandardGUIRequest $request
setMedPoolFolder()
select media pool folder
getTargetExplorer()
Cange target object.
setFilterWhiteList(bool $a_white_list)
Set filter list as white list (per detault it is a black list)
saveFileLink()
Save file link.
static getOnloadCode(string $a_url)
__construct(string $a_default_link_type, int $a_default_parent_id, bool $a_is_ref=true)
setSetLinkTargetScript(string $a_script)
selectRepositoryItem()
select repository item explorer
prepareJavascriptOutput(string $str)
Prepare output for JS enabled editing.
getUserSearchResult()
Search user.
getFileLinkHTML()
Get HTML for file link.
initUserSearchForm()
Init user search form.
filterLinkType(string $a_link_type)
int $default_parent_obj_id
changeTargetObject(string $a_type="")
Cange target object.
showLinkHelp()
Show link help list.
string $default_parent_obj_type
setReturn(string $a_return)
static getInitHTML(string $a_url)
Get initialisation HTML to use internal link editing.
outputThumbnail(ilGlobalTemplate $tpl, int $a_id, string $a_mode="")
output thumbnail
string $default_link_type
int $default_parent_ref_id
static searchUsers(string $a_search_str)
Search users.
static getPageList(int $lm_id)
txt(string $a_topic, string $a_default_lang_fallback_mod="")
gets the text for a given topic if the topic is not in the list, the topic itself with "-" will be re...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _getPersonalPicturePath(int $a_usr_id, string $a_size="small", bool $a_force_pic=false, bool $a_prevent_no_photo_image=false, bool $html_export=false)
static _lookupLogin(int $a_user_id)
static _lookupType(int $id, bool $reference=false)
static _lookupObjId(int $ref_id)
static _lookupTitle(int $obj_id)
static _readAnchors(string $a_parent_type, int $a_page_id, string $a_page_lang="-")
Read anchors of a page.
static getAllPortfolioPages(int $a_portfolio_id)
Get pages of portfolio.
special template class to simplify handling of ITX/PEAR
This class represents a text property in a property form.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
isInTree(?int $a_node_id)
get all information of a node.
static getNamePresentation( $a_user_id, bool $a_user_image=false, bool $a_profile_link=false, string $a_profile_back_link="", bool $a_force_first_lastname=false, bool $a_omit_login=false, bool $a_sortable=true, bool $a_return_data_array=false, $a_ctrl_path="ilpublicuserprofilegui")
Default behaviour is:
static getStyleSheetLocation(string $mode="output", string $a_css_name="", string $a_css_location="")
get full style sheet file name (path inclusive) of current user
static getImagePath(string $img, string $module_path="", string $mode="output", bool $offline=false)
get image path (for images located in a template directory)
static getSystemMessageHTML(string $a_txt, string $a_type="info")
Get HTML for a system message.
static appendUrlParameterString(string $a_url, string $a_par, bool $xml_style=false)
static redirect(string $a_script)
static getAllWikiPages(int $a_wiki_id)
static initConnection(?ilGlobalTemplateInterface $a_main_tpl=null)
Init YUI Connection module.
if($DIC->http() ->request() ->getMethod()=="GET" &&isset($DIC->http() ->request() ->getQueryParams()['tex'])) $tpl