4require_once
"./Services/Object/classes/class.ilObjectGUI.php";
5require_once
"./Services/Container/classes/class.ilContainer.php";
6include_once
'./Services/PersonalDesktop/interfaces/interface.ilDesktopItemHandling.php';
29 function ilContainerGUI($a_data, $a_id, $a_call_by_reference =
true, $a_prepare_output =
true)
33 $this->rbacsystem =& $rbacsystem;
35 $lng->loadLanguageModule(
"cntr");
44 $this->
ilObjectGUI($a_data, $a_id, $a_call_by_reference,
false);
55 $next_class = $this->ctrl->getNextClass();
56 $cmd = $this->ctrl->getCmd(
"render");
61 case "ilcontainerpagegui":
62 if (
$_GET[
"redirectSource"] !=
"ilinternallinkgui")
65 $tpl->setContent(
$ret);
73 case "ilobjstylesheetgui":
93 $values = parent::getEditFormValues();
95 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateObjSettings.php';
96 $values[
'didactic_type'] =
97 'dtpl_'.ilDidacticTemplateObjSettings::lookupTemplateId($this->object->getRefId());
108 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateObjSettings.php';
110 $this->object->getRefId()
114 if($new_tpl_id != $current_tpl_id)
119 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateGUI.php';
120 $this->ctrl->setReturn($this,
'edit');
121 $this->ctrl->setCmdClass(
'ildidactictemplategui');
122 $this->ctrl->setCmd(
'confirmTemplateSwitch');
124 return $this->ctrl->forwardCommand($dtpl_gui);
126 parent::afterUpdate();
137 $ilTabs->clearTargets();
140 include_once (
"./Services/Style/classes/class.ilObjStyleSheetGUI.php");
141 $this->ctrl->setReturn($this,
"editStyleProperties");
142 $style_gui =
new ilObjStyleSheetGUI(
"", $this->object->getStyleSheetId(),
false,
false);
143 $style_gui->omitLocator();
144 if (
$cmd ==
"create" ||
$_GET[
"new_type"]==
"sty")
146 $style_gui->setCreationMode(
true);
149 if (
$cmd ==
"confirmedDelete")
151 $this->
object->setStyleSheetId(0);
152 $this->
object->update();
155 $ret = $this->ctrl->forwardCommand($style_gui);
157 if (
$cmd ==
"save" ||
$cmd ==
"copyStyle" ||
$cmd ==
"importStyle")
160 $this->
object->setStyleSheetId($style_id);
161 $this->
object->update();
162 $this->ctrl->redirectByClass(
"ilobjstylesheetgui",
"edit");
176 if (in_array(
$cmd, array(
"displayMediaFullscreen",
"downloadFile",
"displayMedia")))
185 $ilTabs->clearTargets();
187 if (
$_GET[
"redirectSource"] ==
"ilinternallinkgui")
196 $ilTabs->setBackTarget(
$lng->txt(
"cntr_back_to_old_editor"),
197 $ilCtrl->getLinkTarget($this,
"switchToOldEditor"),
"_top");
201 $ilTabs->setBackTarget(
$lng->txt(
"back"),
"./goto.php?target=".$this->object->getType().
"_".
202 $this->object->getRefId(),
"_top");
206 include_once(
"./Services/Container/classes/class.ilContainerPage.php");
207 include_once(
"./Services/Container/classes/class.ilContainerPageGUI.php");
209 $lng->loadLanguageModule(
"content");
211 include_once(
"./Services/Style/classes/class.ilObjStyleSheet.php");
212 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
214 $this->tpl->setCurrentBlock(
"SyntaxStyle");
215 $this->tpl->setVariable(
"LOCATION_SYNTAX_STYLESHEET",
217 $this->tpl->parseCurrentBlock();
220 $this->object->getId()))
224 $new_page_object->setParentId($this->object->getId());
225 $new_page_object->setId($this->object->getId());
226 $new_page_object->createFromXML();
230 $this->ctrl->setReturnByClass(
"ilcontainerpagegui",
"edit");
232 include_once(
"./Services/Style/classes/class.ilObjStyleSheet.php");
234 $this->object->getStyleSheetId(), $this->object->getType()));
236 $page_gui->setTemplateTargetVar(
"ADM_CONTENT");
237 $page_gui->setLinkXML($link_xml);
238 $page_gui->setFileDownloadLink(
"");
239 $page_gui->setFullscreenLink($this->ctrl->getLinkTarget($this,
"showMediaFullscreen"));
241 $page_gui->setPresentationTitle(
"");
242 $page_gui->setTemplateOutput(
false);
249 $wtpl =
new ilTemplate(
"tpl.cntr_old_editor_message.html",
true,
250 true,
"Services/Container");
251 $wtpl->setVariable(
"ALT_WARNING",
$lng->txt(
"warning"));
252 $wtpl->setVariable(
"IMG_WARNING",
254 $wtpl->setVariable(
"TXT_MIGRATION_INFO",
$lng->txt(
"cntr_switch_to_new_editor_message"));
255 $wtpl->setVariable(
"TXT_MIGRATION_INFO",
$lng->txt(
"cntr_switch_to_new_editor_message"));
256 $wtpl->setVariable(
"HREF_SWITCH_TO_NEW_EDITOR",
257 $ilCtrl->getLinkTarget($this,
"useNewEditor"));
258 $wtpl->setVariable(
"TXT_MIGRATION_SWITCH",
259 $lng->txt(
"cntr_switch_to_new_editor_cmd"));
260 $page_gui->setPrependingHtml($wtpl->get());
264 $page_gui->setTabHook($this,
"addPageTabs");
266 $ret = $this->ctrl->forwardCommand($page_gui);
279 $ilTabs->addTarget(
"obj_sty",
280 $ilCtrl->getLinkTarget($this,
'editStyleProperties'),
"editStyleProperties");
300 include_once(
"Services/XHTMLPage/classes/class.ilXHTMLPage.php");
302 return $xpage->getContent();
310 include_once(
"./Services/COPage/classes/class.ilPageUtil.php");
312 $this->object->getId()))
316 include_once(
"./Services/Container/classes/class.ilContainerPage.php");
317 include_once(
"./Services/Container/classes/class.ilContainerPageGUI.php");
319 include_once(
"./Services/Style/classes/class.ilObjStyleSheet.php");
320 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
322 $this->tpl->setCurrentBlock(
"SyntaxStyle");
323 $this->tpl->setVariable(
"LOCATION_SYNTAX_STYLESHEET",
325 $this->tpl->parseCurrentBlock();
328 include_once(
"./Services/Object/classes/class.ilObjectTranslation.php");
330 $lang = $ot->getEffectiveContentLang(
$ilUser->getCurrentLanguage(),
"cont");
332 include_once(
"./Services/Style/classes/class.ilObjStyleSheet.php");
334 $this->object->getStyleSheetId(), $this->object->getType()));
336 $page_gui->setPresentationTitle(
"");
337 $page_gui->setTemplateOutput(
false);
338 $page_gui->setHeader(
"");
339 $ret = $page_gui->showPage();
352 if (parent::prepareOutput())
357 #$this->showPossibleSubObjects();
361 include_once
'./Services/Container/classes/class.ilMemberViewGUI.php';
372 if (
$_GET[
"obj_id"] !=
"")
377 include_once
'./Services/Container/classes/class.ilMemberViewSettings.php';
383 $mode = (
$_SESSION[
"il_rep_mode"] ==
"flat")
386 $link =
"ilias.php?baseClass=ilRepositoryGUI&cmd=frameset&set_mode=".$mode.
"&ref_id=".$this->
object->getRefId();
387 $tpl->setTreeFlatIcon($link, $mode);
399 $this->tpl->setTitle($this->object->getTitle());
400 $this->tpl->setDescription($this->object->getLongDescription());
404 if (
$ilias->getSetting(
"custom_icons") &&
405 in_array($this->object->getType(), array(
"cat",
"grp",
"crs",
"root")))
407 require_once(
"./Services/Container/classes/class.ilContainer.php");
413 $this->tpl->setTitleIcon($icon, $this->lng->txt(
"obj_".$this->object->getType()));
415 include_once
'./Services/Object/classes/class.ilObjectListGUIFactory.php';
417 $lgui->initItem($this->object->getRefId(), $this->object->getId());
418 $this->tpl->setAlertProperties($lgui->getAlertProperties());
427 include_once
"Services/Object/classes/class.ilObjectAddNewItemGUI.php";
440 switch ($this->object->getViewMode())
444 include_once(
"./Services/Container/classes/class.ilContainerSimpleContentGUI.php");
449 include_once(
'./Services/Container/classes/class.ilContainerObjectiveGUI.php');
456 include_once(
"./Services/Container/classes/class.ilContainerSessionsContentGUI.php");
463 include_once(
"./Services/Container/classes/class.ilContainerByTypeContentGUI.php");
468 return $container_view;
485 $ilTabs->activateSubTab(
"manage");
489 $ilTabs->activateSubTab(
"view_content");
492 $container_view->setOutput();
494 $this->adminCommands = $container_view->adminCommands;
498 if (
$ilCtrl->getNextClass() !=
"ilcolumngui")
507 if ((
int)
$_GET[
"ref_id"] > 1 &&
$ilSetting->get(
"rep_tree_synchronize"))
509 $ilCtrl->setParameter($this,
"active_node", (
int)
$_GET[
"ref_id"]);
533 global $ilAccess,
$lng;
535 $lng->loadLanguageModule(
'cntr');
540 $GLOBALS[
'tpl']->setPageFormAction($this->ctrl->getFormAction($this));
542 include_once
'./Services/UIComponent/Toolbar/classes/class.ilToolbarGUI.php';
544 $this->ctrl->setParameter($this,
"type",
"");
545 $this->ctrl->setParameter($this,
"item_ref_id",
"");
549 if ($this->object->gotItems())
551 $toolbar->setLeadingImage(
555 $toolbar->addFormButton(
556 $this->lng->txt(
'delete_selected_items'),
559 $toolbar->addFormButton(
560 $this->lng->txt(
'move_selected_items'),
563 $toolbar->addFormButton(
564 $this->lng->txt(
'copy_selected_items'),
567 $toolbar->addFormButton(
568 $this->lng->txt(
'link_selected_items'),
573 if ($folder_set->get(
"enable_multi_download") ==
true)
575 $toolbar->addSeparator();
576 $toolbar->addFormButton(
577 $this->lng->txt(
'download_selected_items'),
582 if($this->object->getType() ==
'crs' or $this->object->getType() ==
'grp')
584 if($this->object->gotItems())
586 $toolbar->addSeparator();
590 $this->lng->txt(
'cntr_adopt_content'),
591 $this->ctrl->getLinkTargetByClass(
602 $toolbar->addFormButton(
603 $this->lng->txt(
'paste_clipboard_items'),
607 if(
$_SESSION[
"clipboard"][
"cmd"] ==
"link")
617 $toolbar->addFormButton(
618 $this->lng->txt(
'clear_clipboard'),
624 $toolbar->addSeparator();
625 $toolbar->addFormButton(
626 $this->lng->txt(
'download_selected_items'),
632 $GLOBALS[
'tpl']->addAdminPanelToolbar(
634 ($this->object->gotItems() && !
$_SESSION[
"clipboard"]) ?
true :
false,
635 ($this->object->gotItems() && !
$_SESSION[
"clipboard"]) ?
true :
false
639 if ($this->object->gotItems())
641 $GLOBALS[
'tpl']->setPageFormAction($this->ctrl->getFormAction($this));
646 if ($this->edit_order)
648 if($this->object->gotItems() and $ilAccess->checkAccess(
"write",
"", $this->object->getRefId()))
650 include_once(
'./Services/Container/classes/class.ilContainer.php');
655 $GLOBALS[
'tpl']->setPageFormAction($this->ctrl->getFormAction($this));
657 include_once
'./Services/UIComponent/Toolbar/classes/class.ilToolbarGUI.php';
659 $this->ctrl->setParameter($this,
"type",
"");
660 $this->ctrl->setParameter($this,
"item_ref_id",
"");
662 $toolbar->addFormButton(
663 $this->lng->txt(
'sorting_save'),
667 $GLOBALS[
'tpl']->addAdminPanelToolbar($toolbar,
true,
false);
682 $GLOBALS[
'tpl']->setPageFormAction($this->ctrl->getFormAction($this));
684 include_once
'./Services/UIComponent/Toolbar/classes/class.ilToolbarGUI.php';
686 $this->ctrl->setParameter($this,
"type",
"");
687 $this->ctrl->setParameter($this,
"item_ref_id",
"");
689 $toolbar->addFormButton(
690 $this->lng->txt(
'download_selected_items'),
694 $GLOBALS[
'tpl']->addAdminPanelToolbar(
696 $this->object->gotItems() ?
true :
false,
697 $this->object->gotItems() ?
true :
false
707 if(!
$tree->checkForParentType($this->object->getRefId(),
'crs'))
711 $tpl->setCurrentBlock(
"custom_button");
712 $tpl->setVariable(
"ADMIN_MODE_LINK",$this->ctrl->getLinkTargetByClass(
'ilcoursecontentgui',
'editTimings'));
713 $tpl->setVariable(
"TXT_ADMIN_MODE",$this->lng->txt(
'timings_edit'));
714 $tpl->parseCurrentBlock();
722 $GLOBALS[
"tpl"]->setPermanentLink($this->object->getType(),
723 $this->object->getRefId(),
"",
"_top");
734 $ilCtrl->redirect($this,
"editPageFrame");
745 $ilCtrl->redirect($this,
"editPageFrame");
755 if ($ilAccess->checkAccess(
"write",
"", $this->object->getRefId()))
757 include_once(
"./Services/XHTMLPage/classes/class.ilXHTMLPage.php");
774 $ilCtrl->redirect($this,
"editPageFrame");
782 include_once(
"Services/Frameset/classes/class.ilFramesetGUI.php");
785 $fs_gui->setFramesetTitle($this->object->getTitle());
786 $fs_gui->setMainFrameName(
"content");
787 $fs_gui->setSideFrameName(
"tree");
792 if ($xpage_id > 0 &&
$_SESSION[
"il_cntr_editor"] !=
"std")
794 $fs_gui->setMainFrameSource(
795 $this->ctrl->getLinkTarget(
796 $this,
"editPageContent"));
797 $fs_gui->setSideFrameSource(
798 $this->ctrl->getLinkTarget($this,
"showLinkList"));
802 $this->ctrl->redirectByClass(array(
"ilcontainerpagegui"),
"edit");
819 if (!$rbacsystem->checkAccess(
"write", $this->ref_id))
821 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_write"),$this->ilias->error_obj->MESSAGE);
828 include_once(
"Services/XHTMLPage/classes/class.ilXHTMLPage.php");
830 $content = $xpage->getContent();
834 $tpl->addBlockFile(
"ADM_CONTENT",
"adm_content",
"tpl.container_edit_page_content.html",
835 "Services/Container");
837 $tpl->setVariable(
"FORMACTION", $this->ctrl->getFormAction($this));
838 $tpl->setVariable(
"TXT_EDIT_PAGE_CONTENT",
839 $this->lng->txt(
"edit_page_content"));
840 $tpl->setVariable(
"TXT_SAVE", $this->lng->txt(
"save"));
841 $tpl->setVariable(
"TXT_CANCEL", $this->lng->txt(
"cancel"));
842 $tpl->setVariable(
"TXT_MIGRATION_INFO",
$lng->txt(
"cntr_old_editor_warning"));
843 $tpl->setVariable(
"TXT_MIGRATION_OPEN_STD_EDITOR",
$lng->txt(
"cntr_old_editor_open_standard_editor"));
845 $tpl->setVariable(
"HREF_OPEN_STD_EDITOR",
$ilCtrl->getLinkTarget($this,
"switchToStdEditor"));
846 $tpl->setVariable(
"ALT_WARNING",
$lng->txt(
"warning"));
848 include_once(
"./Services/Form/classes/class.ilFormPropertyGUI.php");
849 include_once(
"./Services/Form/classes/class.ilTextAreaInputGUI.php");
854 include_once
"./Services/RTE/classes/class.ilRTE.php";
856 include_once
"./Services/RTE/classes/class.$rtestring.php";
857 $rte =
new $rtestring();
859 include_once
"./Services/Object/classes/class.ilObject.php";
862 $rte->addRTESupport(
$obj_id, $obj_type);
869 include_once(
"Services/XHTMLPage/classes/class.ilXHTMLPage.php");
870 include_once
"./Services/AdvancedEditing/classes/class.ilObjAdvancedEditing.php";
890 $xpage->setContent(
$text);
896 $xpage->setContent(
$text);
899 "xhtml_page", $xpage->getId());
902 include_once(
"Services/RTE/classes/class.ilRTE.php");
904 $this->object->getId());
907 $this->ctrl->redirect($this,
"");
912 $this->ctrl->redirect($this,
"");
920 "Services/Container");
922 $type_ordering = array(
923 "cat",
"fold",
"crs",
"grp",
"chat",
"frm",
"lres",
924 "glo",
"webr",
"file",
"exc",
925 "tst",
"svy",
"mep",
"qpl",
"spl");
928 foreach($childs as $child)
930 if (in_array($child[
"type"], array(
"lm",
"dbk",
"sahs",
"htlm")))
936 $cnt[$child[
"type"]]++;
941 $tpl->setVariable(
"TXT_HELP_HEADER",
$lng->txt(
"help"));
942 foreach($type_ordering as $type)
944 $tpl->setCurrentBlock(
"row");
945 $tpl->setVariable(
"ROWCOL",
"tblrow".((($i++)%2)+1));
948 $tpl->setVariable(
"TYPE",
$lng->txt(
"objs_".$type).
949 " (".((int)$cnt[$type]).
")");
953 $tpl->setVariable(
"TYPE",
$lng->txt(
"learning_resources").
954 " (".((int)$cnt[
"lres"]).
")");
956 $tpl->setVariable(
"TXT_LINK",
"[list-".$type.
"]");
957 $tpl->parseCurrentBlock();
969 $this->adminCommands =
false;
1001 $tpl =
new ilTemplate(
"tpl.container_list_block.html",
true,
true,
1002 "Services/Container");
1003 $this->cur_row_type =
"row_type_1";
1017 $title = $this->lng->txt(
"objs_".$a_type);
1021 $a_tpl->setCurrentBlock(
"container_header_row_image");
1022 $a_tpl->setVariable(
"HEADER_IMG", $icon);
1023 $a_tpl->setVariable(
"HEADER_ALT", $title);
1027 $a_tpl->setCurrentBlock(
"container_header_row");
1030 $a_tpl->setVariable(
"BLOCK_HEADER_CONTENT", $title);
1031 $a_tpl->parseCurrentBlock();
1032 $a_tpl->touchBlock(
"container_row");
1045 $this->cur_row_type = ($this->cur_row_type ==
"row_type_1")
1049 $a_tpl->touchBlock($this->cur_row_type);
1052 if ($this->
ilias->getSetting(
"icon_position_in_lists") ==
"item_rows")
1055 $alt = $this->lng->txt(
"obj_".$a_image_type);
1058 if ($this->
ilias->getSetting(
"custom_icons") &&
1059 in_array($a_image_type, array(
"cat",
"grp",
"crs")))
1061 require_once(
"./Services/Container/classes/class.ilContainer.php");
1068 $a_tpl->setCurrentBlock(
"block_row_image");
1069 $a_tpl->setVariable(
"ROW_IMG", $icon);
1070 $a_tpl->setVariable(
"ROW_ALT", $alt);
1071 $a_tpl->parseCurrentBlock();
1077 $a_tpl->setCurrentBlock(
"block_row_check");
1078 $a_tpl->setVariable(
"ITEM_ID", $a_item_ref_id);
1079 $a_tpl->parseCurrentBlock();
1082 include_once(
'Services/Container/classes/class.ilContainerSortingSettings.php');
1086 $a_tpl->setCurrentBlock(
'block_position');
1087 $a_tpl->setVariable(
'POS_TYPE',$a_image_type);
1088 $a_tpl->setVariable(
'POS_ID',$a_item_ref_id);
1089 $a_tpl->setVariable(
'POSITION',sprintf(
'%.1f',$this->current_position++));
1090 $a_tpl->parseCurrentBlock();
1094 $a_tpl->setVariable(
"ROW_NBSP",
" ");
1096 $a_tpl->setCurrentBlock(
"container_standard_row");
1097 $a_tpl->setVariable(
"BLOCK_ROW_CONTENT", $a_html);
1098 $a_tpl->parseCurrentBlock();
1099 $a_tpl->touchBlock(
"container_row");
1107 $this->cur_row_type = ($this->cur_row_type ==
"row_type_1")
1111 $a_tpl->touchBlock($this->cur_row_type);
1113 $type = $this->lng->txt(
"obj_".$a_type);
1114 $a_message = str_replace(
"[type]", $type, $a_message);
1116 $a_tpl->setVariable(
"ROW_NBSP",
" ");
1118 $a_tpl->setCurrentBlock(
"container_standard_row");
1119 $a_tpl->setVariable(
"BLOCK_ROW_CONTENT",
1121 $a_tpl->parseCurrentBlock();
1122 $a_tpl->touchBlock(
"container_row");
1127 $this->cur_row_type =
"";
1139 || strtolower($this->ctrl->getCmdClass()) !=
"ilcontainerpagegui")
1144 $lng->loadLanguageModule(
"content");
1149 $this->tabs_gui->setBackTarget($this->lng->txt(
"obj_cat"),
1150 $this->ctrl->getLinkTarget($this,
"frameset"),
1153 $this->tabs_gui->addTarget(
"edit", $this->ctrl->getLinkTargetByClass(
"ilcontainerpagegui",
"view")
1154 , array(
"",
"view"),
"ilcontainerpagegui");
1166 if (!is_object($this->
object))
1171 if ($a_include_view && $ilAccess->checkAccess(
"read",
"", $this->object->getRefId()))
1175 $ilTabs->addSubTab(
"view_content",
$lng->txt(
"view"),
$ilCtrl->getLinkTarget($this,
""));
1179 $ilTabs->addSubTab(
"view_content",
$lng->txt(
"view"),
$ilCtrl->getLinkTarget($this,
"disableAdministrationPanel"));
1183 if (
$ilUser->getId() != ANONYMOUS_USER_ID &&
1184 ($this->adminCommands ||
1185 (is_object($this->
object) &&
1186 ($ilAccess->checkAccess(
"write",
"", $this->object->getRefId())))
1188 (is_object($this->
object) &&
1189 ($this->object->getHiddenFilesFound())) ||
1196 $ilTabs->addSubTab(
"manage",
$lng->txt(
"cntr_manage"),
$ilCtrl->getLinkTarget($this,
""));
1200 $ilTabs->addSubTab(
"manage",
$lng->txt(
"cntr_manage"),
$ilCtrl->getLinkTarget($this,
"enableAdministrationPanel"));
1203 if (
$ilUser->getId() != ANONYMOUS_USER_ID &&
1204 is_object($this->
object) &&
1205 $ilAccess->checkAccess(
"write",
"", $this->object->getRefId())
1209 $ilTabs->addSubTab(
"ordering",
$lng->txt(
"cntr_ordering"),
$ilCtrl->getLinkTarget($this,
"editOrder"));
1211 if (
$ilUser->getId() != ANONYMOUS_USER_ID &&
1212 is_object($this->
object) &&
1213 $ilAccess->checkAccess(
"write",
"", $this->object->getRefId())
1218 $ilTabs->addSubTab(
"page_editor",
$lng->txt(
"cntr_text_media_editor"),
$ilCtrl->getLinkTarget($this,
"editPageFrame"),
1234 if ($rbacsystem->checkAccess(
'edit_permission',$this->ref_id))
1236 $tabs_gui->addTarget(
"perm_settings",
1237 $this->ctrl->getLinkTargetByClass(array(get_class($this),
'ilpermissiongui'),
"perm"),
1238 array(
"perm",
"info",
"owner"),
'ilpermissiongui');
1239 if (
$ilCtrl->getNextClass() ==
"ilpermissiongui")
1241 $tabs_gui->activateTab(
"perm_settings");
1246 if (strtolower(
$_GET[
"baseClass"]) ==
"ilrepositorygui" && !empty(
$_SESSION[
"clipboard"]))
1248 $tabs_gui->addTarget(
"clipboard",
1249 $this->ctrl->getLinkTarget($this,
"clipboard"),
"clipboard", get_class($this));
1264 $_SESSION[
"il_cont_admin_panel"] =
true;
1265 $this->ctrl->redirect($this,
"render");
1273 $_SESSION[
"il_cont_admin_panel"] =
false;
1274 $this->ctrl->redirect($this,
"render");
1284 $this->edit_order =
true;
1285 $_SESSION[
"il_cont_admin_panel"] =
false;
1288 $ilTabs->activateSubTab(
"ordering");
1297 return $this->edit_order ? true :
false;
1320 if((
int)
$ilSetting->get(
'disable_my_offers'))
1325 include_once
'./Services/PersonalDesktop/classes/class.ilDesktopItemGUI.php';
1338 if((
int)
$ilSetting->get(
'disable_my_offers'))
1343 include_once
'./Services/PersonalDesktop/classes/class.ilDesktopItemGUI.php';
1351 $this->multi_download_enabled =
true;
1365 if (!$rbacsystem->checkAccess(
"write",
$_GET[
'item_ref_id']))
1367 $this->ilErr->raiseError($this->lng->txt(
'err_no_permission'),$this->ilErr->MESSAGE);
1371 require_once
'Services/WebDAV/classes/class.ilDAVServer.php';
1374 require_once
'Services/WebDAV/classes/class.ilDAVLocks.php';
1379 'ref_'.$_GET[
'item_ref_id'].
'_usr_'.
$ilUser->getId(),
1380 time() + 60, 0,
'exclusive'
1403 if (
$_GET[
"item_ref_id"] !=
"")
1410 if (!isset(
$_POST[
"id"]))
1412 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->ilias->error_obj->MESSAGE);
1419 $node_data = $this->tree->getNodeData(
$ref_id);
1420 $subtree_nodes = $this->tree->getSubTree($node_data);
1422 $all_node_data[] = $node_data;
1423 $all_subtree_nodes[] = $subtree_nodes;
1426 foreach ($subtree_nodes as $node)
1428 if($node[
'type'] ==
'rolf')
1433 if (!$rbacsystem->checkAccess(
'delete',$node[
"ref_id"]))
1435 $no_cut[] = $node[
"ref_id"];
1442 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_cut").
" ".implode(
',',$this->
getTitlesByRefId($no_cut)),
1443 $this->
ilias->error_obj->MESSAGE);
1446 $_SESSION[
"clipboard"][
"cmd"] = $ilCtrl->getCmd();
1465 if (
$_GET[
"item_ref_id"] !=
"")
1470 if (!isset(
$_POST[
"id"]))
1472 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->ilias->error_obj->MESSAGE);
1480 $node_data = $this->tree->getNodeData(
$ref_id);
1488 $subtree_nodes = $this->tree->getSubTree($node_data);
1490 $all_node_data[] = $node_data;
1491 $all_subtree_nodes[] = $subtree_nodes;
1494 foreach ($subtree_nodes as $node)
1496 if($node[
'type'] ==
'rolf')
1501 if (!$rbacsystem->checkAccess(
'visible,read,copy',$node[
"ref_id"]))
1503 $no_copy[] = $node[
"ref_id"];
1508 if ($containers > 0 && count(
$_POST[
"id"]) > 1)
1510 $this->
ilias->raiseError($this->lng->txt(
"cntr_container_only_on_their_own"), $this->ilias->error_obj->MESSAGE);
1514 if (count($no_copy))
1516 $this->
ilias->raiseError(
1517 $this->lng->txt(
"msg_no_perm_copy") .
" " . implode(
',',$this->
getTitlesByRefId($no_copy)),
1518 $this->
ilias->error_obj->MESSAGE);
1522 if (count(
$_POST[
"id"]) == 1)
1524 $ilCtrl->setParameterByClass(
"ilobjectcopygui",
"source_id",
$_POST[
"id"][0]);
1525 $ilCtrl->redirectByClass(
"ilobjectcopygui",
"initTargetSelection");
1529 $ilCtrl->setParameterByClass(
"ilobjectcopygui",
"source_ids", implode(
$_POST[
"id"],
"_"));
1530 $ilCtrl->redirectByClass(
"ilobjectcopygui",
"initTargetSelection");
1546 if (
$_GET[
"item_ref_id"] !=
"")
1551 if (!isset(
$_POST[
"id"]))
1553 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->ilias->error_obj->MESSAGE);
1559 $object =& $this->
ilias->obj_factory->getInstanceByRefId($ref_id);
1560 $obj_type =
$object->getType();
1561 if (!in_array($obj_type, array(
"fold",
"file")))
1563 $no_download[] =
$object->getType();
1565 else if (!$rbacsystem->checkAccess(
'read',
$ref_id))
1572 if (count($no_download))
1574 $no_download = array_unique($no_download);
1575 foreach ($no_download as $type)
1577 $txt_objs[] = $this->lng->txt(
"objs_".$type);
1579 $this->
ilias->raiseError(implode(
', ',$txt_objs).
" ".$this->lng->txt(
"msg_obj_no_download"),$this->ilias->error_obj->MESSAGE);
1583 if (count($no_perm))
1585 $this->
ilias->raiseError(
1586 $this->lng->txt(
"msg_obj_perm_download").
" ".implode(
',',$no_perm),
1587 $this->
ilias->error_obj->MESSAGE);
1596 global
$lng, $rbacsystem, $ilAccess;
1598 include_once
"./Services/Utilities/classes/class.ilUtil.php";
1599 include_once
'Modules/Folder/classes/class.ilObjFolder.php';
1600 include_once
'Modules/File/classes/class.ilObjFile.php';
1601 include_once
'Modules/File/classes/class.ilFileException.php';
1611 foreach ($a_ref_ids as
$ref_id)
1613 if (!$ilAccess->checkAccess(
"read",
"",
$ref_id))
1620 $object =& $this->
ilias->obj_factory->getInstanceByRefId($ref_id);
1621 $obj_type =
$object->getType();
1622 if ($obj_type ==
"fold")
1627 else if ($obj_type ==
"file")
1635 $deliverFilename = ilUtil::getAsciiFilename($this->object->getTitle()) .
".zip";
1657 global $rbacsystem,
$tree, $ilAccess;
1662 $subtree =
$tree->getChildsByTypeFilter($refid, array(
"fold",
"file"));
1664 foreach ($subtree as $child)
1666 if (!$ilAccess->checkAccess(
"read",
"", $child[
"ref_id"]))
1672 if ($child[
"type"] ==
"fold")
1685 if (!copy($oldFilename, $newFilename))
1686 throw new ilFileException(
"Could not copy ".$oldFilename.
" to ".$newFilename);
1688 touch($newFilename, filectime($oldFilename));
1699 global $clipboard, $rbacsystem, $rbacadmin,
$ilCtrl;
1701 if (
$_GET[
"item_ref_id"] !=
"")
1706 if (!isset(
$_POST[
"id"]))
1708 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->ilias->error_obj->MESSAGE);
1714 if (!$rbacsystem->checkAccess(
'delete',
$ref_id))
1719 $object =& $this->
ilias->obj_factory->getInstanceByRefId($ref_id);
1721 if (!$this->objDefinition->allowLink(
$object->getType()))
1723 $no_link[] =
$object->getType();
1730 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_link").
" ".
1731 implode(
',',$no_cut),$this->
ilias->error_obj->MESSAGE);
1734 if (count($no_link))
1737 $this->
ilias->raiseError($this->lng->txt(
"msg_obj_no_link"),$this->ilias->error_obj->MESSAGE);
1744 $clipboard[
"parent"] =
$_GET[
"ref_id"];
1745 $clipboard[
"cmd"] =
$ilCtrl->getCmd();
1749 $clipboard[
"ref_ids"][] =
$ref_id;
1755 if(count($clipboard[
"ref_ids"]) == 1)
1779 if (isset(
$_POST[
"cmd"][
"clear"]))
1783 $this->ctrl->redirect($this,
'render');
1789 global $rbacsystem, $rbacadmin, $rbacreview,
$log,
$tree, $ilObjDataCache,
$ilUser;
1791 $command =
$_SESSION[
'clipboard'][
'cmd'];
1792 if(!in_array($command, array(
'cut',
'link',
'copy')))
1794 $message = __METHOD__.
": cmd was neither 'cut', 'link' nor 'copy'; may be a hack attempt!";
1795 $this->
ilias->raiseError($message, $this->
ilias->error_obj->WARNING);
1798 if($command ==
'cut')
1804 if(!is_array(
$_POST[
'nodes']) || !count(
$_POST[
'nodes']))
1823 $folder_objects_cache = array();
1827 $current_parent_id =
$tree->getParentId($obj_data->getRefId());
1829 foreach(
$_POST[
'nodes'] as $folder_ref_id)
1831 if(!array_key_exists($folder_ref_id, $folder_objects_cache))
1837 if(!$rbacsystem->checkAccess(
'create', $folder_ref_id, $obj_data->getType()))
1839 $no_paste[] = sprintf($this->lng->txt(
'msg_no_perm_paste_object_in_folder'), $obj_data->getTitle().
' ['.$obj_data->getRefId().
']', $folder_objects_cache[$folder_ref_id]->getTitle().
' ['.$folder_objects_cache[$folder_ref_id]->getRefId().
']');
1843 if($folder_ref_id == $current_parent_id)
1845 $exists[] = sprintf($this->lng->txt(
'msg_obj_exists_in_folder'), $obj_data->getTitle().
' ['.$obj_data->getRefId().
']', $folder_objects_cache[$folder_ref_id]->getTitle().
' ['.$folder_objects_cache[$folder_ref_id]->getRefId().
']');
1852 $is_child[] = sprintf($this->lng->txt(
'msg_paste_object_not_in_itself'), $obj_data->getTitle().
' ['.$obj_data->getRefId().
']');
1856 if(!in_array($obj_data->getType(), array_keys($folder_objects_cache[$folder_ref_id]->getPossibleSubObjects())))
1858 $not_allowed_subobject[] = sprintf($this->lng->txt(
'msg_obj_may_not_contain_objects_of_type'), $folder_objects_cache[$folder_ref_id]->getTitle().
' ['.$folder_objects_cache[$folder_ref_id]->getRefId().
']',
1859 $GLOBALS[
'lng']->txt(
'obj_'.$obj_data->getType()));
1866 if(count($exists) && $command !=
"copy")
1868 $error .= implode(
'<br />', $exists);
1871 if(count($is_child))
1873 $error .= $error !=
'' ?
'<br />' :
'';
1874 $error .= implode(
'<br />', $is_child);
1877 if(count($not_allowed_subobject))
1879 $error .= $error !=
'' ?
'<br />' :
'';
1880 $error .= implode(
'<br />', $not_allowed_subobject);
1883 if(count($no_paste))
1885 $error .= $error !=
'' ?
'<br />' :
'';
1886 $error .= implode(
'<br />', $no_paste);
1908 $log->write(__METHOD__.
", cmd: ".$command);
1914 $ref_ids =
$_SESSION[
'clipboard'][
'ref_ids'];
1915 unset(
$_SESSION[
'clipboard'][
'ref_ids']);
1918 require_once(
'Services/Tracking/classes/class.ilChangeEvent.php');
1922 if($command ==
'copy')
1924 foreach(
$_POST[
'nodes'] as $folder_ref_id)
1928 $revIdMapping = array();
1931 if ($oldNode_data[
'parent'] == $folder_ref_id)
1933 require_once
'Modules/File/classes/class.ilObjFileAccess.php';
1935 $newRef = $this->
cloneNodes($ref_id, $folder_ref_id, $refIdMapping, $newTitle);
1939 $newRef = $this->
cloneNodes($ref_id, $folder_ref_id, $refIdMapping,
null);
1944 $newNode_data =
$tree->getNodeData($newRef);
1946 $oldNode_data[
'obj_id'],
$ilUser->getId());
1948 $ilObjDataCache->lookupObjId($folder_ref_id));
1958 if($command ==
'cut')
1960 foreach(
$_POST[
'nodes'] as $folder_ref_id)
1967 $rbacadmin->adjustMovedObjectPermissions(
$ref_id, $old_parent);
1969 include_once(
'./Services/AccessControl/classes/class.ilConditionHandler.php');
1974 $old_parent_data =
$tree->getNodeData($old_parent);
1976 $old_parent_data[
'obj_id']);
1978 $ilObjDataCache->lookupObjId($folder_ref_id));
1991 if($command ==
'link')
1993 $linked_to_folders = array();
1995 include_once
"Services/AccessControl/classes/class.ilRbacLog.php";
1998 foreach(
$_POST[
'nodes'] as $folder_ref_id)
2000 $linked_to_folders[$folder_ref_id] = $ilObjDataCache->lookupTitle($ilObjDataCache->lookupObjId($folder_ref_id));
2012 foreach($subnodes as $key => $subnode)
2016 $new_ref_id = $obj_data->createReference();
2017 $obj_data->putInTree($folder_ref_id);
2018 $obj_data->setPermissions($folder_ref_id);
2021 if($rbac_log_active)
2023 $rbac_log_roles = $rbacreview->getParentRoleIds($new_ref_id,
false);
2029 $node_data =
$tree->getNodeData($new_ref_id);
2031 $ilObjDataCache->lookupObjId($folder_ref_id));
2036 $log->write(__METHOD__.
', link finished');
2039 $linked_targets = array();
2040 if(count($linked_to_folders))
2042 require_once
'Services/Link/classes/class.ilLink.php';
2043 foreach($linked_to_folders as
$ref_id => $title)
2050 if(count($ref_ids) == 1)
2054 ilUtil::sendSuccess(sprintf($this->lng->txt(
'mgs_objects_linked_to_the_following_folders_' . $suffix), implode(
', ', $linked_targets)),
true);
2060 $this->ctrl->returnToParent($this);
2068 $_SESSION[
'paste_linked_repexpand'] = array();
2075 foreach((array)
$path as $node_id)
2077 if(!in_array($node_id,
$_SESSION[
'paste_linked_repexpand']))
2078 $_SESSION[
'paste_linked_repexpand'][] = $node_id;
2089 global $ilTabs, $ilToolbar;
2091 $ilTabs->setTabActive(
'view_content');
2093 if(!in_array(
$_SESSION[
'clipboard'][
'cmd'], array(
'link',
'copy',
'cut')))
2095 $message = __METHOD__.
": Unknown action.";
2096 $this->
ilias->raiseError($message, $this->
ilias->error_obj->WARNING);
2102 if ($exp->handleCommand())
2106 $output = $exp->getHTML();
2108 $txt_var = (
$cmd ==
"copy")
2114 $t->setFormAction($this->ctrl->getFormAction($this,
"performPasteIntoMultipleObjects"));
2116 include_once(
"./Services/UIComponent/Button/classes/class.ilSubmitButton.php");
2118 $b->setCaption($txt_var);
2119 $b->setCommand(
"performPasteIntoMultipleObjects");
2122 $t->addStickyItem($b);
2125 $this->lng->loadLanguageModule(
'obj');
2126 $t->addFormButton($this->lng->txt(
"obj_insert_into_clipboard"),
"keepObjectsInClipboard");
2128 $t->addFormButton($this->lng->txt(
"cancel"),
"cancelMoveLink");
2129 $t->setCloseFormTag(
false);
2131 $output =
$t->getHTML().$output;
2133 $t->setCloseFormTag(
true);
2134 $t->setOpenFormTag(
false);
2135 $output.=
"<br />".$t->getHTML();
2137 $this->tpl->setContent($output);
2198 $GLOBALS[
'ilCtrl']->returnToParent($this);
2207 $GLOBALS[
'ilCtrl']->returnToParent($this);
2216 $_SESSION[
'paste_copy_repexpand'] = array();
2223 foreach((array)
$path as $node_id)
2225 if(!in_array($node_id,
$_SESSION[
'paste_copy_repexpand']))
2226 $_SESSION[
'paste_copy_repexpand'][] = $node_id;
2285 $_SESSION[
'paste_cut_repexpand'] = array();
2292 foreach((array)
$path as $node_id)
2294 if(!in_array($node_id,
$_SESSION[
'paste_cut_repexpand']))
2295 $_SESSION[
'paste_cut_repexpand'][] = $node_id;
2358 global $rbacsystem, $rbacadmin, $rbacreview,
$log,
$tree;
2362 require_once(
'Services/Tracking/classes/class.ilChangeEvent.php');
2366 if (!in_array(
$_SESSION[
"clipboard"][
"cmd"],array(
"cut",
"link",
"copy")))
2368 $message = get_class($this).
"::pasteObject(): cmd was neither 'cut','link' or 'copy'; may be a hack attempt!";
2369 $this->
ilias->raiseError($message,$this->
ilias->error_obj->WARNING);
2375 $obj_data =& $this->
ilias->obj_factory->getInstanceByRefId($ref_id);
2378 if (!$rbacsystem->checkAccess(
'create',$this->object->getRefId(), $obj_data->getType()))
2381 $no_paste_titles[] = $obj_data->getTitle();
2385 if ($this->object->getRefId() == $this->tree->getParentId($obj_data->getRefId()))
2392 if ($this->tree->isGrandChild(
$ref_id,$this->object->getRefId()))
2397 if (
$ref_id == $this->object->getRefId())
2403 $obj_type = $obj_data->getType();
2405 if (!in_array($obj_type, array_keys($this->object->getPossibleSubObjects())))
2407 $not_allowed_subobject[] = $obj_data->getType();
2414 if (count($exists) &&
$_SESSION[
"clipboard"][
"cmd"] !=
"copy")
2417 $this->
ilias->raiseError($this->lng->txt(
"msg_obj_exists"),$this->ilias->error_obj->MESSAGE);
2420 if (count($is_child))
2422 $this->
ilias->raiseError($this->lng->txt(
"msg_not_in_itself").
" ".implode(
',',$is_child),
2423 $this->
ilias->error_obj->MESSAGE);
2426 if (count($not_allowed_subobject))
2428 $this->
ilias->raiseError($this->lng->txt(
"msg_may_not_contain").
" ".implode(
',',$not_allowed_subobject),
2429 $this->
ilias->error_obj->MESSAGE);
2432 if (count($no_paste))
2434 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_paste").
" ".
2435 implode(
',',$no_paste),$this->
ilias->error_obj->MESSAGE);
2439 $log->write(
"ilObjectGUI::pasteObject(), cmd: ".
$_SESSION[
"clipboard"][
"cmd"]);
2445 $ref_ids =
$_SESSION[
"clipboard"][
"ref_ids"];
2446 unset(
$_SESSION[
"clipboard"][
"ref_ids"]);
2450 if (
$_SESSION[
"clipboard"][
"cmd"] ==
"copy")
2455 if (count($ref_ids) == 1)
2457 $ilCtrl->setParameterByClass(
"ilobjectcopygui",
"target", $this->object->getRefId());
2458 $ilCtrl->setParameterByClass(
"ilobjectcopygui",
"source_id", $ref_ids[0]);
2459 $ilCtrl->redirectByClass(
"ilobjectcopygui",
"saveTarget");
2463 $ilCtrl->setParameterByClass(
"ilobjectcopygui",
"target", $this->object->getRefId());
2464 $ilCtrl->setParameterByClass(
"ilobjectcopygui",
"source_ids", implode($ref_ids,
"_"));
2465 $ilCtrl->redirectByClass(
"ilobjectcopygui",
"saveTarget");
2499 $log->write(
"ilObjectGUI::pasteObject(), copy finished");
2504 if (
$_SESSION[
"clipboard"][
"cmd"] ==
"cut")
2511 $this->tree->moveTree(
$ref_id,$this->object->getRefId());
2512 $rbacadmin->adjustMovedObjectPermissions(
$ref_id,$old_parent);
2514 include_once(
'./Services/AccessControl/classes/class.ilConditionHandler.php');
2519 $old_parent_data =
$tree->getNodeData($old_parent);
2521 $old_parent_data[
'obj_id']);
2523 $this->object->getId());
2530 if (
$_SESSION[
"clipboard"][
"cmd"] ==
"link")
2535 $top_node = $this->tree->getNodeData(
$ref_id);
2538 $subnodes[
$ref_id] = $this->tree->getSubtree($top_node);
2542 foreach ($subnodes as $key => $subnode)
2545 $obj_data =& $this->
ilias->obj_factory->getInstanceByRefId($key);
2546 $new_ref_id = $obj_data->createReference();
2547 $obj_data->putInTree(
$_GET[
"ref_id"]);
2548 $obj_data->setPermissions(
$_GET[
"ref_id"]);
2551 $node_data =
$tree->getNodeData($new_ref_id);
2553 $this->object->getId());
2558 $log->write(
"ilObjectGUI::pasteObject(), link finished");
2565 $last_cmd =
$_SESSION[
"clipboard"][
"cmd"];
2571 if ($last_cmd ==
"cut")
2576 else if ($last_cmd ==
"copy")
2580 else if ($last_cmd ==
'link')
2586 $this->ctrl->returnToParent($this);
2679 $ilTabs->activateTab(
"clipboard");
2684 $message = sprintf(
'%s::clipboardObject(): Illegal access. Clipboard variable is empty!', get_class($this));
2686 $ilErr->raiseError($this->lng->txt(
"permission_denied"),
$ilErr->WARNING);
2698 "type" => $tmp_obj->getType(),
2699 "type_txt" => $this->lng->txt(
"obj_".$tmp_obj->getType()),
2700 "title" => $tmp_obj->getTitle(),
2701 "cmd" => (
$_SESSION[
"clipboard"][
"cmd"] ==
"cut") ? $this->lng->txt(
"move") :$this->lng->txt(
$_SESSION[
"clipboard"][
"cmd"]),
2703 "obj_id" => $tmp_obj->getId()
2709 include_once(
"./Services/Object/classes/class.ilObjClipboardTableGUI.php");
2714 if (count(
$data) > 0)
2716 $ilToolbar->setFormAction(
$ilCtrl->getFormAction($this));
2717 $ilToolbar->addFormButton(
$lng->txt(
"insert_object_here"),
2719 $ilToolbar->addFormButton(
$lng->txt(
"clear_clipboard"),
2733 if ($this->
ilias->getSetting(
"custom_icons"))
2788 $custom_icon = $this->
object->getCustomIconPath();
2794 $title->setTitle($this->lng->txt(
"icon_settings"));
2800 $a_form->addItem($title);
2824 $caption = $this->lng->txt(
"cont_custom_icon");
2826 $icon->setSuffixes(array(
"svg"));
2827 $icon->setImage($custom_icon);
2830 $a_form->addItem($icon);
2834 $title->addSubItem($icon);
2864 $this->object->getRefId() &&
2865 !$ilAccess->checkAccess(
"write",
"", $this->object->getRefId()))
2870 return $_SESSION[
"il_cont_admin_panel"];
2879 parent::setColumnSettings($column_gui);
2881 if ($ilAccess->checkAccess(
"write",
"", $this->object->getRefId()) &&
2882 $this->isActiveAdministrationPanel() &&
2883 $this->allowBlocksMoving())
2885 $column_gui->setEnableMovement(
true);
2888 $column_gui->setRepositoryItems(
2889 $this->object->getSubItems($this->isActiveAdministrationPanel(),
true));
2893 if ($ilAccess->checkAccess(
"write",
"", $this->object->getRefId()))
2895 $column_gui->setBlockProperty(
"news",
"settings",
true);
2897 $column_gui->setBlockProperty(
"news",
"default_visibility_option",
true);
2898 $column_gui->setBlockProperty(
"news",
"hide_news_block_option",
true);
2903 $column_gui->setAdminCommands(
true);
2955 include_once(
'Services/CopyWizard/classes/class.ilCopyWizardPageFactory.php');
2957 global $ilObjDataCache,
$tree;
2962 if(isset(
$_SESSION[
'wizard_search_title']))
2964 $this->searchCloneSourceObject();
2974 $this->ctrl->setParameter($this,
'clone_source',(
int)
$_REQUEST[
'clone_source']);
2975 $this->ctrl->setParameter($this,
'new_type',$new_type);
2979 $this->tpl->addJavaScript(
'./Services/CopyWizard/js/ilContainer.js');
2980 $this->tpl->setVariable(
'BODY_ATTRIBUTES',
'onload="ilDisableChilds(\'cmd\');"');
2983 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.container_wizard_page.html',
2984 "Services/Container");
2985 $this->tpl->setVariable(
'FORMACTION',$this->ctrl->getFormAction($this));
2987 $this->tpl->setVariable(
'ALT_IMG',$this->lng->txt(
'obj_'.$new_type));
2988 $this->tpl->setVariable(
'TXT_DUPLICATE',$this->lng->txt($new_type.
'_wizard_page'));
2989 $this->tpl->setVariable(
'INFO_DUPLICATE',$this->lng->txt($new_type.
'_copy_threads_info'));
2990 $this->tpl->setVariable(
'BTN_COPY',$this->lng->txt(
'obj_'.$new_type.
'_duplicate'));
2991 $this->tpl->setVariable(
'BTN_BACK',$this->lng->txt(
'btn_back'));
2992 if(isset(
$_SESSION[
'wizard_search_title']))
2994 $this->tpl->setVariable(
'CMD_BACK',
'searchCloneSource');
2998 $this->tpl->setVariable(
'CMD_BACK',
'create');
3001 $this->tpl->setVariable(
'BTN_TREE',$this->lng->txt(
'treeview'));
3002 $this->tpl->setVariable(
'BTN_LIST',$this->lng->txt(
'flatview'));
3010 foreach($subnodes =
$tree->getSubtree($source_node =
$tree->getNodeData($source_id),
true) as $node)
3018 if($node[
'type'] ==
'rolf')
3025 for($i = $source_node[
'depth'];$i < $node[
'depth']; $i++)
3027 $this->tpl->touchBlock(
'padding');
3028 $this->tpl->touchBlock(
'end_padding');
3032 $copy_wizard_page->fillTreeSelection($node[
'ref_id'],$node[
'type'],$node[
'depth']);
3034 $this->tpl->setCurrentBlock(
'tree_row');
3036 $this->tpl->setVariable(
'TREE_ALT_IMG',$this->lng->txt(
'obj_'.$node[
'type']));
3037 $this->tpl->setVariable(
'TREE_TITLE',$node[
'title']);
3038 $this->tpl->parseCurrentBlock();
3042 $this->tpl->setCurrentBlock(
'no_content');
3043 $this->tpl->setVariable(
'TXT_NO_CONTENT',$this->lng->txt(
'container_no_items'));
3044 $this->tpl->parseCurrentBlock();
3048 $this->tpl->setCurrentBlock(
'tree_footer');
3049 $this->tpl->setVariable(
'TXT_COPY_ALL',$this->lng->txt(
'copy_all'));
3050 $this->tpl->setVariable(
'TXT_LINK_ALL',$this->lng->txt(
'link_all'));
3051 $this->tpl->setVariable(
'TXT_OMIT_ALL',$this->lng->txt(
'omit_all'));
3052 $this->tpl->parseCurrentBlock();
3058 foreach(
$tree->getSubTreeTypes($source_id,array(
'rolf',
'crs')) as $type)
3061 if(strlen(
$html = $copy_wizard_page->getWizardPageBlockHTML()))
3063 $this->tpl->setCurrentBlock(
'obj_row');
3064 $this->tpl->setVariable(
'ITEM_BLOCK',
$html);
3065 $this->tpl->parseCurrentBlock();
3082 include_once(
'./Services/Link/classes/class.ilLink.php');
3083 include_once(
'Services/CopyWizard/classes/class.ilCopyWizardOptions.php');
3089 $clone_source = (int)
$_REQUEST[
'clone_source'];
3091 if(!$rbacsystem->checkAccess(
'create',
$ref_id,$new_type))
3093 $ilErr->raiseError($this->lng->txt(
'permission_denied'));
3101 if(!$ilAccess->checkAccess(
'write',
'', $clone_source,$new_type))
3103 $ilErr->raiseError($this->lng->txt(
'permission_denied'));
3110 include_once
'./Services/CopyWizard/classes/class.ilCopyWizardOptions.php';
3114 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id",
$result[
'ref_id']);
3115 $ilCtrl->redirectByClass(
"ilrepositorygui",
"");
3120 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id",
$ref_id);
3121 $ilCtrl->redirectByClass(
"ilrepositorygui",
"");
3135 include_once(
'Services/Container/classes/class.ilContainerSorting.php');
3139 $positions = str_replace(
',',
'.',
$_POST[
'position']);
3141 $sorting->savePost($positions);
3143 $this->ctrl->redirect($this,
"editOrder");
3163 $srcObj =&
$ilias->obj_factory->getInstanceByRefId($srcRef);
3164 error_log(__METHOD__.
' cloning srcRef='.$srcRef.
' dstRef='.$dstRef.
'...');
3165 $newRef = $srcObj->cloneObject($dstRef)->getRefId();
3166 error_log(__METHOD__.
' ...cloning... newRef='.$newRef.
'...');
3171 if (! is_null($newName))
3173 $newObj =&
$ilias->obj_factory->getInstanceByRefId($newRef);
3174 $newObj->setTitle($newName);
3179 $mapping[$newRef] = $srcRef;
3182 $children =
$tree->getChilds($srcRef);
3183 foreach (
$tree->getChilds($srcRef) as $child)
3187 if ($child[
"type"] !=
'rolf')
3189 $this->
cloneNodes($child[
"ref_id"],$newRef,$mapping);
3193 if (count($rolf =
$tree->getChildsByType($newRef,
"rolf")))
3195 $mapping[$rolf[0][
"ref_id"]] = $child[
"ref_id"];
3199 error_log(__METHOD__.
' ...cloned srcRef='.$srcRef.
' dstRef='.$dstRef.
' newRef='.$newRef);
3213 $a_item_list_gui->addCustomProperty(
$lng->txt(
'path'),
3214 ilContainer::buildPath($a_item_data[
'ref_id'], $this->object->getRefId()),
3226 $path_arr =
$tree->getPathFull($a_ref_id, $a_course_ref_id);
3228 foreach($path_arr as
$data)
3249 global $ilTabs,
$tpl;
3254 $tpl->setContent($this->form->getHTML());
3256 $ilTabs->activateTab(
"obj_sty");
3266 $tpl->setTreeFlatIcon(
"",
"");
3267 $ilTabs->clearTargets();
3272 $ilTabs->setBackTarget(
$lng->txt(
"cntr_back_to_old_editor"),
3273 $ilCtrl->getLinkTarget($this,
"switchToOldEditor"),
"_top");
3277 $ilTabs->setBackTarget(
$lng->txt(
"back"),
"./goto.php?target=".$this->object->getType().
"_".
3278 $this->object->getRefId(),
"_top");
3281 include_once(
"./Services/Container/classes/class.ilContainerPageGUI.php");
3283 $style_id = $this->
object->getStyleSheetId();
3286 $page_gui->setStyleId($style_id);
3292 $page_gui->setTabHook($this,
"addPageTabs");
3294 $ilTabs->setTabActive(
"obj_sty");
3296 include_once(
"./Services/Style/classes/class.ilObjStyleSheet.php");
3297 $lng->loadLanguageModule(
"style");
3299 include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
3302 $fixed_style =
$ilSetting->get(
"fixed_content_style_id");
3305 if ($fixed_style > 0)
3309 $this->lng->txt(
"global_fixed").
")");
3310 $this->form->addItem($st);
3317 $st_styles[0] = $this->lng->txt(
"default");
3327 $this->form->addItem($st);
3332 $this->form->addCommandButton(
"editStyle",
3333 $lng->txt(
"style_edit_style"));
3334 $this->form->addCommandButton(
"deleteStyle",
3335 $lng->txt(
"style_delete_style"));
3343 $st_styles,
false,
true);
3345 $style_sel->setOptions($st_styles);
3346 $style_sel->setValue($style_id);
3347 $this->form->addItem($style_sel);
3349 $this->form->addCommandButton(
"saveStyleSettings",
3351 $this->form->addCommandButton(
"createStyle",
3352 $lng->txt(
"sty_create_ind_style"));
3355 $this->form->setTitle(
$lng->txt(
"obj_sty"));
3356 $this->form->setFormAction(
$ilCtrl->getFormAction($this));
3366 $ilCtrl->redirectByClass(
"ilobjstylesheetgui",
"create");
3376 $ilCtrl->redirectByClass(
"ilobjstylesheetgui",
"edit");
3386 $ilCtrl->redirectByClass(
"ilobjstylesheetgui",
"delete");
3396 include_once(
"./Services/Style/classes/class.ilObjStyleSheet.php");
3397 if (
$ilSetting->get(
"fixed_content_style_id") <= 0 &&
3399 || $this->object->getStyleSheetId() == 0))
3402 $this->
object->update();
3405 $this->ctrl->redirect($this,
"editStyleProperties");
3422 include_once
'Services/Object/classes/class.ilObjectListGUIFactory.php';
3424 $item_list_gui->setContainerObject($this);
3426 $item_list_gui->enableComments(
true);
3427 $item_list_gui->enableNotes(
true);
3428 $item_list_gui->enableTags(
true);
3435 global $ilPluginAdmin;
3436 $pl_names = $ilPluginAdmin->getActivePluginsForSlot(
IL_COMP_SERVICE,
"UIComponent",
"uihk");
3437 foreach ($pl_names as $pl)
3440 $gui_class = $ui_plugin->getUIClassInstance();
3441 $resp = $gui_class->getHTML(
"Services/Container",
"async_item_list", array(
"html" =>
$html));
3444 $html = $gui_class->modifyHTML(
$html, $resp);
3458 global
$tpl,$ilToolbar;
3466 include_once (
'Services/WebDAV/classes/class.ilDAVServer.php');
3468 $ilToolbar->addButton(
3469 $this->lng->txt(
'mount_webfolder'),
3470 $davServer->getMountURI($this->object->getRefId()),
3473 $davServer->getFolderURI($this->object->getRefId())
3476 $tpl->setContent($this->form->getHTML());
3485 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
3487 $this->form->setFormAction($this->ctrl->getFormAction($this));
3490 $ipass =
new ilPasswordInputGUI($this->lng->txt(
"desired_password"),
"new_password");
3491 $ipass->setRequired(
true);
3493 $this->form->addItem($ipass);
3494 $this->form->addCommandButton(
"savePassword", $this->lng->txt(
"save"));
3495 $this->form->addCommandButton(
'cancel', $this->lng->txt(
'cancel'));
3497 $this->form->setTitle($this->lng->txt(
"chg_ilias_and_webfolder_password"));
3498 $this->form->setFormAction($this->ctrl->getFormAction($this));
3512 if($form->checkInput())
3514 $ilUser->resetPassword($this->form->getInput(
'new_password'),$this->form->getInput(
'new_password'));
3519 $form->setValuesByPost();
3535 $item_data = $this->
object->getSubItems(
false,
false, (
int)
$_GET[
"child_ref_id"]);
3539 include_once
'./Modules/Session/classes/class.ilEventItems.php';
3541 if(in_array((
int)
$_GET[
"child_ref_id"], $event_items))
3543 include_once(
'./Services/Object/classes/class.ilObjectActivation.php');
3544 foreach ($this->object->items[
"sess"] as $id)
3547 foreach($items as $event_item)
3549 if ($event_item[
"child"] == (
int)
$_GET[
"child_ref_id"])
3552 if((
int)
$_GET[
"parent_ref_id"])
3554 $event_item[
"parent"] = (int)
$_GET[
"parent_ref_id"];
3556 $html = $container_view->renderItem($event_item);
3565 foreach ($this->object->items[
"_all"] as $id)
3567 if ($id[
"child"] == (
int)
$_GET[
"child_ref_id"])
3569 $html = $container_view->renderItem($id);
3579 echo
$tpl->getOnLoadCodeForAsynch();
3594 $lg = parent::initHeaderAction($a_sub_type, $a_sub_id);
3597 include_once
'./Services/WebServices/FileManager/classes/class.ilFMSettings.php';
3602 $lg->addCustomCommand($this->ctrl->getLinkTarget($this,
'fileManagerLaunch'),
'fm_start',
'_blank');
3616 $tpl =
new ilTemplate(
'tpl.fm_launch_ws.html',
false,
false,
'Services/WebServices/FileManager');
3617 $tpl->setVariable(
'JNLP_URL',ILIAS_HTTP_PATH.
'/Services/WebServices/FileManager/lib/dist/FileManager.jnlp');
3618 $tpl->setVariable(
'SESSION_ID',
$_COOKIE[
'PHPSESSID'].
'::'.CLIENT_ID);
3620 $tpl->setVariable(
'REF_ID', $this->object->getRefId());
3621 $tpl->setVariable(
'WSDL_URI', ILIAS_HTTP_PATH.
'/webservice/soap/server.php?wsdl');
3623 $tpl->setVariable(
'REST_URI',ILIAS_HTTP_PATH.
'/Services/WebServices/Rest/server.php');
3624 $tpl->setVariable(
'FILE_LOCKS',0);
3627 include_once(
"./Modules/SystemFolder/classes/class.ilObjSystemFolder.php");
3628 $header_top_title = ilObjSystemFolder::_getHeaderTitle();
3629 $tpl->setVariable(
'HEADER_TITLE',$header_top_title ? $header_top_title :
'');
3643 if (!empty(
$_GET[
"set_mode"]))
3646 if (
$ilUser->getId() != ANONYMOUS_USER_ID)
3655 if (
$ilUser->getId() != ANONYMOUS_USER_ID)
3667 $mode = (
$_SESSION[
"il_rep_mode"] !=
"")
3672 if ($mode ==
"tree" && (strtolower(
$_GET[
"baseClass"]) !=
"iladministrationgui"))
3674 include_once(
"./Services/Repository/classes/class.ilRepositoryExplorerGUI.php");
3676 if (!$exp->handleCommand())
3678 $tpl->setLeftNavContent($exp->getHTML());
3690 include_once(
'Services/Container/classes/class.ilContainerSortingSettings.php');
3691 include_once
'./Services/Container/classes/class.ilContainer.php';
3699 $sort_inherit->setTitle(
3700 $this->lng->txt(
'sort_inherit_prefix').
3701 ' ('.ilContainerSortingSettings::sortModeToString(
3703 $this->object->getId())).
') '
3706 $sort_inherit->setInfo($this->lng->txt(
'sorting_info_inherit'));
3707 $sort->addOption($sort_inherit);
3712 $this->lng->txt(
'sorting_title_header'),
3715 $sort_title->setInfo($this->lng->txt(
'sorting_info_title'));
3718 $sort->addOption($sort_title);
3723 $sort_activation->setInfo($this->lng->txt(
'sorting_creation_info'));
3725 $sort->addOption($sort_activation);
3730 $sort_activation->setInfo($this->lng->txt(
'crs_sort_timing_info'));
3732 $sort->addOption($sort_activation);
3737 $this->lng->txt(
'sorting_manual_header'),
3740 $sort_manual->setInfo($this->lng->txt(
'sorting_info_manual'));
3742 $sort->addOption($sort_manual);
3746 if(in_array($settings->getSortMode(), $a_sorting_settings))
3748 $sort->setValue($settings->getSortMode());
3765 if($a_prefix ==
'manual')
3767 $txt = $this->lng->txt(
'sorting_new_items_direction');
3771 $txt = $this->lng->txt(
'sorting_direction');
3776 $direction->setRequired(TRUE);
3780 $this->lng->txt(
'sorting_asc'),
3783 $direction->addOption($asc);
3787 $this->lng->txt(
'sorting_desc'),
3790 $direction->addOption($desc);
3792 $element->addSubItem($direction);
3802 $a_sorting_settings)
3804 $position =
new ilRadioGroupInputGUI($this->lng->txt(
'sorting_new_items_position'),$a_prefix.
'_new_items_position');
3806 $position->setRequired(TRUE);
3810 $this->lng->txt(
'sorting_new_items_at_top'),
3814 $position->addOption($new_top);
3818 $this->lng->txt(
'sorting_new_items_at_bottom'),
3822 $position->addOption($new_bottom);
3824 $element->addSubItem($position);
3826 $order =
new ilRadioGroupInputGUI($this->lng->txt(
'sorting_new_items_order'),$a_prefix.
'_new_items_order');
3828 $order->setRequired(TRUE);
3834 $this->lng->txt(
'sorting_title_header'),
3838 $order->addOption($new_title);
3845 $this->lng->txt(
'sorting_creation_header'),
3849 $order->addOption($new_creation);
3857 $this->lng->txt(
'crs_sort_activation'),
3861 $order->addOption($new_activation);
3864 $element->addSubItem($order);
3877 include_once(
'Services/Container/classes/class.ilContainerSortingSettings.php');
3879 $settings->setSortMode($form->
getInput(
"sorting"));
3884 $settings->setSortDirection($form->
getInput(
'title_sorting_direction'));
3887 $settings->setSortDirection($form->
getInput(
'activation_sorting_direction'));
3890 $settings->setSortDirection($form->
getInput(
'creation_sorting_direction'));
3893 $settings->setSortNewItemsPosition($form->
getInput(
'manual_new_items_position'));
3894 $settings->setSortNewItemsOrder($form->
getInput(
'manual_new_items_order'));
3895 $settings->setSortDirection($form->
getInput(
'manual_sorting_direction'));
3899 $settings->update();
3911 include_once(
"./Services/Repository/classes/class.ilRepUtilGUI.php");
3913 $ru->showTrashTable(
$_GET[
"ref_id"]);
3923 global
$log, $ilAppEventHandler,
$lng;
3925 include_once(
"./Services/Repository/classes/class.ilRepUtilGUI.php");
3927 $ru->removeObjectsFromSystem(
$_POST[
"trash_id"]);
3928 $this->ctrl->redirect($this,
"trash");
3936 include_once(
"./Services/Repository/classes/class.ilRepUtilGUI.php");
3938 $ru->restoreObjects(
$_GET[
"ref_id"],
$_POST[
"trash_id"]);
3939 $this->ctrl->redirect($this,
"trash");
3948 include_once(
"./Services/Repository/classes/class.ilRepUtilGUI.php");
3950 if(!isset(
$_POST[
"trash_id"]))
3953 $this->ctrl->redirect($this,
"trash");
3957 $ru->confirmRemoveFromSystemObject(
$_POST[
"trash_id"]);
3966 include_once(
"./Services/Repository/classes/class.ilRepositorySelectorExplorerGUI.php");
3972 $exp->setTypeWhiteList(array(
"root",
"cat",
"grp",
"crs",
"fold"));
3973 if (
$cmd ==
"link") {
3974 $exp->setSelectMode(
"nodes",
true);
3977 $exp->setSelectMode(
"nodes[]",
false);
_recordWriteEvent($obj_id, $usr_id, $action, $parent_obj_id=null)
Records a write event.
_catchupWriteEvents($obj_id, $usr_id, $timestamp=null)
Catches up with all write events which occured before the specified timestamp.
_recordReadEvent($a_type, $a_ref_id, $obj_id, $usr_id, $isCatchupWriteEvents=true, $a_ext_rc=false, $a_ext_time=false)
Records a read event and catches up with write events.
static _adjustMovedObjectConditions($a_ref_id)
In the moment it is not allowed to create preconditions on objects that are located outside of a cour...
Shows all items grouped by type.
downloadMultipleObjects($a_ref_ids)
clearObject()
clear clipboard and go back to last object
saveSortingObject()
Save Sorting.
afterUpdate()
Post (successful) object update hook.
editPageFrameObject()
show page editor frameset
modifyItemGUI(&$a_item_list_gui, $a_item_data, $a_show_path)
Modify Item ListGUI for presentation in container.
showAdministrationPanel(&$tpl)
show administration panel
clipboardObject()
Copy object(s) out from a container and write the information to clipboard It is not possible to copy...
initAndDisplayMoveIntoObjectObject()
setColumnSettings($column_gui)
May be overwritten in subclasses.
getAsynchItemListObject()
Get item list command drop down asynchronously.
isActiveAdministrationPanel()
savePasswordObject()
Save password.
getTabs(&$tabs_gui)
common tabs for all container objects (should be called at the end of child getTabs() method
cloneWizardPageTreeObject()
@access public
setContentSubTabs()
Set content sub tabs.
initFormPasswordInstruction()
Init password form.
addStandardRow(&$a_tpl, $a_html, $a_item_ref_id="", $a_item_obj_id="", $a_image_type="")
adds a standard row to a block template
& forwardToPageObject()
forward command to page object
getEditFormValues()
Get values for edit form.
disableAdministrationPanelObject()
enable administration panel
trashObject()
Show trash content of object.
initAndDisplayCopyIntoMultipleObjectsObject()
static _buildPath($a_ref_id, $a_course_ref_id)
build path
initStylePropertiesForm()
Init style properties form.
cutObject()
cut object(s) out from a container and write the information to clipboard
confirmRemoveFromSystemObject()
confirmation screen remove from system
showPasteTreeObject()
Show paste tree.
getContentGUI()
Get content gui object.
enableMultiDownloadObject()
initSortingForm(ilPropertyFormGUI $form, array $a_sorting_settings)
Append sorting settings to property form.
performPasteIntoMultipleObjectsObject()
addHeaderRow(&$a_tpl, $a_type, $a_show_image=true)
adds a header row to a block template
cancelMoveLinkObject()
Cancel move|link empty clipboard and return to parent.
allowBlocksConfigure()
Standard is to allow blocks configuration.
isActiveOrdering()
Check if ordering is enabled.
cloneNodes($srcRef, $dstRef, &$mapping, $newName=null)
Recursively clones all nodes of the RBAC tree.
getContainerPageHTML()
Get container page HTML.
initManualSortingOptionForm(ilContainerSortingSettings $settings, $element, $a_prefix, $a_sorting_settings)
Add manual sorting options.
clearAdminCommandsDetermination()
cleaer administration commands determination
switchToOldEditorObject()
Switch to old page editor.
addStandardContainerSubTabs($a_include_view=true)
Add standar container subtabs for view, manage, oderdering and text/media editor link.
static copyFile($obj_id, $title, $tmpdir)
& newBlockTemplate()
determin admin commands
redrawListItemObject()
Redraw a list item (ajax)
undeleteObject()
Get objects back from trash.
prepareOutput($a_show_subobjects=true)
prepare output
showPasswordInstructionObject($a_init=true)
Show webdav password instruction.
fileManagerLaunchObject()
Launch jnlp.
ilContainerGUI($a_data, $a_id, $a_call_by_reference=true, $a_prepare_output=true)
Constructor @access public.
pasteObject()
paste object from clipboard to current place Depending on the chosen command the object(s) are linked...
editStylePropertiesObject()
Edit style properties.
__showTimingsButton(&$tpl)
& executeCommand()
execute command note: this method is overwritten in all container objects
editStyleObject()
Edit Style.
saveStyleSettingsObject()
Save style settings.
setPageEditorTabs()
Add page editor tabs.
useNewEditorObject()
Use new editor (-> delete xhtml content page)
initSortingDirectionForm(ilContainerSortingSettings $sorting_settings, $element, $a_prefix)
Add sorting direction.
renderObject()
render the object
addPageTabs()
Add page tabs.
showPermanentLink(&$tpl)
show permanent link
cloneWizardPageObject($a_tree_view=true)
Show clone wizard page for container objects.
initAndDisplayLinkIntoMultipleObjectsObject()
addMessageRow(&$a_tpl, $a_message, $a_type)
add message row
editOrderObject()
Edit order.
setTitleAndDescription()
called by prepare output
initHeaderAction($a_sub_type=null, $a_sub_id=null)
Add file manager link.
forwardToStyleSheet()
Forward to style object.
showCustomIconsEditing($a_input_colspan=1, ilPropertyFormGUI $a_form=null, $a_as_section=true)
show edit section of custom icons for container
isActiveItemOrdering()
Check if item ordering is enabled.
cancelPageContentObject()
allowBlocksMoving()
Standard is to allow blocks moving.
enableAdministrationPanelObject()
enable administration panel
copyObject()
Copy object(s) out from a container and write the information to clipboard It is not possible to copy...
showPossibleSubObjects()
show possible sub objects selection list
linkObject()
create an new reference of an object in tree it's like a hard link of unix
deleteStyleObject()
Delete Style.
cloneWizardPageListObject()
@access public
switchToStdEditorObject()
Switch to standard page editor.
createStyleObject()
Create Style.
editPageContentObject()
edit page content (for repository root node and categories)
keepObjectsInClipboardObject()
Keep objects in the clipboard.
saveSortingSettings(ilPropertyFormGUI $form)
Save sorting settings.
removeFromSystemObject()
remove objects from trash bin and all entries therefore every object needs a specific deleteObject() ...
cloneAllObject()
Clone all object Overwritten method for copying container objects.
static recurseFolder($refid, $title, $tmpdir)
private functions which iterates through all folders and files and create an according file structure...
GUI class for course objective view.
Container page GUI class.
Shows all items in one block.
Shows all items in one block.
static lookupSortModeFromParentContainer($a_obj_id)
Lookup sort mode from parent container.
getSortNewItemsPosition()
GET new item position.
getSortNewItemsOrder()
GET new item order.
static _lookupSortMode($a_obj_id)
lookup sort mode
getSortDirection()
Get sort direction.
static _getInstance($a_obj_id)
get instance by obj_id
_lookupIconPath($a_id, $a_size="big")
lookup icon path
const SORT_DIRECTION_DESC
const SORT_NEW_ITEMS_ORDER_ACTIVATION
const SORT_NEW_ITEMS_ORDER_TITLE
_lookupContainerSetting($a_id, $a_keyword, $a_default_value=NULL)
Lookup a container setting.
const SORT_NEW_ITEMS_ORDER_CREATION
_writeContainerSetting($a_id, $a_keyword, $a_value)
const SORT_NEW_ITEMS_POSITION_BOTTOM
const SORT_NEW_ITEMS_POSITION_TOP
static _isFinished($a_copy_id)
check if copy is finished
static _getInstanceByType($a_source_id, $a_item_type)
Get instance by type.
static _isActionsVisible()
Static getter.
static getInstance()
Get singelton iunstance.
static _isActive()
Static getter.
static addToDesktop()
Add desktop item @access public.
static removeFromDesktop()
Remove item from personal desktop @access public.
GUI class for didactic template settings inside repository objects.
static lookupTemplateId($a_ref_id)
Lookup template id @global ilDB $ilDB.
_getItemsOfContainer($a_ref_id)
static getInstance()
Get singleton instance.
Class to report exception.
static _getLink($a_ref_id, $a_type='', $a_params=array(), $append="")
static showMemberViewSwitch($a_ref_id)
Show member view switch.
static getInstance()
Get instance.
This class represents a non editable value in a property form.
& _getUsedHTMLTagsAsString($a_module="")
Returns a string of all allowed HTML tags for text editing.
static _appendNumberOfCopyToFilename($a_file_name, $nth_copy=null, $a_handle_extension=false)
Appends the text " - Copy" to a filename in the language of the current user.
static _lookupAbsolutePath($obj_id, $a_version=null)
return absolute path for version
Class ilObjStyleSheetGUI.
getContentStylePath($a_style_id)
get content style path
_getStandardStyles($a_exclude_default_style=false, $a_include_deactivated=false, $a_scope=0)
Get standard styles.
static getEffectiveContentStyleId($a_style_id, $a_type="")
Get effective Style Id.
getSyntaxStylePath()
get syntax style path
_lookupStandard($a_id)
Lookup standard flag.
static getItemsByEvent($a_event_id)
Get session material / event items.
Render add new item selector.
getInstanceByRefId($a_ref_id, $stop_on_error=true)
get an instance of an Ilias object by reference id
Class ilObjectGUI Basic methods of all Output classes.
ilObjectGUI($a_data, $a_id=0, $a_call_by_reference=true, $a_prepare_output=true)
Constructor @access public.
checkPermission($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission and redirect on error.
getDidacticTemplateVar($a_type)
Get didactic template setting from creation screen.
getTitlesByRefId($a_ref_ids)
get Titles of objects this method is used for error messages in methods cut/copy/paste
prepareOutput()
prepare output
getCreationMode()
get creation mode
createObject()
create new object form
& _getListGUIByType($a_type)
static getInstance($a_obj_id)
Get instance.
static _lookupObjId($a_id)
static _lookupTitle($a_id)
lookup object title
_isInTrash($a_ref_id)
checks wether object is in trash
static _lookupObjectId($a_ref_id)
lookup object id
static _getIcon($a_obj_id="", $a_size="big", $a_type="", $a_offline=false)
Get icon for repository item.
static _lookupType($a_id, $a_reference=false)
lookup object type
static _exists($a_parent_type, $a_id, $a_lang="", $a_no_cache=false)
Checks whether page exists.
_existsAndNotEmpty($a_parent_type, $a_id, $a_lang="-")
checks whether page exists and is not empty (may return true on some empty pages)
static getPluginObject($a_ctype, $a_cname, $a_slot_id, $a_pname)
Get Plugin Object.
static _getRTEClassname()
_cleanupMediaObjectUsage($a_text, $a_usage_type, $a_usage_id)
synchronises appearances of media objects in $a_text with media object usage table
This class represents an option in a radio group.
static add($a_action, $a_ref_id, array $a_diff, $a_source_ref_id=false)
static gatherFaPa($a_ref_id, array $a_role_ids, $a_add_action=false)
Repository GUI Utilities.
Repository explorer GUI class.
Explorer for selecting repository items.
special template class to simplify handling of ITX/PEAR
static delDir($a_dir, $a_clean_only=false)
removes a dir and all its content (subdirs and files) recursively
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static getStyleSheetLocation($mode="output", $a_css_name="", $a_css_location="")
get full style sheet file name (path inclusive) of current user
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static zip($a_dir, $a_file, $compress_content=false)
static ilTempnam($a_temp_path=null)
Create a temporary file in an ILIAS writable directory.
static getASCIIFilename($a_filename)
convert utf8 to ascii filename
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static formSelect($selected, $varname, $options, $multiple=false, $direct_text=false, $size="0", $style_class="", $attribs="", $disabled=false)
Builds a select form field with options and shows the selected option first.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
static deliverFile($a_file, $a_filename, $a_mime='', $isInline=false, $removeAfterDelivery=false, $a_exit_after=true)
deliver file for download via browser.
static prepareFormOutput($a_str, $a_strip=false)
prepares string output for html forms @access public
static makeDir($a_dir)
creates a new directory and inherits all filesystem permissions of the parent directory You may pass ...
$GLOBALS['PHPCAS_CLIENT']
This global variable is used by the interface class phpCAS.
Interface for gui classes (e.g ilLuceneSearchGUI) that offer add/remove to/from desktop.
redirection script todo: (a better solution should control the processing via a xml file)
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
if(!is_array($argv)) $options