4 require_once
"./Services/Object/classes/class.ilObjectGUI.php";
5 require_once
"./Services/Container/classes/class.ilContainer.php";
6 include_once
'./Services/PersonalDesktop/interfaces/interface.ilDesktopItemHandling.php';
29 function __construct($a_data, $a_id, $a_call_by_reference =
true, $a_prepare_output =
true)
31 global $rbacsystem,
$lng;
33 $this->rbacsystem = $rbacsystem;
35 $lng->loadLanguageModule(
"cntr");
36 $lng->loadLanguageModule(
'cont');
45 parent::__construct($a_data, $a_id, $a_call_by_reference,
false);
56 $next_class = $this->ctrl->getNextClass();
57 $cmd = $this->ctrl->getCmd(
"render");
62 case "ilcontainerpagegui":
63 if (
$_GET[
"redirectSource"] !=
"ilinternallinkgui")
66 $tpl->setContent(
$ret);
74 case "ilobjstylesheetgui":
94 $values = parent::getEditFormValues();
96 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateObjSettings.php';
97 $values[
'didactic_type'] =
98 'dtpl_'.ilDidacticTemplateObjSettings::lookupTemplateId($this->
object->getRefId());
109 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateObjSettings.php';
115 if($new_tpl_id != $current_tpl_id)
117 $_REQUEST[
'tplid'] = $new_tpl_id;
120 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateGUI.php';
121 $this->ctrl->setReturn($this,
'edit');
122 $this->ctrl->setCmdClass(
'ildidactictemplategui');
123 $this->ctrl->setCmd(
'confirmTemplateSwitch');
125 return $this->ctrl->forwardCommand($dtpl_gui);
127 parent::afterUpdate();
138 $ilTabs->clearTargets();
140 $cmd = $ilCtrl->getCmd();
141 include_once (
"./Services/Style/Content/classes/class.ilObjStyleSheetGUI.php");
142 $this->ctrl->setReturn($this,
"editStyleProperties");
145 if (
$cmd ==
"create" ||
$_GET[
"new_type"]==
"sty")
147 $style_gui->setCreationMode(
true);
150 if (
$cmd ==
"confirmedDelete")
152 $this->
object->setStyleSheetId(0);
153 $this->
object->update();
156 $ret = $this->ctrl->forwardCommand($style_gui);
158 if (
$cmd ==
"save" ||
$cmd ==
"copyStyle" ||
$cmd ==
"importStyle")
161 $this->
object->setStyleSheetId($style_id);
162 $this->
object->update();
163 $this->ctrl->redirectByClass(
"ilobjstylesheetgui",
"edit");
175 $cmd = $ilCtrl->getCmd();
177 if (in_array(
$cmd,
array(
"displayMediaFullscreen",
"downloadFile",
"displayMedia")))
186 $ilTabs->clearTargets();
188 if (
$_GET[
"redirectSource"] ==
"ilinternallinkgui")
197 $ilTabs->setBackTarget($lng->txt(
"cntr_back_to_old_editor"),
198 $ilCtrl->getLinkTarget($this,
"switchToOldEditor"),
"_top");
202 $ilTabs->setBackTarget($lng->txt(
"back"),
"./goto.php?target=".$this->object->getType().
"_".
203 $this->
object->getRefId(),
"_top");
207 include_once(
"./Services/Container/classes/class.ilContainerPage.php");
208 include_once(
"./Services/Container/classes/class.ilContainerPageGUI.php");
210 $lng->loadLanguageModule(
"content");
212 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
213 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
215 $this->tpl->setCurrentBlock(
"SyntaxStyle");
216 $this->tpl->setVariable(
"LOCATION_SYNTAX_STYLESHEET",
218 $this->tpl->parseCurrentBlock();
225 $new_page_object->setParentId($this->
object->getId());
226 $new_page_object->setId($this->
object->getId());
227 $new_page_object->createFromXML();
231 $this->ctrl->setReturnByClass(
"ilcontainerpagegui",
"edit");
233 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
235 $this->
object->getStyleSheetId(), $this->
object->getType()));
237 $page_gui->setTemplateTargetVar(
"ADM_CONTENT");
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");
290 if (!$ilSetting->get(
"enable_cat_page_edit"))
300 include_once(
"Services/XHTMLPage/classes/class.ilXHTMLPage.php");
302 return $xpage->getContent();
310 include_once(
"./Services/COPage/classes/class.ilPageUtil.php");
316 include_once(
"./Services/Container/classes/class.ilContainerPage.php");
317 include_once(
"./Services/Container/classes/class.ilContainerPageGUI.php");
319 include_once(
"./Services/Style/Content/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/Content/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($a_show_subobjects))
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();
577 if(!$folder_set->get(
"bgtask_download", 0))
579 $toolbar->addFormButton(
580 $this->lng->txt(
'download_selected_items'),
586 $GLOBALS[
'tpl']->addJavaScript(
"Services/BackgroundTask/js/BgTask.js");
587 $GLOBALS[
'tpl']->addOnLoadCode(
"il.BgTask.initMultiForm('ilFolderDownloadBackgroundTaskHandler');");
589 include_once
"Services/UIComponent/Button/classes/class.ilSubmitButton.php";
591 $button->setCaption(
"download_selected_items");
592 $button->addCSSClass(
"ilbgtasksubmit");
593 $button->setCommand(
"download");
594 $toolbar->addButtonInstance($button);
598 if($this->
object->getType() ==
'crs' or $this->
object->getType() ==
'grp')
600 if($this->
object->gotItems())
602 $toolbar->addSeparator();
606 $this->lng->txt(
'cntr_adopt_content'),
607 $this->ctrl->getLinkTargetByClass(
618 $toolbar->addFormButton(
619 $this->lng->txt(
'paste_clipboard_items'),
623 if(
$_SESSION[
"clipboard"][
"cmd"] ==
"link")
633 $toolbar->addFormButton(
634 $this->lng->txt(
'clear_clipboard'),
640 $toolbar->addSeparator();
641 $toolbar->addFormButton(
642 $this->lng->txt(
'download_selected_items'),
648 $GLOBALS[
'tpl']->addAdminPanelToolbar(
655 if ($this->
object->gotItems())
657 $GLOBALS[
'tpl']->setPageFormAction($this->ctrl->getFormAction($this));
662 if ($this->edit_order)
664 if($this->
object->gotItems()
and $ilAccess->checkAccess(
"write",
"", $this->
object->getRefId()))
666 include_once(
'./Services/Container/classes/class.ilContainer.php');
671 $GLOBALS[
'tpl']->setPageFormAction($this->ctrl->getFormAction($this));
673 include_once
'./Services/UIComponent/Toolbar/classes/class.ilToolbarGUI.php';
675 $this->ctrl->setParameter($this,
"type",
"");
676 $this->ctrl->setParameter($this,
"item_ref_id",
"");
678 $toolbar->addFormButton(
679 $this->lng->txt(
'sorting_save'),
683 $GLOBALS[
'tpl']->addAdminPanelToolbar($toolbar,
true,
false);
701 if(count($children_of_type_file) != 0)
704 $GLOBALS[
'tpl']->setPageFormAction($this->ctrl->getFormAction($this));
706 include_once
'./Services/UIComponent/Toolbar/classes/class.ilToolbarGUI.php';
708 $this->ctrl->setParameter($this,
"type",
"");
709 $this->ctrl->setParameter($this,
"item_ref_id",
"");
711 $toolbar->addFormButton(
712 $this->lng->txt(
'download_selected_items'),
716 $GLOBALS[
'tpl']->addAdminPanelToolbar(
718 $this->
object->gotItems() ? true :
false,
719 $this->
object->gotItems() ? true : false
739 $sibling_files = $this->tree->getChildsByType(
$ref_id,
"file");
741 foreach ($sibling_files as $sibling_course)
743 array_push(
$files, $sibling_course);
747 foreach ($categories as $category)
749 $category_ref_id = $category[
"ref_id"];
750 $nested_files = $this->tree->getChildsByType($category_ref_id,
"file");
752 foreach ($nested_files as $nested_course)
754 array_push(
$files, $nested_course);
768 $categories = $this->tree->getChildsByType(
$ref_id,
"cat");
770 $num_categories = count($categories);
772 for ($i = 0; $i < $num_categories; $i ++)
774 $category_ref_id = $categories[$i][
"ref_id"];
776 $new_categories = $this->tree->getChildsByType($category_ref_id,
"cat");
777 if ($new_categories != NULL)
779 foreach ($new_categories as $new_category)
782 array_push($categories, $new_category);
784 $num_categories = count($categories);
795 if(!$tree->checkForParentType($this->object->getRefId(),
'crs'))
799 $tpl->setCurrentBlock(
"custom_button");
800 $tpl->setVariable(
"ADMIN_MODE_LINK",$this->ctrl->getLinkTargetByClass(
'ilcoursecontentgui',
'editTimings'));
801 $tpl->setVariable(
"TXT_ADMIN_MODE",$this->lng->txt(
'timings_edit'));
802 $tpl->parseCurrentBlock();
811 $this->
object->getRefId(),
"",
"_top");
822 $ilCtrl->redirect($this,
"editPageFrame");
833 $ilCtrl->redirect($this,
"editPageFrame");
843 if ($ilAccess->checkAccess(
"write",
"", $this->object->getRefId()))
845 include_once(
"./Services/XHTMLPage/classes/class.ilXHTMLPage.php");
862 $ilCtrl->redirect($this,
"editPageFrame");
873 if ($xpage_id > 0 &&
$_SESSION[
"il_cntr_editor"] !=
"std")
875 $this->ctrl->redirect($this,
"editPageContent");
879 $this->ctrl->redirectByClass(
array(
"ilcontainerpagegui"),
"edit");
892 if (!$rbacsystem->checkAccess(
"write", $this->ref_id))
894 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_write"),$this->
ilias->error_obj->MESSAGE);
901 include_once(
"Services/XHTMLPage/classes/class.ilXHTMLPage.php");
903 $content = $xpage->getContent();
907 $tpl->addBlockFile(
"ADM_CONTENT",
"adm_content",
"tpl.container_edit_page_content.html",
908 "Services/Container");
910 $tpl->setVariable(
"FORMACTION", $this->ctrl->getFormAction($this));
911 $tpl->setVariable(
"TXT_EDIT_PAGE_CONTENT",
912 $this->lng->txt(
"edit_page_content"));
913 $tpl->setVariable(
"TXT_SAVE", $this->lng->txt(
"save"));
914 $tpl->setVariable(
"TXT_CANCEL", $this->lng->txt(
"cancel"));
915 $tpl->setVariable(
"TXT_MIGRATION_INFO", $lng->txt(
"cntr_old_editor_warning"));
916 $tpl->setVariable(
"TXT_MIGRATION_OPEN_STD_EDITOR", $lng->txt(
"cntr_old_editor_open_standard_editor"));
918 $tpl->setVariable(
"HREF_OPEN_STD_EDITOR", $ilCtrl->getLinkTarget($this,
"switchToStdEditor"));
919 $tpl->setVariable(
"ALT_WARNING", $lng->txt(
"warning"));
921 include_once(
"./Services/Form/classes/class.ilFormPropertyGUI.php");
922 include_once(
"./Services/Form/classes/class.ilTextAreaInputGUI.php");
927 include_once
"./Services/RTE/classes/class.ilRTE.php";
929 include_once
"./Services/RTE/classes/class.$rtestring.php";
930 $rte =
new $rtestring();
932 include_once
"./Services/Object/classes/class.ilObject.php";
935 $rte->addRTESupport(
$obj_id, $obj_type);
942 include_once(
"Services/XHTMLPage/classes/class.ilXHTMLPage.php");
943 include_once
"./Services/AdvancedEditing/classes/class.ilObjAdvancedEditing.php";
963 $xpage->setContent($text);
969 $xpage->setContent($text);
972 "xhtml_page", $xpage->getId());
975 include_once(
"Services/RTE/classes/class.ilRTE.php");
977 $this->
object->getId());
980 $this->ctrl->redirect($this,
"");
985 $this->ctrl->redirect($this,
"");
993 "Services/Container");
995 $type_ordering =
array(
996 "cat",
"fold",
"crs",
"grp",
"chat",
"frm",
"lres",
997 "glo",
"webr",
"file",
"exc",
998 "tst",
"svy",
"mep",
"qpl",
"spl");
1000 $childs = $tree->getChilds(
$_GET[
"ref_id"]);
1001 foreach($childs as $child)
1003 if (in_array($child[
"type"],
array(
"lm",
"sahs",
"htlm")))
1009 $cnt[$child[
"type"]]++;
1014 $tpl->setVariable(
"TXT_HELP_HEADER", $lng->txt(
"help"));
1015 foreach($type_ordering as $type)
1017 $tpl->setCurrentBlock(
"row");
1018 $tpl->setVariable(
"ROWCOL",
"tblrow".((($i++)%2)+1));
1019 if ($type !=
"lres")
1021 $tpl->setVariable(
"TYPE", $lng->txt(
"objs_".$type).
1022 " (".((int)$cnt[$type]).
")");
1026 $tpl->setVariable(
"TYPE", $lng->txt(
"learning_resources").
1027 " (".((int)$cnt[
"lres"]).
")");
1029 $tpl->setVariable(
"TXT_LINK",
"[list-".$type.
"]");
1030 $tpl->parseCurrentBlock();
1042 $this->adminCommands =
false;
1074 $tpl =
new ilTemplate(
"tpl.container_list_block.html",
true,
true,
1075 "Services/Container");
1076 $this->cur_row_type =
"row_type_1";
1094 $a_tpl->setCurrentBlock(
"container_header_row_image");
1095 $a_tpl->setVariable(
"HEADER_IMG", $icon);
1096 $a_tpl->setVariable(
"HEADER_ALT",
$title);
1100 $a_tpl->setCurrentBlock(
"container_header_row");
1103 $a_tpl->setVariable(
"BLOCK_HEADER_CONTENT",
$title);
1104 $a_tpl->parseCurrentBlock();
1105 $a_tpl->touchBlock(
"container_row");
1118 $this->cur_row_type = ($this->cur_row_type ==
"row_type_1")
1122 $a_tpl->touchBlock($this->cur_row_type);
1125 if ($this->
ilias->getSetting(
"icon_position_in_lists") ==
"item_rows")
1128 $alt = $this->lng->txt(
"obj_".$a_image_type);
1131 if ($this->
ilias->getSetting(
"custom_icons") &&
1132 in_array($a_image_type,
array(
"cat",
"grp",
"crs")))
1134 require_once(
"./Services/Container/classes/class.ilContainer.php");
1141 $a_tpl->setCurrentBlock(
"block_row_image");
1142 $a_tpl->setVariable(
"ROW_IMG", $icon);
1143 $a_tpl->setVariable(
"ROW_ALT", $alt);
1144 $a_tpl->parseCurrentBlock();
1150 $a_tpl->setCurrentBlock(
"block_row_check");
1151 $a_tpl->setVariable(
"ITEM_ID", $a_item_ref_id);
1152 $a_tpl->parseCurrentBlock();
1155 include_once(
'Services/Container/classes/class.ilContainerSortingSettings.php');
1159 $a_tpl->setCurrentBlock(
'block_position');
1160 $a_tpl->setVariable(
'POS_TYPE',$a_image_type);
1161 $a_tpl->setVariable(
'POS_ID',$a_item_ref_id);
1162 $a_tpl->setVariable(
'POSITION',sprintf(
'%.1f',$this->current_position++));
1163 $a_tpl->parseCurrentBlock();
1167 $a_tpl->setVariable(
"ROW_NBSP",
" ");
1169 $a_tpl->setCurrentBlock(
"container_standard_row");
1170 $a_tpl->setVariable(
"BLOCK_ROW_CONTENT", $a_html);
1171 $a_tpl->parseCurrentBlock();
1172 $a_tpl->touchBlock(
"container_row");
1180 $this->cur_row_type = ($this->cur_row_type ==
"row_type_1")
1184 $a_tpl->touchBlock($this->cur_row_type);
1186 $type = $this->lng->txt(
"obj_".
$a_type);
1187 $a_message = str_replace(
"[type]", $type, $a_message);
1189 $a_tpl->setVariable(
"ROW_NBSP",
" ");
1191 $a_tpl->setCurrentBlock(
"container_standard_row");
1192 $a_tpl->setVariable(
"BLOCK_ROW_CONTENT",
1194 $a_tpl->parseCurrentBlock();
1195 $a_tpl->touchBlock(
"container_row");
1200 $this->cur_row_type =
"";
1212 || strtolower($this->ctrl->getCmdClass()) !=
"ilcontainerpagegui")
1217 $lng->loadLanguageModule(
"content");
1222 $this->tabs_gui->setBackTarget($this->lng->txt(
"obj_cat"),
1223 $this->ctrl->getLinkTarget($this,
"frameset"),
1226 $this->tabs_gui->addTarget(
"edit", $this->ctrl->getLinkTargetByClass(
"ilcontainerpagegui",
"view")
1227 ,
array(
"",
"view"),
"ilcontainerpagegui");
1239 if (!is_object($this->
object))
1244 if ($a_include_view && $ilAccess->checkAccess(
"read",
"", $this->object->getRefId()))
1248 $ilTabs->addSubTab(
"view_content", $lng->txt(
"view"), $ilCtrl->getLinkTarget($this,
"view"));
1252 $ilTabs->addSubTab(
"view_content", $lng->txt(
"view"), $ilCtrl->getLinkTarget($this,
"disableAdministrationPanel"));
1256 if ( $ilUser->getId() != ANONYMOUS_USER_ID &&
1257 ($this->adminCommands ||
1258 (is_object($this->
object) &&
1259 ($ilAccess->checkAccess(
"write",
"", $this->
object->getRefId())))
1261 (is_object($this->
object) &&
1262 ($this->
object->getHiddenFilesFound())) ||
1269 $ilTabs->addSubTab(
"manage", $lng->txt(
"cntr_manage"), $ilCtrl->getLinkTarget($this,
""));
1273 $ilTabs->addSubTab(
"manage", $lng->txt(
"cntr_manage"), $ilCtrl->getLinkTarget($this,
"enableAdministrationPanel"));
1276 if ($ilUser->getId() != ANONYMOUS_USER_ID &&
1277 is_object($this->
object) &&
1278 $ilAccess->checkAccess(
"write",
"", $this->
object->getRefId())
1282 $ilTabs->addSubTab(
"ordering", $lng->txt(
"cntr_ordering"), $ilCtrl->getLinkTarget($this,
"editOrder"));
1284 if ($ilUser->getId() != ANONYMOUS_USER_ID &&
1285 is_object($this->
object) &&
1286 $ilAccess->checkAccess(
"write",
"", $this->
object->getRefId())
1289 if ($ilSetting->get(
"enable_cat_page_edit"))
1291 $ilTabs->addSubTab(
"page_editor", $lng->txt(
"cntr_text_media_editor"), $ilCtrl->getLinkTarget($this,
"editPageFrame"),
1307 if ($rbacsystem->checkAccess(
'edit_permission',$this->ref_id))
1309 $this->tabs_gui->addTarget(
"perm_settings",
1310 $this->ctrl->getLinkTargetByClass(
array(get_class($this),
'ilpermissiongui'),
"perm"),
1311 array(
"perm",
"info",
"owner"),
'ilpermissiongui');
1312 if ($ilCtrl->getNextClass() ==
"ilpermissiongui")
1314 $this->tabs_gui->activateTab(
"perm_settings");
1319 if (strtolower(
$_GET[
"baseClass"]) ==
"ilrepositorygui" && !empty(
$_SESSION[
"clipboard"]))
1321 $this->tabs_gui->addTarget(
"clipboard",
1322 $this->ctrl->getLinkTarget($this,
"clipboard"),
"clipboard", get_class($this));
1337 $_SESSION[
"il_cont_admin_panel"] =
true;
1338 $this->ctrl->redirect($this,
"render");
1346 $_SESSION[
"il_cont_admin_panel"] =
false;
1347 $this->ctrl->redirect($this,
"render");
1357 $this->edit_order =
true;
1358 $_SESSION[
"il_cont_admin_panel"] =
false;
1361 $ilTabs->activateSubTab(
"ordering");
1370 return $this->edit_order ? true :
false;
1393 if((
int)$ilSetting->get(
'disable_my_offers'))
1398 include_once
'./Services/PersonalDesktop/classes/class.ilDesktopItemGUI.php';
1411 if((
int)$ilSetting->get(
'disable_my_offers'))
1416 include_once
'./Services/PersonalDesktop/classes/class.ilDesktopItemGUI.php';
1424 $this->multi_download_enabled =
true;
1438 if (!$rbacsystem->checkAccess(
"write",
$_GET[
'item_ref_id']))
1440 $this->ilErr->raiseError($this->lng->txt(
'err_no_permission'),$this->ilErr->MESSAGE);
1444 require_once (
'Services/WebDAV/classes/class.ilDAVActivationChecker.php');
1447 require_once
'Services/WebDAV/classes/class.ilDAVServer.php';
1450 require_once
'Services/WebDAV/classes/class.ilDAVLocks.php';
1454 $ilUser->getId(), $ilUser->getLogin(),
1455 'ref_'.$_GET[
'item_ref_id'].
'_usr_'.$ilUser->getId(),
1456 time() + 60, 0,
'exclusive' 1480 if (
$_GET[
"item_ref_id"] !=
"")
1487 if (!isset(
$_POST[
"id"]))
1489 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->
ilias->error_obj->MESSAGE);
1496 $node_data = $this->tree->getNodeData($ref_id);
1497 $subtree_nodes = $this->tree->getSubTree($node_data);
1499 $all_node_data[] = $node_data;
1500 $all_subtree_nodes[] = $subtree_nodes;
1503 foreach ($subtree_nodes as $node)
1505 if($node[
'type'] ==
'rolf')
1510 if (!$rbacsystem->checkAccess(
'delete',$node[
"ref_id"]))
1512 $no_cut[] = $node[
"ref_id"];
1520 foreach((
array) $no_cut as $cut_id)
1524 $this->
ilias->raiseError(
1525 $this->lng->txt(
"msg_no_perm_cut").
" ".implode(
',',(
array) $titles),
1526 $this->
ilias->error_obj->MESSAGE
1530 $_SESSION[
"clipboard"][
"cmd"] = $ilCtrl->getCmd();
1549 if (
$_GET[
"item_ref_id"] !=
"")
1554 if (!isset(
$_POST[
"id"]))
1556 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->
ilias->error_obj->MESSAGE);
1564 $node_data = $this->tree->getNodeData($ref_id);
1567 if ($objDefinition->isContainer($node_data[
"type"]))
1572 $subtree_nodes = $this->tree->getSubTree($node_data);
1574 $all_node_data[] = $node_data;
1575 $all_subtree_nodes[] = $subtree_nodes;
1578 foreach ($subtree_nodes as $node)
1580 if($node[
'type'] ==
'rolf')
1585 if (!$rbacsystem->checkAccess(
'visible,read,copy',$node[
"ref_id"]))
1587 $no_copy[] = $node[
"ref_id"];
1592 if ($containers > 0 && count(
$_POST[
"id"]) > 1)
1594 $this->
ilias->raiseError($this->lng->txt(
"cntr_container_only_on_their_own"), $this->
ilias->error_obj->MESSAGE);
1598 if (count($no_copy))
1601 foreach((
array) $no_copy as $copy_id)
1605 $this->
ilias->raiseError(
1606 $this->lng->txt(
"msg_no_perm_copy") .
" " . implode(
',',$titles),
1607 $this->
ilias->error_obj->MESSAGE);
1611 if (count(
$_POST[
"id"]) == 1)
1613 $ilCtrl->setParameterByClass(
"ilobjectcopygui",
"source_id",
$_POST[
"id"][0]);
1614 $ilCtrl->redirectByClass(
"ilobjectcopygui",
"initTargetSelection");
1618 $ilCtrl->setParameterByClass(
"ilobjectcopygui",
"source_ids", implode(
$_POST[
"id"],
"_"));
1619 $ilCtrl->redirectByClass(
"ilobjectcopygui",
"initTargetSelection");
1623 $_SESSION[
"clipboard"][
"cmd"] = $ilCtrl->getCmd();
1635 if (
$_GET[
"item_ref_id"] !=
"")
1640 if (!isset(
$_POST[
"id"]))
1642 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->
ilias->error_obj->MESSAGE);
1648 $object =& $this->
ilias->obj_factory->getInstanceByRefId($ref_id);
1649 $obj_type =
$object->getType();
1650 if (!in_array($obj_type,
array(
"fold",
"file")))
1652 $no_download[] =
$object->getType();
1654 else if (!$rbacsystem->checkAccess(
'read', $ref_id))
1661 if (count($no_download))
1663 $no_download = array_unique($no_download);
1664 foreach ($no_download as $type)
1666 $txt_objs[] = $this->lng->txt(
"objs_".$type);
1668 $this->
ilias->raiseError(implode(
', ',$txt_objs).
" ".$this->lng->txt(
"msg_obj_no_download"),$this->
ilias->error_obj->MESSAGE);
1672 if (count($no_perm))
1674 $this->
ilias->raiseError(
1675 $this->lng->txt(
"msg_obj_perm_download").
" ".implode(
',',$no_perm),
1676 $this->
ilias->error_obj->MESSAGE);
1685 global
$lng, $rbacsystem, $ilAccess;
1687 include_once
'Modules/Folder/classes/class.ilObjFolder.php';
1688 include_once
'Modules/File/classes/class.ilObjFile.php';
1689 include_once
'Modules/File/classes/class.ilFileException.php';
1699 foreach ($a_ref_ids as
$ref_id)
1701 if (!$ilAccess->checkAccess(
"read",
"", $ref_id))
1708 $object =& $this->
ilias->obj_factory->getInstanceByRefId($ref_id);
1709 $obj_type =
$object->getType();
1710 if ($obj_type ==
"fold")
1713 self::recurseFolder($ref_id,
$object->getTitle(), $tmpdir);
1715 else if ($obj_type ==
"file")
1723 $deliverFilename = ilUtil::getAsciiFilename($this->
object->getTitle()) .
".zip";
1745 global $rbacsystem,
$tree, $ilAccess;
1750 $subtree = $tree->getChildsByTypeFilter($refid,
array(
"fold",
"file"));
1752 foreach ($subtree as $child)
1754 if (!$ilAccess->checkAccess(
"read",
"", $child[
"ref_id"]))
1760 if ($child[
"type"] ==
"fold")
1761 self::recurseFolder($child[
"ref_id"], $child[
"title"], $tmpdir);
1763 self::copyFile($child[
"obj_id"], $child[
"title"], $tmpdir);
1773 if (!copy($oldFilename, $newFilename))
1774 throw new ilFileException(
"Could not copy ".$oldFilename.
" to ".$newFilename);
1776 touch($newFilename, filectime($oldFilename));
1787 global $clipboard, $rbacsystem, $rbacadmin,
$ilCtrl;
1789 if (
$_GET[
"item_ref_id"] !=
"")
1794 if (!isset(
$_POST[
"id"]))
1796 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->
ilias->error_obj->MESSAGE);
1802 if (!$rbacsystem->checkAccess(
'delete',$ref_id))
1807 $object =& $this->
ilias->obj_factory->getInstanceByRefId($ref_id);
1809 if (!$this->objDefinition->allowLink(
$object->getType()))
1811 $no_link[] =
$object->getType();
1818 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_link").
" ".
1819 implode(
',',$no_cut),$this->
ilias->error_obj->MESSAGE);
1822 if (count($no_link))
1825 $this->
ilias->raiseError($this->lng->txt(
"msg_obj_no_link"),$this->
ilias->error_obj->MESSAGE);
1832 $clipboard[
"parent"] =
$_GET[
"ref_id"];
1833 $clipboard[
"cmd"] = $ilCtrl->getCmd();
1835 foreach (
$_POST[
"id"] as $ref_id)
1837 $clipboard[
"ref_ids"][] =
$ref_id;
1843 if(count($clipboard[
"ref_ids"]) == 1)
1867 if (isset(
$_POST[
"cmd"][
"clear"]))
1871 $this->ctrl->redirect($this,
'render');
1877 global $rbacsystem, $rbacadmin, $rbacreview,
$log,
$tree, $ilObjDataCache,
$ilUser;
1879 $command =
$_SESSION[
'clipboard'][
'cmd'];
1880 if(!in_array($command,
array(
'cut',
'link',
'copy')))
1882 $message = __METHOD__.
": cmd was neither 'cut', 'link' nor 'copy'; may be a hack attempt!";
1883 $this->
ilias->raiseError($message, $this->
ilias->error_obj->WARNING);
1886 if($command ==
'cut')
1889 $_POST[
'nodes'] =
array($_POST[
'node']);
1892 if(!is_array(
$_POST[
'nodes']) || !count(
$_POST[
'nodes']))
1911 $folder_objects_cache =
array();
1915 $current_parent_id = $tree->getParentId($obj_data->getRefId());
1917 foreach(
$_POST[
'nodes'] as $folder_ref_id)
1919 if(!array_key_exists($folder_ref_id, $folder_objects_cache))
1925 if(!$rbacsystem->checkAccess(
'create', $folder_ref_id, $obj_data->getType()))
1927 $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().
']');
1931 if($folder_ref_id == $current_parent_id)
1933 $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().
']');
1937 if ($tree->isGrandChild($ref_id, $folder_ref_id) ||
1938 $ref_id == $folder_ref_id)
1940 $is_child[] = sprintf($this->lng->txt(
'msg_paste_object_not_in_itself'), $obj_data->getTitle().
' ['.$obj_data->getRefId().
']');
1944 if(!in_array($obj_data->getType(), array_keys($folder_objects_cache[$folder_ref_id]->getPossibleSubObjects())))
1946 $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().
']',
1947 $GLOBALS[
'lng']->txt(
'obj_'.$obj_data->getType()));
1954 if(count($exists) && $command !=
"copy")
1956 $error .= implode(
'<br />', $exists);
1959 if(count($is_child))
1962 $error .= implode(
'<br />', $is_child);
1965 if(count($not_allowed_subobject))
1968 $error .= implode(
'<br />', $not_allowed_subobject);
1971 if(count($no_paste))
1974 $error .= implode(
'<br />', $no_paste);
1996 $log->write(__METHOD__.
", cmd: ".$command);
2002 $ref_ids =
$_SESSION[
'clipboard'][
'ref_ids'];
2003 unset(
$_SESSION[
'clipboard'][
'ref_ids']);
2006 require_once(
'Services/Tracking/classes/class.ilChangeEvent.php');
2010 if($command ==
'copy')
2012 foreach(
$_POST[
'nodes'] as $folder_ref_id)
2014 foreach($ref_ids as $ref_id)
2016 $revIdMapping =
array();
2018 $oldNode_data = $tree->getNodeData($ref_id);
2019 if ($oldNode_data[
'parent'] == $folder_ref_id)
2021 require_once
'Modules/File/classes/class.ilObjFileAccess.php';
2023 $newRef = $this->
cloneNodes($ref_id, $folder_ref_id, $refIdMapping, $newTitle);
2027 $newRef = $this->
cloneNodes($ref_id, $folder_ref_id, $refIdMapping, null);
2031 $old_parent_data = $tree->getParentNodeData($ref_id);
2032 $newNode_data = $tree->getNodeData($newRef);
2034 $oldNode_data[
'obj_id'], $ilUser->getId());
2036 $ilObjDataCache->lookupObjId($folder_ref_id));
2046 if($command ==
'cut')
2048 foreach(
$_POST[
'nodes'] as $folder_ref_id)
2050 foreach($ref_ids as $ref_id)
2053 $old_parent = $tree->getParentId($ref_id);
2054 $tree->moveTree($ref_id, $folder_ref_id);
2055 $rbacadmin->adjustMovedObjectPermissions($ref_id, $old_parent);
2057 include_once(
'./Services/AccessControl/classes/class.ilConditionHandler.php');
2061 $node_data = $tree->getNodeData($ref_id);
2062 $old_parent_data = $tree->getNodeData($old_parent);
2064 $old_parent_data[
'obj_id']);
2066 $ilObjDataCache->lookupObjId($folder_ref_id));
2079 if($command ==
'link')
2081 $linked_to_folders =
array();
2083 include_once
"Services/AccessControl/classes/class.ilRbacLog.php";
2086 foreach(
$_POST[
'nodes'] as $folder_ref_id)
2088 $linked_to_folders[$folder_ref_id] = $ilObjDataCache->lookupTitle($ilObjDataCache->lookupObjId($folder_ref_id));
2090 foreach($ref_ids as $ref_id)
2093 $top_node = $tree->getNodeData($ref_id);
2096 $subnodes[
$ref_id] = $tree->getSubtree($top_node);
2100 foreach($subnodes as $key => $subnode)
2104 $new_ref_id = $obj_data->createReference();
2105 $obj_data->putInTree($folder_ref_id);
2106 $obj_data->setPermissions($folder_ref_id);
2109 if($rbac_log_active)
2111 $rbac_log_roles = $rbacreview->getParentRoleIds($new_ref_id,
false);
2117 $node_data = $tree->getNodeData($new_ref_id);
2119 $ilObjDataCache->lookupObjId($folder_ref_id));
2124 $log->write(__METHOD__.
', link finished');
2127 $linked_targets =
array();
2128 if(count($linked_to_folders))
2130 require_once
'Services/Link/classes/class.ilLink.php';
2131 foreach($linked_to_folders as $ref_id =>
$title)
2138 if(count($ref_ids) == 1)
2142 ilUtil::sendSuccess(sprintf($this->lng->txt(
'mgs_objects_linked_to_the_following_folders_' . $suffix), implode(
', ', $linked_targets)),
true);
2148 $this->ctrl->returnToParent($this);
2162 $path = $tree->getPathId((
int)
$_GET[
'ref_id']);
2165 if(!in_array($node_id,
$_SESSION[
'paste_linked_repexpand']))
2166 $_SESSION[
'paste_linked_repexpand'][] = $node_id;
2177 global $ilTabs, $ilToolbar;
2179 $ilTabs->setTabActive(
'view_content');
2181 if(!in_array(
$_SESSION[
'clipboard'][
'cmd'],
array(
'link',
'copy',
'cut')))
2183 $message = __METHOD__.
": Unknown action.";
2184 $this->
ilias->raiseError($message, $this->
ilias->error_obj->WARNING);
2190 if ($exp->handleCommand())
2196 $txt_var = (
$cmd ==
"copy")
2202 $t->setFormAction($this->ctrl->getFormAction($this,
"performPasteIntoMultipleObjects"));
2204 include_once(
"./Services/UIComponent/Button/classes/class.ilSubmitButton.php");
2206 $b->setCaption($txt_var);
2207 $b->setCommand(
"performPasteIntoMultipleObjects");
2210 $t->addStickyItem($b);
2213 $this->lng->loadLanguageModule(
'obj');
2214 $t->addFormButton($this->lng->txt(
"obj_insert_into_clipboard"),
"keepObjectsInClipboard");
2216 $t->addFormButton($this->lng->txt(
"cancel"),
"cancelMoveLink");
2217 $t->setCloseFormTag(
false);
2221 $t->setCloseFormTag(
true);
2222 $t->setOpenFormTag(
false);
2223 $output.=
"<br />".$t->getHTML();
2225 $this->tpl->setContent(
$output);
2286 $GLOBALS[
'ilCtrl']->returnToParent($this);
2295 $GLOBALS[
'ilCtrl']->returnToParent($this);
2310 $path = $tree->getPathId((
int)
$_GET[
'ref_id']);
2313 if(!in_array($node_id,
$_SESSION[
'paste_copy_repexpand']))
2314 $_SESSION[
'paste_copy_repexpand'][] = $node_id;
2379 $path = $tree->getPathId((
int)
$_GET[
'ref_id']);
2382 if(!in_array($node_id,
$_SESSION[
'paste_cut_repexpand']))
2383 $_SESSION[
'paste_cut_repexpand'][] = $node_id;
2446 global $rbacsystem, $rbacadmin, $rbacreview,
$log,
$tree;
2450 require_once(
'Services/Tracking/classes/class.ilChangeEvent.php');
2454 if (!in_array(
$_SESSION[
"clipboard"][
"cmd"],
array(
"cut",
"link",
"copy")))
2456 $message = get_class($this).
"::pasteObject(): cmd was neither 'cut','link' or 'copy'; may be a hack attempt!";
2457 $this->
ilias->raiseError($message,$this->
ilias->error_obj->WARNING);
2463 $obj_data =& $this->
ilias->obj_factory->getInstanceByRefId($ref_id);
2466 if (!$rbacsystem->checkAccess(
'create',$this->object->getRefId(), $obj_data->getType()))
2469 $no_paste_titles[] = $obj_data->getTitle();
2473 if ($this->
object->getRefId() == $this->tree->getParentId($obj_data->getRefId()))
2480 if ($this->tree->isGrandChild($ref_id,$this->object->getRefId()))
2485 if ($ref_id == $this->
object->getRefId())
2491 $obj_type = $obj_data->getType();
2493 if (!in_array($obj_type, array_keys($this->
object->getPossibleSubObjects())))
2495 $not_allowed_subobject[] = $obj_data->getType();
2502 if (count($exists) &&
$_SESSION[
"clipboard"][
"cmd"] !=
"copy")
2505 $this->
ilias->raiseError($this->lng->txt(
"msg_obj_exists"),$this->
ilias->error_obj->MESSAGE);
2508 if (count($is_child))
2510 $this->
ilias->raiseError($this->lng->txt(
"msg_not_in_itself").
" ".implode(
',',$is_child),
2511 $this->
ilias->error_obj->MESSAGE);
2514 if (count($not_allowed_subobject))
2516 $this->
ilias->raiseError($this->lng->txt(
"msg_may_not_contain").
" ".implode(
',',$not_allowed_subobject),
2517 $this->
ilias->error_obj->MESSAGE);
2520 if (count($no_paste))
2522 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_paste").
" ".
2523 implode(
',',$no_paste),$this->
ilias->error_obj->MESSAGE);
2527 $log->write(
"ilObjectGUI::pasteObject(), cmd: ".
$_SESSION[
"clipboard"][
"cmd"]);
2533 $ref_ids =
$_SESSION[
"clipboard"][
"ref_ids"];
2534 unset(
$_SESSION[
"clipboard"][
"ref_ids"]);
2538 if (
$_SESSION[
"clipboard"][
"cmd"] ==
"copy")
2543 if (count($ref_ids) == 1)
2545 $ilCtrl->setParameterByClass(
"ilobjectcopygui",
"target", $this->
object->getRefId());
2546 $ilCtrl->setParameterByClass(
"ilobjectcopygui",
"source_id", $ref_ids[0]);
2547 $ilCtrl->redirectByClass(
"ilobjectcopygui",
"saveTarget");
2551 $ilCtrl->setParameterByClass(
"ilobjectcopygui",
"target", $this->
object->getRefId());
2552 $ilCtrl->setParameterByClass(
"ilobjectcopygui",
"source_ids", implode($ref_ids,
"_"));
2553 $ilCtrl->redirectByClass(
"ilobjectcopygui",
"saveTarget");
2587 $log->write(
"ilObjectGUI::pasteObject(), copy finished");
2592 if (
$_SESSION[
"clipboard"][
"cmd"] ==
"cut")
2595 foreach($ref_ids as $ref_id)
2598 $old_parent = $tree->getParentId($ref_id);
2599 $this->tree->moveTree($ref_id,$this->
object->getRefId());
2600 $rbacadmin->adjustMovedObjectPermissions($ref_id,$old_parent);
2602 include_once(
'./Services/AccessControl/classes/class.ilConditionHandler.php');
2606 $node_data = $tree->getNodeData($ref_id);
2607 $old_parent_data = $tree->getNodeData($old_parent);
2609 $old_parent_data[
'obj_id']);
2611 $this->
object->getId());
2618 if (
$_SESSION[
"clipboard"][
"cmd"] ==
"link")
2620 foreach ($ref_ids as $ref_id)
2623 $top_node = $this->tree->getNodeData($ref_id);
2626 $subnodes[
$ref_id] = $this->tree->getSubtree($top_node);
2630 foreach ($subnodes as $key => $subnode)
2633 $obj_data =& $this->
ilias->obj_factory->getInstanceByRefId($key);
2634 $new_ref_id = $obj_data->createReference();
2635 $obj_data->putInTree(
$_GET[
"ref_id"]);
2636 $obj_data->setPermissions(
$_GET[
"ref_id"]);
2639 $node_data = $tree->getNodeData($new_ref_id);
2641 $this->
object->getId());
2646 $log->write(
"ilObjectGUI::pasteObject(), link finished");
2651 $last_cmd =
$_SESSION[
"clipboard"][
"cmd"];
2657 if ($last_cmd ==
"cut")
2662 else if ($last_cmd ==
"copy")
2666 else if ($last_cmd ==
'link')
2672 $this->ctrl->returnToParent($this);
2684 $ilTabs->activateTab(
"clipboard");
2689 $message = sprintf(
'%s::clipboardObject(): Illegal access. Clipboard variable is empty!', get_class($this));
2690 $ilLog->write($message,$ilLog->FATAL);
2691 $ilErr->raiseError($this->lng->txt(
"permission_denied"),$ilErr->WARNING);
2703 "type" => $tmp_obj->getType(),
2704 "type_txt" => $this->lng->txt(
"obj_".$tmp_obj->getType()),
2705 "title" => $tmp_obj->getTitle(),
2706 "cmd" => (
$_SESSION[
"clipboard"][
"cmd"] ==
"cut") ? $this->lng->txt(
"move") :$this->lng->txt(
$_SESSION[
"clipboard"][
"cmd"]),
2708 "obj_id" => $tmp_obj->getId()
2714 include_once(
"./Services/Object/classes/class.ilObjClipboardTableGUI.php");
2717 $tpl->setContent(
$tab->getHTML());
2719 if (count(
$data) > 0)
2721 $ilToolbar->setFormAction($ilCtrl->getFormAction($this));
2722 $ilToolbar->addFormButton($lng->txt(
"insert_object_here"),
2724 $ilToolbar->addFormButton($lng->txt(
"clear_clipboard"),
2738 if ($this->
ilias->getSetting(
"custom_icons"))
2793 $custom_icon = $this->
object->getCustomIconPath();
2799 $title->setTitle($this->lng->txt(
"icon_settings"));
2805 $a_form->addItem(
$title);
2829 $caption = $this->lng->txt(
"cont_custom_icon");
2831 $icon->setSuffixes(
array(
"svg"));
2832 $icon->setImage($custom_icon);
2835 $a_form->addItem($icon);
2839 $title->addSubItem($icon);
2869 $this->
object->getRefId() &&
2870 !$ilAccess->checkAccess(
"write",
"", $this->
object->getRefId()))
2875 return $_SESSION[
"il_cont_admin_panel"];
2884 parent::setColumnSettings($column_gui);
2886 if ($ilAccess->checkAccess(
"write",
"", $this->object->getRefId()) &&
2894 $this->
object->getSubItems($this->isActiveAdministrationPanel(),
true));
2898 if ($ilAccess->checkAccess(
"write",
"", $this->object->getRefId()))
2960 include_once(
'Services/CopyWizard/classes/class.ilCopyWizardPageFactory.php');
2962 global $ilObjDataCache,
$tree;
2964 if(!$_REQUEST[
'clone_source'])
2967 if(isset(
$_SESSION[
'wizard_search_title']))
2969 $this->searchCloneSourceObject();
2977 $source_id = $_REQUEST[
'clone_source'];
2978 $new_type = $_REQUEST[
'new_type'];
2979 $this->ctrl->setParameter($this,
'clone_source',(
int) $_REQUEST[
'clone_source']);
2980 $this->ctrl->setParameter($this,
'new_type',$new_type);
2984 $this->tpl->addJavaScript(
'./Services/CopyWizard/js/ilContainer.js');
2985 $this->tpl->setVariable(
'BODY_ATTRIBUTES',
'onload="ilDisableChilds(\'cmd\');"');
2988 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.container_wizard_page.html',
2989 "Services/Container");
2990 $this->tpl->setVariable(
'FORMACTION',$this->ctrl->getFormAction($this));
2992 $this->tpl->setVariable(
'ALT_IMG',$this->lng->txt(
'obj_'.$new_type));
2993 $this->tpl->setVariable(
'TXT_DUPLICATE',$this->lng->txt($new_type.
'_wizard_page'));
2994 $this->tpl->setVariable(
'INFO_DUPLICATE',$this->lng->txt($new_type.
'_copy_threads_info'));
2995 $this->tpl->setVariable(
'BTN_COPY',$this->lng->txt(
'obj_'.$new_type.
'_duplicate'));
2996 $this->tpl->setVariable(
'BTN_BACK',$this->lng->txt(
'btn_back'));
2997 if(isset(
$_SESSION[
'wizard_search_title']))
2999 $this->tpl->setVariable(
'CMD_BACK',
'searchCloneSource');
3003 $this->tpl->setVariable(
'CMD_BACK',
'create');
3006 $this->tpl->setVariable(
'BTN_TREE',$this->lng->txt(
'treeview'));
3007 $this->tpl->setVariable(
'BTN_LIST',$this->lng->txt(
'flatview'));
3015 foreach($subnodes = $tree->getSubtree($source_node = $tree->getNodeData($source_id),
true) as $node)
3023 if($node[
'type'] ==
'rolf')
3030 for($i = $source_node[
'depth'];$i < $node[
'depth']; $i++)
3032 $this->tpl->touchBlock(
'padding');
3033 $this->tpl->touchBlock(
'end_padding');
3037 $copy_wizard_page->fillTreeSelection($node[
'ref_id'],$node[
'type'],$node[
'depth']);
3039 $this->tpl->setCurrentBlock(
'tree_row');
3041 $this->tpl->setVariable(
'TREE_ALT_IMG',$this->lng->txt(
'obj_'.$node[
'type']));
3042 $this->tpl->setVariable(
'TREE_TITLE',$node[
'title']);
3043 $this->tpl->parseCurrentBlock();
3047 $this->tpl->setCurrentBlock(
'no_content');
3048 $this->tpl->setVariable(
'TXT_NO_CONTENT',$this->lng->txt(
'container_no_items'));
3049 $this->tpl->parseCurrentBlock();
3053 $this->tpl->setCurrentBlock(
'tree_footer');
3054 $this->tpl->setVariable(
'TXT_COPY_ALL',$this->lng->txt(
'copy_all'));
3055 $this->tpl->setVariable(
'TXT_LINK_ALL',$this->lng->txt(
'link_all'));
3056 $this->tpl->setVariable(
'TXT_OMIT_ALL',$this->lng->txt(
'omit_all'));
3057 $this->tpl->parseCurrentBlock();
3063 foreach($tree->getSubTreeTypes($source_id,
array(
'rolf',
'crs')) as $type)
3066 if(strlen(
$html = $copy_wizard_page->getWizardPageBlockHTML()))
3068 $this->tpl->setCurrentBlock(
'obj_row');
3069 $this->tpl->setVariable(
'ITEM_BLOCK',
$html);
3070 $this->tpl->parseCurrentBlock();
3087 include_once(
'./Services/Link/classes/class.ilLink.php');
3088 include_once(
'Services/CopyWizard/classes/class.ilCopyWizardOptions.php');
3092 $new_type = $_REQUEST[
'new_type'];
3094 $clone_source = (int) $_REQUEST[
'clone_source'];
3096 if(!$rbacsystem->checkAccess(
'create',
$ref_id,$new_type))
3098 $ilErr->raiseError($this->lng->txt(
'permission_denied'));
3106 if(!$ilAccess->checkAccess(
'write',
'', $clone_source,$new_type))
3108 $ilErr->raiseError($this->lng->txt(
'permission_denied'));
3115 include_once
'./Services/CopyWizard/classes/class.ilCopyWizardOptions.php';
3119 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id",
$result[
'ref_id']);
3120 $ilCtrl->redirectByClass(
"ilrepositorygui",
"");
3125 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id",
$ref_id);
3126 $ilCtrl->redirectByClass(
"ilrepositorygui",
"");
3140 include_once(
'Services/Container/classes/class.ilContainerSorting.php');
3144 $positions = str_replace(
',',
'.',
$_POST[
'position']);
3146 $sorting->savePost($positions);
3148 $this->ctrl->redirect($this,
"editOrder");
3168 $srcObj =& $ilias->obj_factory->getInstanceByRefId($srcRef);
3169 error_log(__METHOD__.
' cloning srcRef='.$srcRef.
' dstRef='.$dstRef.
'...');
3170 $newRef = $srcObj->cloneObject($dstRef)->getRefId();
3171 error_log(__METHOD__.
' ...cloning... newRef='.$newRef.
'...');
3176 if (! is_null($newName))
3178 $newObj =& $ilias->obj_factory->getInstanceByRefId($newRef);
3179 $newObj->setTitle($newName);
3184 $mapping[$newRef] = $srcRef;
3187 $children = $tree->getChilds($srcRef);
3188 foreach ($tree->getChilds($srcRef) as $child)
3192 if ($child[
"type"] !=
'rolf')
3194 $this->
cloneNodes($child[
"ref_id"],$newRef,$mapping);
3198 if (count($rolf = $tree->getChildsByType($newRef,
"rolf")))
3200 $mapping[$rolf[0][
"ref_id"]] = $child[
"ref_id"];
3204 error_log(__METHOD__.
' ...cloned srcRef='.$srcRef.
' dstRef='.$dstRef.
' newRef='.$newRef);
3222 $a_item_list_gui->addCustomProperty($lng->txt(
'path'),
3223 ilContainer::buildPath($a_item_data[
'ref_id'], $this->
object->getRefId()),
3235 $path_arr = $tree->getPathFull($a_ref_id, $a_course_ref_id);
3237 foreach($path_arr as
$data)
3243 $path .= $data[
'title'];
3258 global $ilTabs,
$tpl;
3263 $tpl->setContent($this->form->getHTML());
3265 $ilTabs->activateTab(
"obj_sty");
3275 $tpl->setTreeFlatIcon(
"",
"");
3276 $ilTabs->clearTargets();
3281 $ilTabs->setBackTarget($lng->txt(
"cntr_back_to_old_editor"),
3282 $ilCtrl->getLinkTarget($this,
"switchToOldEditor"),
"_top");
3286 $ilTabs->setBackTarget($lng->txt(
"back"),
"./goto.php?target=".$this->object->getType().
"_".
3287 $this->
object->getRefId(),
"_top");
3290 include_once(
"./Services/Container/classes/class.ilContainerPageGUI.php");
3292 $style_id = $this->
object->getStyleSheetId();
3302 $ilCtrl->getHTML($page_gui);
3303 $ilTabs->setTabActive(
"obj_sty");
3305 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
3306 $lng->loadLanguageModule(
"style");
3308 include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
3311 $fixed_style = $ilSetting->get(
"fixed_content_style_id");
3314 if ($fixed_style > 0)
3318 $this->lng->txt(
"global_fixed").
")");
3319 $this->form->addItem($st);
3326 $st_styles[0] = $this->lng->txt(
"default");
3336 $this->form->addItem($st);
3341 $this->form->addCommandButton(
"editStyle",
3342 $lng->txt(
"style_edit_style"));
3343 $this->form->addCommandButton(
"deleteStyle",
3344 $lng->txt(
"style_delete_style"));
3352 $st_styles,
false,
true);
3353 $style_sel =
new ilSelectInputGUI($lng->txt(
"style_current_style"),
"style_id");
3355 $style_sel->setValue($style_id);
3356 $this->form->addItem($style_sel);
3358 $this->form->addCommandButton(
"saveStyleSettings",
3360 $this->form->addCommandButton(
"createStyle",
3361 $lng->txt(
"sty_create_ind_style"));
3364 $this->form->setTitle($lng->txt(
"obj_sty"));
3365 $this->form->setFormAction($ilCtrl->getFormAction($this));
3375 $ilCtrl->redirectByClass(
"ilobjstylesheetgui",
"create");
3385 $ilCtrl->redirectByClass(
"ilobjstylesheetgui",
"edit");
3395 $ilCtrl->redirectByClass(
"ilobjstylesheetgui",
"delete");
3405 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
3406 if ($ilSetting->get(
"fixed_content_style_id") <= 0 &&
3408 || $this->
object->getStyleSheetId() == 0))
3411 $this->
object->update();
3414 $this->ctrl->redirect($this,
"editStyleProperties");
3431 include_once
'Services/Object/classes/class.ilObjectListGUIFactory.php';
3433 $item_list_gui->setContainerObject($this);
3435 $item_list_gui->enableComments(
true);
3436 $item_list_gui->enableNotes(
true);
3437 $item_list_gui->enableTags(
true);
3444 global $ilPluginAdmin;
3445 $pl_names = $ilPluginAdmin->getActivePluginsForSlot(
IL_COMP_SERVICE,
"UIComponent",
"uihk");
3446 foreach ($pl_names as $pl)
3449 $gui_class = $ui_plugin->getUIClassInstance();
3450 $resp = $gui_class->getHTML(
"Services/Container",
"async_item_list",
array(
"html" =>
$html));
3453 $html = $gui_class->modifyHTML(
$html, $resp);
3467 global
$tpl,$ilToolbar;
3475 include_once (
'Services/WebDAV/classes/class.ilDAVServer.php');
3477 $ilToolbar->addButton(
3478 $this->lng->txt(
'mount_webfolder'),
3479 $davServer->getMountURI($this->
object->getRefId()),
3482 $davServer->getFolderURI($this->object->getRefId())
3485 $tpl->setContent($this->form->getHTML());
3494 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
3496 $this->form->setFormAction($this->ctrl->getFormAction($this));
3499 $ipass =
new ilPasswordInputGUI($this->lng->txt(
"desired_password"),
"new_password");
3502 $this->form->addItem($ipass);
3503 $this->form->addCommandButton(
"savePassword", $this->lng->txt(
"save"));
3504 $this->form->addCommandButton(
'cancel', $this->lng->txt(
'cancel'));
3506 $this->form->setTitle($this->lng->txt(
"chg_ilias_and_webfolder_password"));
3507 $this->form->setFormAction($this->ctrl->getFormAction($this));
3521 if($form->checkInput())
3523 $ilUser->resetPassword($this->form->getInput(
'new_password'),$this->form->getInput(
'new_password'));
3528 $form->setValuesByPost();
3544 $item_data = $this->
object->getSubItems(
false,
false, (
int)
$_GET[
"child_ref_id"]);
3548 include_once
'./Modules/Session/classes/class.ilEventItems.php';
3550 if(in_array((
int)$_GET[
"child_ref_id"], $event_items))
3552 include_once(
'./Services/Object/classes/class.ilObjectActivation.php');
3553 foreach ($this->
object->items[
"sess"] as $id)
3556 foreach($items as $event_item)
3558 if ($event_item[
"child"] == (
int)$_GET[
"child_ref_id"])
3561 if((
int)$_GET[
"parent_ref_id"])
3563 $event_item[
"parent"] = (int)$_GET[
"parent_ref_id"];
3565 $html = $container_view->renderItem($event_item);
3574 foreach ($this->
object->items[
"_all"] as $id)
3576 if ($id[
"child"] == (
int) $_GET[
"child_ref_id"])
3578 $html = $container_view->renderItem($id);
3588 echo $tpl->getOnLoadCodeForAsynch();
3603 $lg = parent::initHeaderAction($a_sub_type, $a_sub_id);
3606 include_once
'./Services/WebServices/FileManager/classes/class.ilFMSettings.php';
3611 $lg->addCustomCommand($this->ctrl->getLinkTarget($this,
'fileManagerLaunch'),
'fm_start',
'_blank');
3625 $tpl =
new ilTemplate(
'tpl.fm_launch_ws.html',
false,
false,
'Services/WebServices/FileManager');
3626 $tpl->setVariable(
'JNLP_URL',ILIAS_HTTP_PATH.
'/Services/WebServices/FileManager/lib/dist/FileManager.jnlp');
3627 $tpl->setVariable(
'SESSION_ID',
$_COOKIE[
'PHPSESSID'].
'::'.CLIENT_ID);
3628 $tpl->setVariable(
'UID',$ilUser->getId());
3629 $tpl->setVariable(
'REF_ID', $this->
object->getRefId());
3630 $tpl->setVariable(
'WSDL_URI', ILIAS_HTTP_PATH.
'/webservice/soap/server.php?wsdl');
3632 $tpl->setVariable(
'REST_URI',ILIAS_HTTP_PATH.
'/Services/WebServices/Rest/server.php');
3633 $tpl->setVariable(
'FILE_LOCKS',0);
3636 include_once(
"./Modules/SystemFolder/classes/class.ilObjSystemFolder.php");
3637 $header_top_title = ilObjSystemFolder::_getHeaderTitle();
3638 $tpl->setVariable(
'HEADER_TITLE',$header_top_title ? $header_top_title :
'');
3652 if (!empty(
$_GET[
"set_mode"]))
3655 if ($ilUser->getId() != ANONYMOUS_USER_ID)
3657 $ilUser->writePref(
"il_rep_mode",
$_GET[
"set_mode"]);
3664 if ($ilUser->getId() != ANONYMOUS_USER_ID)
3666 $_SESSION[
"il_rep_mode"] = $ilUser->getPref(
"il_rep_mode");
3673 $_SESSION[
"il_rep_mode"] = $ilSetting->get(
"default_repository_view");
3676 $mode = (
$_SESSION[
"il_rep_mode"] !=
"")
3681 if ($mode ==
"tree" && (strtolower(
$_GET[
"baseClass"]) !=
"iladministrationgui"))
3683 include_once(
"./Services/Repository/classes/class.ilRepositoryExplorerGUI.php");
3685 if (!$exp->handleCommand())
3687 $tpl->setLeftNavContent($exp->getHTML());
3699 include_once(
'Services/Container/classes/class.ilContainerSortingSettings.php');
3700 include_once
'./Services/Container/classes/class.ilContainer.php';
3708 $sort_inherit->setTitle(
3709 $this->lng->txt(
'sort_inherit_prefix').
3710 ' ('.ilContainerSortingSettings::sortModeToString(
3712 $this->
object->getId())).
') ' 3715 $sort_inherit->setInfo($this->lng->txt(
'sorting_info_inherit'));
3716 $sort->addOption($sort_inherit);
3721 $this->lng->txt(
'sorting_title_header'),
3724 $sort_title->
setInfo($this->lng->txt(
'sorting_info_title'));
3727 $sort->addOption($sort_title);
3732 $sort_activation->
setInfo($this->lng->txt(
'sorting_creation_info'));
3734 $sort->addOption($sort_activation);
3739 $sort_activation->
setInfo($this->lng->txt(
'crs_sort_timing_info'));
3741 $sort->addOption($sort_activation);
3746 $this->lng->txt(
'sorting_manual_header'),
3749 $sort_manual->
setInfo($this->lng->txt(
'sorting_info_manual'));
3751 $sort->addOption($sort_manual);
3755 if(in_array($settings->getSortMode(), $a_sorting_settings))
3757 $sort->setValue($settings->getSortMode());
3774 if($a_prefix ==
'manual')
3776 $txt = $this->lng->txt(
'sorting_new_items_direction');
3780 $txt = $this->lng->txt(
'sorting_direction');
3785 $direction->setRequired(TRUE);
3789 $this->lng->txt(
'sorting_asc'),
3792 $direction->addOption($asc);
3796 $this->lng->txt(
'sorting_desc'),
3799 $direction->addOption($desc);
3811 $a_sorting_settings)
3813 $position =
new ilRadioGroupInputGUI($this->lng->txt(
'sorting_new_items_position'),$a_prefix.
'_new_items_position');
3815 $position->setRequired(TRUE);
3819 $this->lng->txt(
'sorting_new_items_at_top'),
3823 $position->addOption($new_top);
3827 $this->lng->txt(
'sorting_new_items_at_bottom'),
3831 $position->addOption($new_bottom);
3835 $order =
new ilRadioGroupInputGUI($this->lng->txt(
'sorting_new_items_order'),$a_prefix.
'_new_items_order');
3837 $order->setRequired(TRUE);
3843 $this->lng->txt(
'sorting_title_header'),
3847 $order->addOption($new_title);
3854 $this->lng->txt(
'sorting_creation_header'),
3858 $order->addOption($new_creation);
3866 $this->lng->txt(
'crs_sort_activation'),
3870 $order->addOption($new_activation);
3886 include_once(
'Services/Container/classes/class.ilContainerSortingSettings.php');
3893 $settings->setSortDirection($form->
getInput(
'title_sorting_direction'));
3896 $settings->setSortDirection($form->
getInput(
'activation_sorting_direction'));
3899 $settings->setSortDirection($form->
getInput(
'creation_sorting_direction'));
3902 $settings->setSortNewItemsPosition($form->
getInput(
'manual_new_items_position'));
3903 $settings->setSortNewItemsOrder($form->
getInput(
'manual_new_items_order'));
3904 $settings->setSortDirection($form->
getInput(
'manual_sorting_direction'));
3908 $settings->update();
3920 include_once(
"./Services/Repository/classes/class.ilRepUtilGUI.php");
3922 $ru->showTrashTable(
$_GET[
"ref_id"]);
3932 global
$log, $ilAppEventHandler,
$lng;
3934 include_once(
"./Services/Repository/classes/class.ilRepUtilGUI.php");
3936 $ru->removeObjectsFromSystem(
$_POST[
"trash_id"]);
3937 $this->ctrl->redirect($this,
"trash");
3945 include_once(
"./Services/Repository/classes/class.ilRepUtilGUI.php");
3947 $ru->restoreObjects(
$_GET[
"ref_id"],
$_POST[
"trash_id"]);
3948 $this->ctrl->redirect($this,
"trash");
3957 include_once(
"./Services/Repository/classes/class.ilRepUtilGUI.php");
3959 if(!isset(
$_POST[
"trash_id"]))
3962 $this->ctrl->redirect($this,
"trash");
3966 $ru->confirmRemoveFromSystemObject(
$_POST[
"trash_id"]);
3975 include_once(
"./Services/Repository/classes/class.ilRepositorySelectorExplorerGUI.php");
3981 $exp->setTypeWhiteList(
array(
"root",
"cat",
"grp",
"crs",
"fold"));
3982 if (
$cmd ==
"link") {
3983 $exp->setSelectMode(
"nodes",
true);
3986 $exp->setSelectMode(
"nodes[]",
false);
3996 $this->ctrl->setReturn($this,
"");
static lookupTemplateId($a_ref_id)
Lookup template id ilDB $ilDB.
static _getRTEClassname()
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static _isActionsVisible()
Static getter.
static _exists($a_parent_type, $a_id, $a_lang="", $a_no_cache=false)
Checks whether page exists.
initManualSortingOptionForm(ilContainerSortingSettings $settings, $element, $a_prefix, $a_sorting_settings)
Add manual sorting options.
getContentGUI()
Get content gui object.
getAsynchItemListObject()
Get item list command drop down asynchronously.
static _getInstanceByType($a_source_id, $a_item_type)
Get instance by type.
saveSortingObject()
Save Sorting.
static prepareFormOutput($a_str, $a_strip=false)
prepares string output for html forms public
This class represents an option in a radio group.
deleteStyleObject()
Delete Style.
static _getIcon($a_obj_id="", $a_size="big", $a_type="", $a_offline=false)
Get icon for repository item.
addMessageRow(&$a_tpl, $a_message, $a_type)
add message row
redrawListItemObject()
Redraw a list item (ajax)
initAndDisplayMoveIntoObjectObject()
initHeaderAction($a_sub_type=null, $a_sub_id=null)
Add file manager link.
enableAdministrationPanelObject()
enable administration panel
removeFromSystemObject()
remove objects from trash bin and all entries therefore every object needs a specific deleteObject() ...
clearObject()
clear clipboard and go back to last object
addStandardRow(&$a_tpl, $a_html, $a_item_ref_id="", $a_item_obj_id="", $a_image_type="")
adds a standard row to a block template
setBlockProperty($a_block_type, $a_property, $a_value)
This function is supposed to be used for block type specific properties, that should be passed to ilB...
showPasswordInstructionObject($a_init=true)
Show webdav password instruction.
setValue($a_value)
Set Value.
setSortMode($a_mode)
set sort mode
const SORT_NEW_ITEMS_POSITION_TOP
static getItemsByEvent($a_event_id)
Get session material / event items.
Shows all items grouped by type.
cloneWizardPageTreeObject()
public
saveSortingSettings(ilPropertyFormGUI $form)
Save sorting settings.
Explorer for selecting repository items.
fileManagerLaunchObject()
Launch jnlp.
& newBlockTemplate()
determin admin commands
static _getUsedHTMLTagsAsString($a_module="")
Returns a string of all allowed HTML tags for text editing.
renderObject()
render the object
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.
Container page GUI class.
static getStyleSheetLocation($mode="output", $a_css_name="", $a_css_location="")
get full style sheet file name (path inclusive) of current user
static copyFile($obj_id, $title, $tmpdir)
getEditFormValues()
Get values for edit form.
createStyleObject()
Create Style.
setTitleAndDescription()
called by prepare output
initAndDisplayCopyIntoMultipleObjectsObject()
static _getItemsOfContainer($a_ref_id)
cloneAllObject()
Clone all object Overwritten method for copying container objects.
allowBlocksMoving()
Standard is to allow blocks moving.
static _recordWriteEvent($obj_id, $usr_id, $action, $parent_obj_id=null)
Records a write event.
trashObject()
Show trash content of object.
static _getStandardStyles($a_exclude_default_style=false, $a_include_deactivated=false, $a_scope=0)
Get standard styles.
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
editPageContentObject()
edit page content (for repository root node and categories)
static _isInTrash($a_ref_id)
checks wether object is in trash
executeCommand()
execute command note: this method is overwritten in all container objects
editOrderObject()
Edit order.
switchToStdEditorObject()
Switch to standard page editor.
prepareOutput($a_show_subobjects=true)
prepare output
static _lookupTitle($a_id)
lookup object title
confirmRemoveFromSystemObject()
confirmation screen remove from system
createObject()
create new object form
static _isActive()
Static getter.
isActiveOrdering()
Check if ordering is enabled.
enableMultiDownloadObject()
static addToDesktop()
Add desktop item public.
setInfo($a_info)
Set Info.
setPageEditorTabs()
Add page editor tabs.
static getASCIIFilename($a_filename)
convert utf8 to ascii filename
initAndDisplayLinkIntoMultipleObjectsObject()
static gatherFaPa($a_ref_id, array $a_role_ids, $a_add_action=false)
isActiveAdministrationPanel()
initSortingDirectionForm(ilContainerSortingSettings $sorting_settings, $element, $a_prefix)
Add sorting direction.
static _catchupWriteEvents($obj_id, $usr_id, $timestamp=null)
Catches up with all write events which occured before the specified timestamp.
static _lookupObjectId($a_ref_id)
lookup object id
getSortNewItemsOrder()
GET new item order.
static _lookupStandard($a_id)
Lookup standard flag.
static _lookupIconPath($a_id, $a_size="big")
lookup icon path
initFormPasswordInstruction()
Init password form.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static _isFinished($a_copy_id)
check if copy is finished
addHeaderRow(&$a_tpl, $a_type, $a_show_image=true)
adds a header row to a block template
setRepositoryItems($a_repositoryitems)
Set Repository Items.
pasteObject()
paste object from clipboard to current place Depending on the chosen command the object(s) are linked...
if(!is_dir( $entity_dir)) exit("Fatal Error ([A-Za-z0-9]+)\+" &#(? foreach( $entity_files as $file) $output
editStyleObject()
Edit Style.
useNewEditorObject()
Use new editor (-> delete xhtml content page)
__construct($a_data, $a_id, $a_call_by_reference=true, $a_prepare_output=true)
Constructor public.
editStylePropertiesObject()
Edit style properties.
static showMemberViewSwitch($a_ref_id)
Show member view switch.
const SORT_NEW_ITEMS_POSITION_BOTTOM
GUI class for didactic template settings inside repository objects.
showPermanentLink(&$tpl)
show permanent link
getAllNestedCategories($ref_id)
savePasswordObject()
Save password.
undeleteObject()
Get objects back from trash.
if(!is_array($argv)) $options
static _existsAndNotEmpty($a_parent_type, $a_id, $a_lang="-")
checks whether page exists and is not empty (may return true on some empty pages) ...
static _buildPath($a_ref_id, $a_course_ref_id)
build path
addSubItem($a_item)
Add Subitem.
showCustomIconsEditing($a_input_colspan=1, ilPropertyFormGUI $a_form=null, $a_as_section=true)
show edit section of custom icons for container
linkObject()
create an new reference of an object in tree it's like a hard link of unix
Column user interface class.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
clearAdminCommandsDetermination()
cleaer administration commands determination
setColumnSettings(ilColumnGUI $column_gui)
May be overwritten in subclasses.
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.
const SORT_NEW_ITEMS_ORDER_CREATION
allowBlocksConfigure()
Standard is to allow blocks configuration.
Class ilObjectGUI Basic methods of all Output classes.
static _lookupObjId($a_id)
Repository explorer GUI class.
special template class to simplify handling of ITX/PEAR
omitLocator($a_omit=true)
static getEffectiveContentStyleId($a_style_id, $a_type="")
Get effective Style Id.
Repository GUI Utilities.
static lookupSortModeFromParentContainer($a_obj_id)
Lookup sort mode from parent container.
showPasteTreeObject()
Show paste tree.
saveStyleSettingsObject()
Save style settings.
addPageTabs()
Add page tabs.
forwardToStyleSheet()
Forward to style object.
& forwardToPageObject()
forward command to page object
Class to report exception.
static getPluginObject($a_ctype, $a_cname, $a_slot_id, $a_pname)
Get Plugin Object.
redirection script todo: (a better solution should control the processing via a xml file) ...
static _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.
cancelMoveLinkObject()
Cancel move|link empty clipboard and return to parent.
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static getSyntaxStylePath()
get syntax style path
static deliverFile($a_file, $a_filename, $a_mime='', $isInline=false, $removeAfterDelivery=false, $a_exit_after=true)
deliver file for download via browser.
static getInstance()
Get singelton instance.
__showTimingsButton(&$tpl)
showPossibleSubObjects()
show possible sub objects selection list
static zip($a_dir, $a_file, $compress_content=false)
zips given directory/file into given zip.file
modifyItemGUI($a_item_list_gui, $a_item_data, $a_show_path)
Modify list gui for presentation in container type $lng.
copyObject()
Copy object(s) out from a container and write the information to clipboard It is not possible to copy...
Create styles array
The data for the language used.
static _lookupType($a_id, $a_reference=false)
lookup object type
disableAdministrationPanelObject()
enable administration panel
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static makeDir($a_dir)
creates a new directory and inherits all filesystem permissions of the parent directory You may pass ...
static _lookupContainerSetting($a_id, $a_keyword, $a_default_value=NULL)
Lookup a container setting.
cloneWizardPageListObject()
public
const SORT_NEW_ITEMS_ORDER_ACTIVATION
getTabs()
common tabs for all container objects (should be called at the end of child getTabs() method ...
static getContentStylePath($a_style_id)
get content style path
Shows all items in one block.
static ilTempnam($a_temp_path=null)
Create a temporary file in an ILIAS writable directory.
setContentSubTabs()
Set content sub tabs.
static removeFromDesktop()
Remove item from personal desktop public.
downloadMultipleObjects($a_ref_ids)
static getInstance()
Get singleton instance.
setStyleId($a_styleid)
Set Style Id.
getSortNewItemsPosition()
GET new item position.
performPasteIntoMultipleObjectsObject()
static _getListGUIByType($a_type, $a_context=ilObjectListGUI::CONTEXT_REPOSITORY)
This class represents a non editable value in a property form.
initSortingForm(ilPropertyFormGUI $form, array $a_sorting_settings)
Append sorting settings to property form.
Interface for gui classes (e.g ilLuceneSearchGUI) that offer add/remove to/from desktop.
Create new PHPExcel object
obj_idprivate
Shows all items in one block.
Render add new item selector.
Class ilObjStyleSheetGUI.
static _adjustMovedObjectConditions($a_ref_id)
In the moment it is not allowed to create preconditions on objects that are located outside of a cour...
static getInstance()
Get instance.
const SORT_DIRECTION_DESC
static add($a_action, $a_ref_id, array $a_diff, $a_source_ref_id=false)
getAllNestedFiles($ref_id)
Get all files that are nested in the category whose ref_id is passed to this function or are nested i...
static getInstance($a_obj_id)
Get instance.
setTabHook($a_object, $a_function)
Set tab hook.
static _lookupAbsolutePath($obj_id, $a_version=null)
return absolute path for version
for($i=1; $i<=count($kw_cases_sel); $i+=1) $lang
getCreationMode()
get creation mode
cutObject()
cut object(s) out from a container and write the information to clipboard
static getInstanceByRefId($a_ref_id, $stop_on_error=true)
get an instance of an Ilias object by reference id
static _writeContainerSetting($a_id, $a_keyword, $a_value)
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.
static _cleanupMediaObjectUsage($a_text, $a_usage_type, $a_usage_id)
Synchronises appearances of media objects in $a_text with media object usage table.
initStylePropertiesForm()
Init style properties form.
render()
Add new item selection to current page incl.
static _lookupSortMode($a_obj_id)
lookup sort mode
Add data(end) time
Method that wraps PHPs time in order to allow simulations with the workflow.
static _getInstance($a_obj_id)
get instance by obj_id
showAdministrationPanel(&$tpl)
show administration panel
setAdminCommands($a_admincommands)
Set Administration Commmands.
isActiveItemOrdering()
Check if item ordering is enabled.
static recurseFolder($refid, $title, $tmpdir)
private functions which iterates through all folders and files and create an according file structure...
editPageFrameObject()
show page editor frameset
getContainerPageHTML()
Get container page HTML.
const SORT_NEW_ITEMS_ORDER_TITLE
static delDir($a_dir, $a_clean_only=false)
removes a dir and all its content (subdirs and files) recursively
cloneNodes($srcRef, $dstRef, &$mapping, $newName=null)
Recursively clones all nodes of the RBAC tree.
cloneWizardPageObject($a_tree_view=true)
Show clone wizard page for container objects.
getSortDirection()
Get sort direction.
keepObjectsInClipboardObject()
Keep objects in the clipboard.
clipboardObject()
show clipboard
static _getLink($a_ref_id, $a_type='', $a_params=array(), $append="")
setSideColumnReturn()
Set return point for side column actions.
setEnableMovement($a_enablemovement)
Set Enable Movement.
GUI class for course objective view.
switchToOldEditorObject()
Switch to old page editor.
addStandardContainerSubTabs($a_include_view=true)
Add standar container subtabs for view, manage, oderdering and text/media editor link.
cancelPageContentObject()