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 __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';
 
  111                        $this->object->getRefId()
 
  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();
 
  141                include_once (
"./Services/Style/Content/classes/class.ilObjStyleSheetGUI.php");
 
  142                $this->ctrl->setReturn($this, 
"editStyleProperties");
 
  143                $style_gui = 
new ilObjStyleSheetGUI(
"", $this->object->getStyleSheetId(), 
false, 
false);
 
  144                $style_gui->omitLocator();
 
  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");
 
  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();
 
  221                        $this->object->getId()))
 
  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");
 
  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/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(
 
  650                                ($this->object->gotItems() && !
$_SESSION[
"clipboard"]) ? 
true : 
false,
 
  651                                ($this->object->gotItems() && !
$_SESSION[
"clipboard"]) ? 
true : 
false 
  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();
 
  810                $GLOBALS[
"tpl"]->setPermanentLink($this->object->getType(),
 
  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");
 
 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())
 
 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';
 
 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);
 
 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");
 
 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")
 
 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")
 
 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();
 
 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')
 
 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().
']');
 
 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)
 
 2016                                        $revIdMapping = array(); 
 
 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);
 
 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)
 
 2055                                        $rbacadmin->adjustMovedObjectPermissions(
$ref_id, $old_parent);
 
 2057                                        include_once(
'./Services/AccessControl/classes/class.ilConditionHandler.php');
 
 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));
 
 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';
 
 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);
 
 2156                $_SESSION[
'paste_linked_repexpand'] = array();
 
 2163                foreach((array)
$path as $node_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);
 
 2304                $_SESSION[
'paste_copy_repexpand'] = array();
 
 2311                foreach((array)
$path as $node_id)
 
 2313                        if(!in_array($node_id, 
$_SESSION[
'paste_copy_repexpand']))
 
 2314                                $_SESSION[
'paste_copy_repexpand'][] = $node_id;
 
 2373                $_SESSION[
'paste_cut_repexpand'] = array();
 
 2380                foreach((array)
$path as $node_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")
 
 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');
 
 2607                                $old_parent_data = 
$tree->getNodeData($old_parent);
 
 2609                                        $old_parent_data[
'obj_id']);
 
 2611                                        $this->object->getId());
 
 2618                if (
$_SESSION[
"clipboard"][
"cmd"] == 
"link")
 
 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));
 
 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");
 
 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()) &&
 
 2887                        $this->isActiveAdministrationPanel() &&
 
 2888                        $this->allowBlocksMoving())
 
 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)
 
 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();
 
 3295                        $page_gui->setStyleId($style_id);
 
 3301                $page_gui->setTabHook($this, 
"addPageTabs");
 
 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);
 
 3354                                $style_sel->setOptions($st_styles);
 
 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");
 
 3500                $ipass->setRequired(
true);
 
 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);
 
 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)
 
 3664                        if (
$ilUser->getId() != ANONYMOUS_USER_ID)
 
 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);
 
 3801                $element->addSubItem($direction);
 
 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);
 
 3833                $element->addSubItem($position);
 
 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);
 
 3873                $element->addSubItem($order);
 
 3886                include_once(
'Services/Container/classes/class.ilContainerSortingSettings.php');
 
 3888                $settings->setSortMode($form->
getInput(
"sorting"));
 
 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, 
"");
 
sprintf('%.4f', $callTime)
An exception for terminatinating execution or to throw for unit testing.
static _catchupWriteEvents($obj_id, $usr_id, $timestamp=null)
Catches up with all write events which occured before the specified timestamp.
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.
static _recordWriteEvent($obj_id, $usr_id, $action, $parent_obj_id=null)
Records a write event.
Column user interface class.
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...
setEnableMovement($a_enablemovement)
Set Enable Movement.
setRepositoryItems($a_repositoryitems)
Set Repository Items.
setAdminCommands($a_admincommands)
Set Administration Commmands.
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
showAdministrationPanel(&$tpl)
show administration panel
clipboardObject()
show clipboard
initAndDisplayMoveIntoObjectObject()
getAsynchItemListObject()
Get item list command drop down asynchronously.
isActiveAdministrationPanel()
savePasswordObject()
Save password.
cloneWizardPageTreeObject()
@access public
setContentSubTabs()
Set content sub tabs.
setSideColumnReturn()
Set return point for side column actions.
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.
getAllNestedCategories($ref_id)
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.
__construct($a_data, $a_id, $a_call_by_reference=true, $a_prepare_output=true)
Constructor @access public.
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.
pasteObject()
paste object from clipboard to current place Depending on the chosen command the object(s) are linked...
editStylePropertiesObject()
Edit style properties.
__showTimingsButton(&$tpl)
editStyleObject()
Edit Style.
saveStyleSettingsObject()
Save style settings.
modifyItemGUI($a_item_list_gui, $a_item_data, $a_show_path)
Modify list gui for presentation in container @global type $lng.
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...
setColumnSettings(ilColumnGUI $column_gui)
May be overwritten in subclasses.
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() ...
executeCommand()
execute command note: this method is overwritten in all container objects
cloneAllObject()
Clone all object Overwritten method for copying container objects.
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 recurseFolder($refid, $title, $tmpdir)
private functions which iterates through all folders and files and create an according file structure...
getTabs()
common tabs for all container objects (should be called at the end of child getTabs() method
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
const SORT_DIRECTION_DESC
const SORT_NEW_ITEMS_ORDER_ACTIVATION
const SORT_NEW_ITEMS_ORDER_TITLE
const SORT_NEW_ITEMS_ORDER_CREATION
static _lookupContainerSetting($a_id, $a_keyword, $a_default_value=NULL)
Lookup a container setting.
static _lookupIconPath($a_id, $a_size="big")
lookup icon path
static _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 _isActive()
Static getter.
static _isActionsVisible()
Static getter.
static getInstance()
Get singelton instance.
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.
static _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.
static _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.
static _lookupStandard($a_id)
Lookup standard flag.
static getSyntaxStylePath()
get syntax style path
static getEffectiveContentStyleId($a_style_id, $a_type="")
Get effective Style Id.
static getContentStylePath($a_style_id)
get content style path
static _getStandardStyles($a_exclude_default_style=false, $a_include_deactivated=false, $a_scope=0)
Get standard styles.
static getItemsByEvent($a_event_id)
Get session material / event items.
Render add new item selector.
static 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.
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.
getCreationMode()
get creation mode
createObject()
create new object form
static _getListGUIByType($a_type, $a_context=ilObjectListGUI::CONTEXT_REPOSITORY)
static getInstance($a_obj_id)
Get instance.
static _lookupObjId($a_id)
static _lookupTitle($a_id)
lookup object title
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 _isInTrash($a_ref_id)
checks wether object is in trash
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.
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 getPluginObject($a_ctype, $a_cname, $a_slot_id, $a_pname)
Get Plugin Object.
static _getRTEClassname()
static _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 ...
if(!is_dir( $entity_dir)) exit("Fatal Error ([A-Za-z0-9]+)\s+" &#(? foreach( $entity_files as $file) $output
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
Interface for gui classes (e.g ilLuceneSearchGUI) that offer add/remove to/from desktop.
for($i=1; $i<=count($kw_cases_sel); $i+=1) $lang
redirection script todo: (a better solution should control the processing via a xml file)
if(!is_array($argv)) $options