5require_once 
"./Services/Container/classes/class.ilContainerGUI.php";
 
   39    public function __construct($a_data, $a_id, $a_call_by_reference = 
true, $a_prepare_output = 
true)
 
   43        $this->rbacsystem = 
$DIC->rbac()->system();
 
   44        $this->nav_history = 
$DIC[
"ilNavigationHistory"];
 
   45        $this->access = 
$DIC->access();
 
   46        $this->ctrl = 
$DIC->ctrl();
 
   47        $this->tabs = 
$DIC->tabs();
 
   48        $this->
help = $DIC[
"ilHelp"];
 
   49        $this->lng = 
$DIC->language();
 
   50        $this->
user = $DIC->user();
 
   51        $this->tree = 
$DIC->repositoryTree();
 
   52        $this->
error = $DIC[
"ilErr"];
 
   54        $this->tpl = 
$DIC[
"tpl"];
 
   55        $this->toolbar = 
$DIC->toolbar();
 
   56        $this->rbacreview = 
$DIC->rbac()->review();
 
   57        $this->rbacadmin = 
$DIC->rbac()->admin();
 
   63        $GLOBALS[
'lng']->loadLanguageModule(
'cat');
 
   64        $GLOBALS[
'lng']->loadLanguageModule(
'obj');
 
   69        if (is_object($this->
object)) {
 
   70            include_once(
"./Services/Container/classes/class.ilContainer.php");
 
   71            include_once(
"./Services/Object/classes/class.ilObjectServiceSettingsGUI.php");
 
   73                $this->object->getId(),
 
   88        $next_class = $this->ctrl->getNextClass($this);
 
   89        $cmd = $this->ctrl->getCmd();
 
   91        $header_action = 
true;
 
   92        switch ($next_class) {
 
   94            case strtolower(ilRepUtilGUI::class):
 
   95                $ru = new \ilRepUtilGUI($this);
 
   96                $this->ctrl->setReturn($this, 
'trash');
 
   97                $this->ctrl->forwardCommand($ru);
 
  101                include_once(
'./Services/User/classes/class.ilObjUserGUI.php');
 
  103                $this->tabs_gui->setTabActive(
'administrate_users');
 
  104                if (!
$_GET[
'obj_id']) {
 
  106                    $this->gui_obj->setCreationMode($this->creation_mode);
 
  107                    $ret = &$this->ctrl->forwardCommand($this->gui_obj);
 
  110                    $this->gui_obj->setCreationMode($this->creation_mode);
 
  111                    $ret = &$this->ctrl->forwardCommand($this->gui_obj);
 
  114                $ilTabs->clearTargets();
 
  115                $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this, 
'listUsers'));
 
  117                $ilHelp->setScreenIdComponent(
"cat");
 
  118                $ilHelp->setScreenId(
"administrate_user");
 
  119                $ilHelp->setSubScreenId($ilCtrl->getCmd());
 
  122            case "ilobjuserfoldergui":
 
  123                include_once(
'./Services/User/classes/class.ilObjUserFolderGUI.php');
 
  126                $this->gui_obj->setUserOwnerId((
int) 
$_GET[
'ref_id']);
 
  127                $this->gui_obj->setCreationMode($this->creation_mode);
 
  128                $ret = &$this->ctrl->forwardCommand($this->gui_obj);
 
  130                $ilTabs->clearTargets();
 
  131                $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this, 
'listUsers'));
 
  133                $ilHelp->setScreenIdComponent(
"cat");
 
  134                $ilHelp->setScreenId(
"administrate_user");
 
  135                $ilHelp->setSubScreenId($ilCtrl->getCmd());
 
  141                include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
 
  142                $this->tpl->setVariable(
 
  143                    "LOCATION_CONTENT_STYLESHEET",
 
  149            case 'ilpermissiongui':
 
  151                $this->tabs_gui->setTabActive(
'perm_settings');
 
  152                include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
 
  154                $ret = &$this->ctrl->forwardCommand($perm_gui);
 
  157            case 'ilinfoscreengui':
 
  158                if ($this->info_screen_enabled) {
 
  164            case 'ilcontainerlinklistgui':
 
  165                include_once(
"Services/Container/classes/class.ilContainerLinkListGUI.php");
 
  167                $ret = &$this->ctrl->forwardCommand($link_list_gui);
 
  171            case "ilcontainerpagegui":
 
  175                    $this->tpl->setContent(
$ret);
 
  177                $header_action = 
false;
 
  180            case 'ilobjectcopygui':
 
  183                include_once 
'./Services/Object/classes/class.ilObjectCopyGUI.php';
 
  186                $this->ctrl->forwardCommand($cp);
 
  189            case "ilobjstylesheetgui":
 
  193            case 'ilusertablegui':
 
  194                include_once 
'./Services/User/classes/class.ilUserTableGUI.php';
 
  196                $u_table->initFilter();
 
  197                $this->ctrl->setReturn($this, 
'listUsers');
 
  198                $this->ctrl->forwardCommand($u_table);
 
  201            case "ilcommonactiondispatchergui":
 
  203                include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
 
  205                $this->ctrl->forwardCommand($gui);
 
  208            case 'ildidactictemplategui':
 
  209                $this->ctrl->setReturn($this, 
'edit');
 
  210                include_once 
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateGUI.php';
 
  212                $this->ctrl->forwardCommand($did);
 
  217                $this->tabs_gui->setTabActive(
'export');
 
  218                include_once 
'./Services/Export/classes/class.ilExportGUI.php';
 
  220                $exp->addFormat(
'xml');
 
  221                $this->ctrl->forwardCommand($exp);
 
  224            case 'ilobjecttranslationgui':
 
  229                include_once(
"./Services/Object/classes/class.ilObjectTranslationGUI.php");
 
  231                $this->ctrl->forwardCommand($transgui);
 
  234            case 'ilobjtaxonomygui':
 
  238                include_once(
"./Services/Taxonomy/classes/class.ilObjTaxonomyGUI.php");
 
  240                $tax->setAssignedObject($this->object->getId());
 
  241                $tax->setMultiple(
true);
 
  242                $tax->setListInfo($this->lng->txt(
"cntr_tax_list_info"));
 
  243                $this->ctrl->forwardCommand($tax);
 
  246            case 'ilobjectmetadatagui':
 
  249                $this->tabs_gui->activateTab(
'meta_data');
 
  253            case "ilcontainernewssettingsgui":
 
  255                $this->tabs_gui->setTabActive(
'settings');
 
  257                $this->tabs_gui->activateSubTab(
'obj_news_settings');
 
  259                $news_set_gui->setHideByDate(
true);
 
  260                $this->ctrl->forwardCommand($news_set_gui);
 
  263            case 'ilcontainerfilteradmingui':
 
  266                $this->
setEditTabs($active_tab = 
"settings_filter");
 
  267                $this->tabs_gui->activateTab(
'settings');
 
  272                if ($cmd == 
"infoScreen") {
 
  280                    $ilAccess->checkAccess(
"read", 
"", 
$_GET[
"ref_id"])) {
 
  281                    include_once(
"./Services/Link/classes/class.ilLink.php");
 
  282                    $ilNavigationHistory->addItem(
 
  290                include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
 
  291                if (is_object($this->
object)) {
 
  292                    $this->tpl->setVariable(
 
  293                        "LOCATION_CONTENT_STYLESHEET",
 
  302                $this->tabs_gui->activateTab(
"view_content");   
 
  308        if ($header_action) {
 
  322        parent::addHeaderAction();
 
  334        include_once 
'Services/Object/classes/class.ilObjectMetaDataGUI.php';
 
  336        include_once 
"Services/Object/classes/class.ilObjectServiceSettingsGUI.php";
 
  338            $this->object->getId(),
 
  342            $md_gui->enableTaxonomyDefinition(
true);
 
  343            $tax = $md_gui->getTaxonomyObjGUI();
 
  344            $tax->setMultiple(
true);
 
  345            $tax->setListInfo($this->lng->txt(
"cntr_tax_list_info"));
 
  347            if (
sizeof($taxonomies)) {
 
  348                $md_gui->setTaxonomySettings(
function ($form) {
 
  351                    $form->addItem($block);
 
  355                    foreach ($tax as $tax_id => $tax_item) {
 
  362                        if ($tax_item[
"source"] != $this->object->getRefId()) {
 
  364                            $loc->setTextOnly(
true);
 
  365                            $loc->addRepositoryItems($tax_item[
"source"]);
 
  366                            $option->setInfo($loc->getHTML());
 
  369                        $block->addOption($option);
 
  371                        if (in_array($tax_id, $current)) {
 
  376                    $block->setValue($value);
 
  377                }, 
function ($form) {
 
  379                    if (
sizeof($taxonomies)) {
 
  380                        $sblock = $form->getInput(
"sblock");
 
  385                            $this->object->getId(),
 
  390                        if (is_array($sblock)) {
 
  391                            foreach ($sblock as $tax_id) {
 
  393                                    $this->object->getId(),
 
  417        if ($this->ctrl->getCmd() == 
"editPageContent") {
 
  420        #$this->ctrl->setParameter($this,"ref_id",$this->ref_id);
 
  422        $ilHelp->setScreenIdComponent(
"cat");
 
  424        if (
$rbacsystem->checkAccess(
'read', $this->ref_id)) {
 
  425            $force_active = (
$_GET[
"cmd"] == 
"" || 
$_GET[
"cmd"] == 
"render")
 
  428            $this->tabs_gui->addTab(
 
  430                $lng->txt(
"content"),
 
  431                $this->ctrl->getLinkTarget($this, 
"")
 
  435            if ($this->info_screen_enabled) {
 
  436                $force_active = ($this->ctrl->getNextClass() == 
"ilinfoscreengui" 
  437                    || strtolower(
$_GET[
"cmdClass"]) == 
"ilnotegui")
 
  440                $this->tabs_gui->addTarget(
 
  442                    $this->ctrl->getLinkTargetByClass(
 
  443                        array(
"ilobjcategorygui", 
"ilinfoscreengui"),
 
  446                    array(
"showSummary",
"", 
"infoScreen"),
 
  455        if (
$rbacsystem->checkAccess(
'write', $this->ref_id)) {
 
  456            $force_active = (
$_GET[
"cmd"] == 
"edit")
 
  459            $this->tabs_gui->addTarget(
 
  461                $this->ctrl->getLinkTarget($this, 
"edit"),
 
  471            include_once 
"Services/Object/classes/class.ilObjectMetaDataGUI.php";
 
  474                $this->object->getId(),
 
  478                $mdgui->enableTaxonomyDefinition(
true);
 
  480            $mdtab = $mdgui->getTab();
 
  482                $this->tabs_gui->addTab(
 
  484                    $this->lng->txt(
"meta_data"),
 
  490        include_once 
'./Services/User/classes/class.ilUserAccountSettings.php';
 
  493            $rbacsystem->checkAccess(
'cat_administrate_users', $this->ref_id)) {
 
  494            $this->tabs_gui->addTarget(
 
  495                "administrate_users",
 
  496                $this->ctrl->getLinkTarget($this, 
"listUsers"),
 
  502        if ($ilAccess->checkAccess(
'write', 
'', $this->object->getRefId())) {
 
  503            $this->tabs_gui->addTarget(
 
  505                $this->ctrl->getLinkTargetByClass(
'ilexportgui', 
''),
 
  522        $ilTabs->activateTab(
"view_content");
 
  523        $ret = parent::renderObject();
 
  526            $this->object->getType(),
 
  527            $this->object->getRefId(),
 
  528            $this->object->getId(),
 
  537        if (strtolower(
$_GET[
"baseClass"]) == 
"iladministrationgui") {
 
  538            parent::viewObject();
 
  546        $forms = parent::initCreationForms($a_new_type);
 
  556        include_once(
'Services/Container/classes/class.ilContainerSortingSettings.php');
 
  562        $parent_ref_id = 
$tree->getParentId($a_new_object->
getRefId());
 
  564        include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
 
  573        ilUtil::sendSuccess($this->lng->txt(
"cat_added"), 
true);
 
  574        $this->ctrl->setParameter($this, 
"ref_id", $a_new_object->
getRefId());
 
  585        $this->ctrl->setCmd(
"showSummary");
 
  586        $this->ctrl->setCmdClass(
"ilinfoscreengui");
 
  599        if (!$ilAccess->checkAccess(
"visible", 
"", $this->ref_id)) {
 
  600            $ilErr->raiseError($this->lng->txt(
"msg_no_perm_read"), 
$ilErr->MESSAGE);
 
  603        if (!$this->info_screen_enabled) {
 
  608        $this->tabs_gui->setTabActive(
'info_short');
 
  610        include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
 
  613        $info->enablePrivateNotes();
 
  615        if ($ilAccess->checkAccess(
"read", 
"", 
$_GET[
"ref_id"])) {
 
  620        $info->enableNewsEditing(
false);
 
  621        if ($ilAccess->checkAccess(
"write", 
"", 
$_GET[
"ref_id"])) {
 
  623            $enable_internal_rss = $news_set->get(
"enable_rss_for_internal");
 
  625            if ($enable_internal_rss) {
 
  626                $info->setBlockProperty(
"news", 
"settings", 
true);
 
  627                $info->setBlockProperty(
"news", 
"public_notifications_option", 
true);
 
  631        include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php');
 
  633        $record_gui->setInfoObject($info);
 
  634        $record_gui->parse();
 
  638        $info->addMetaDataSections($this->object->getId(), 0, $this->object->getType());
 
  641        if ($ilCtrl->getNextClass() == 
"ilinfoscreengui") {
 
  642            $ilCtrl->forwardCommand($info);
 
  644            return $ilCtrl->getHTML($info);
 
  657        $this->tabs_gui->activateTab(
'settings');
 
  658        $this->tabs_gui->setSubTabActive(
'edit_cat_settings');
 
  661        $this->tpl->setContent($this->form->getHTML());
 
  677        $this->form->checkInput();
 
  679        if ($this->record_gui->importEditFormPostValues()) {
 
  680            $this->record_gui->writeEditForm();
 
  682            ilUtil::sendSuccess($this->lng->txt(
"settings_saved"), 
true);
 
  683            $this->ctrl->redirect($this, 
"editInfo");
 
  697        if (is_object($this->form)) {
 
  701        include_once(
'Services/Form/classes/class.ilPropertyFormGUI.php');
 
  703        $this->form->setFormAction($this->ctrl->getFormAction($this));
 
  704        $this->form->setTitle($this->lng->txt(
'ext_cat_settings'));
 
  705        $this->form->addCommandButton(
'updateInfo', $this->lng->txt(
'save'));
 
  706        $this->form->addCommandButton(
'editInfo', $this->lng->txt(
'cancel'));
 
  708        include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php');
 
  710        $this->record_gui->setPropertyForm($this->form);
 
  711        $this->record_gui->parse();
 
  721        $this->tabs_gui->addSubTab(
 
  723            $this->lng->txt(
"settings"),
 
  724            $this->ctrl->getLinkTarget($this, 
"edit")
 
  727        $this->tabs_gui->addSubTab(
 
  729            $this->lng->txt(
"obj_multilinguality"),
 
  730            $this->ctrl->getLinkTargetByClass(
"ilobjecttranslationgui", 
"")
 
  735            $this->object->getId(),
 
  741            $this->tabs_gui->addSubTab(
 
  743                $this->lng->txt(
"cont_news_settings"),
 
  744                $this->ctrl->getLinkTargetByClass(
'ilcontainernewssettingsgui')
 
  748        $this->tabs_gui->addSubTab(
 
  750            $this->lng->txt(
"cont_filter"),
 
  751            $this->ctrl->getLinkTargetByClass(
"ilcontainerfilteradmingui", 
"")
 
  754        $this->tabs_gui->activateTab(
"settings");
 
  755        $this->tabs_gui->activateSubTab($active_tab);
 
  762        $this->lng->loadLanguageModule($this->object->getType());
 
  765        include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
 
  767        $form->setFormAction($this->ctrl->getFormAction($this));
 
  768        $form->setTitle($this->lng->txt($this->object->getType() . 
"_edit"));
 
  771        $this->initFormTitleDescription($form);
 
  778        $pres->setTitle($this->lng->txt(
'obj_presentation'));
 
  779        $form->addItem($pres);
 
  782        $form = $obj_service->commonSettings()->legacyForm($form, $this->
object)->addTitleIconVisibility();
 
  785        $form = $obj_service->commonSettings()->legacyForm($form, $this->
object)->addTopActionsVisibility();
 
  788        $form = $obj_service->commonSettings()->legacyForm($form, $this->
object)->addIcon();
 
  791        $form = $obj_service->commonSettings()->legacyForm($form, $this->
object)->addTileImage();
 
  807        $bl = 
new ilNumberInputGUI($this->lng->txt(
"cont_block_limit"), 
"block_limit");
 
  808        $bl->setInfo($this->lng->txt(
"cont_block_limit_info"));
 
  815        include_once 
'Modules/Category/classes/class.ilECSCategorySettings.php';
 
  817        $ecs->addSettingsToForm($form, 
'cat');
 
  821        $sh->setTitle($this->lng->txt(
'obj_features'));
 
  824        include_once 
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
 
  826            $this->object->getId(),
 
  838        $form->addCommandButton(
"update", $this->lng->txt(
"save"));
 
  860            $ilErr->raiseError($this->lng->txt(
"msg_no_perm_write"), 
$ilErr->MESSAGE);
 
  863            if ($form->checkInput()) {
 
  864                $title = $form->getInput(
"title");
 
  865                $desc = $form->getInput(
"desc");
 
  867                $this->
object->setTitle($title);
 
  868                $this->
object->setDescription($desc);
 
  869                $this->
object->update();
 
  874                $obj_service->commonSettings()->legacyForm($form, $this->
object)->saveTitleIconVisibility();
 
  877                $obj_service->commonSettings()->legacyForm($form, $this->
object)->saveTopActionsVisibility();
 
  880                $obj_service->commonSettings()->legacyForm($form, $this->
object)->saveIcon();
 
  883                $obj_service->commonSettings()->legacyForm($form, $this->
object)->saveTileImage();
 
  889                require_once(
'Services/Tracking/classes/class.ilChangeEvent.php');
 
  895                include_once 
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
 
  897                    $this->object->getId(),
 
  910                if ((
int) $form->getInput(
"block_limit") > 0) {
 
  916                include_once 
'Modules/Category/classes/class.ilECSCategorySettings.php';
 
  918                if ($ecs->handleSettingsUpdate()) {
 
  925            $form->setValuesByPost();
 
  926            $this->tpl->setContent($form->getHTML());
 
  947        $ilCtrl = 
$DIC->ctrl();
 
  949        $a_tpl->addBlockfile(
 
  952            "tpl.cat_import_form.html",
 
  956        $a_tpl->setVariable(
"FORMACTION", $ilCtrl->getFormActionByClass(
'ilObjCategoryGUI'));
 
  958        $a_tpl->setVariable(
"TXT_IMPORT_CATEGORIES", 
$lng->txt(
"import_categories"));
 
  959        $a_tpl->setVariable(
"TXT_HIERARCHY_OPTION", 
$lng->txt(
"import_cat_localrol"));
 
  960        $a_tpl->setVariable(
"TXT_IMPORT_FILE", 
$lng->txt(
"import_file"));
 
  961        $a_tpl->setVariable(
"TXT_IMPORT_TABLE", 
$lng->txt(
"import_cat_table"));
 
  963        $a_tpl->setVariable(
"BTN_IMPORT", 
$lng->txt(
"import"));
 
  964        $a_tpl->setVariable(
"BTN_CANCEL", 
$lng->txt(
"cancel"));
 
  967        $parent_role_ids = 
$rbacreview->getParentRoleIds($a_ref_id, 
true);
 
  970        ksort($parent_role_ids);
 
  972        foreach ($parent_role_ids as $key => $par) {
 
  976                $output[
"adopt"][$key][
"check_adopt"] = $check;
 
  977                $output[
"adopt"][$key][
"role_id"] = $par[
"obj_id"];
 
  978                $output[
"adopt"][$key][
"type"] = ($par[
"type"] == 
'role' ? 
'Role' : 
'Template');
 
  979                $output[
"adopt"][$key][
"role_name"] = $par[
"title"];
 
  986        foreach ($output[
"adopt"] as $key => $value) {
 
  987            $a_tpl->setCurrentBlock(
"ADOPT_PERM_ROW");
 
  988            $a_tpl->setVariable(
"CSS_ROW_ADOPT", $value[
"css_row_adopt"]);
 
  989            $a_tpl->setVariable(
"CHECK_ADOPT", $value[
"check_adopt"]);
 
  990            $a_tpl->setVariable(
"LABEL_ID", $value[
"role_id"]);
 
  991            $a_tpl->setVariable(
"TYPE", $value[
"type"]);
 
  992            $a_tpl->setVariable(
"ROLE_NAME", $value[
"role_name"]);
 
  993            $a_tpl->parseCurrentBlock();
 
 1005        $this->ctrl->redirect($this);
 
 1046        $ilCtrl = 
$DIC->ctrl();
 
 1048        require_once(
"./Modules/Category/classes/class.ilCategoryImportParser.php");
 
 1053        if (!@is_dir($import_dir)) {
 
 1059        $file_name = $_FILES[
"importFile"][
"name"];
 
 1062        if (!strcmp($file_name, 
"")) {
 
 1064            $ilCtrl->redirectByClass(
'ilObjCategoryGUI');
 
 1067        $parts = pathinfo($file_name);
 
 1068        $full_path = $import_dir . 
"/" . $file_name;
 
 1074        $subdir = basename($parts[
"basename"], 
"." . $parts[
"extension"]);
 
 1075        $xml_file = $import_dir . 
"/" . $subdir . 
"/" . $subdir . 
".xml";
 
 1079        $importParser->startParsing();
 
 1081        ilUtil::sendSuccess(
$lng->txt(
"categories_imported"), 
true);
 
 1082        $ilCtrl->redirectByClass(
'ilObjCategoryGUI');
 
 1091        include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
 
 1093        $utab->resetOffset();
 
 1094        $utab->resetFilter();
 
 1108        include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
 
 1110        $utab->resetOffset();
 
 1111        $utab->writeFilterToSession();
 
 1122        include_once 
'./Services/User/classes/class.ilLocalUser.php';
 
 1123        include_once 
'./Services/User/classes/class.ilObjUserGUI.php';
 
 1128        if (!
$rbacsystem->checkAccess(
"cat_administrate_users", $this->object->getRefId())) {
 
 1129            $ilErr->raiseError($this->lng->txt(
"msg_no_perm_admin_users"), 
$ilErr->MESSAGE);
 
 1131        $this->tabs_gui->setTabActive(
'administrate_users');
 
 1135        $this->tpl->addBlockfile(
 
 1138            'tpl.cat_admin_users.html',
 
 1143            $ilToolbar->addButton(
 
 1144                $this->lng->txt(
'add_user'),
 
 1145                $this->ctrl->getLinkTargetByClass(
'ilobjusergui', 
'create')
 
 1148            $ilToolbar->addButton(
 
 1149                $this->lng->txt(
'import_users'),
 
 1150                $this->ctrl->getLinkTargetByClass(
'ilobjuserfoldergui', 
'importUserForm')
 
 1157            $this->tpl->setCurrentBlock(
"confirm_delete");
 
 1158            $this->tpl->setVariable(
"CONFIRM_FORMACTION", $this->ctrl->getFormAction($this));
 
 1159            $this->tpl->setVariable(
"TXT_CANCEL", $this->lng->txt(
'cancel'));
 
 1160            $this->tpl->setVariable(
"CONFIRM_CMD", 
'performDeleteUsers');
 
 1161            $this->tpl->setVariable(
"TXT_CONFIRM", $this->lng->txt(
'delete'));
 
 1162            $this->tpl->parseCurrentBlock();
 
 1165        $this->lng->loadLanguageModule(
'user');
 
 1167        include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
 
 1169        $this->tpl->setVariable(
'USERS_TABLE', $utab->getHTML());
 
 1179        include_once 
'./Services/User/classes/class.ilUserAutoComplete.php';
 
 1181        $auto->setSearchFields(array(
'login',
'firstname',
'lastname',
'email'));
 
 1182        $auto->enableFieldSearchableCheck(
true);
 
 1183        $auto->isMoreLinkAvailable(
true);
 
 1185        if (($_REQUEST[
'fetchall'])) {
 
 1189        echo $auto->getList($_REQUEST[
'term']);
 
 1196        include_once 
'./Services/User/classes/class.ilLocalUser.php';
 
 1199        foreach (
$_POST[
'user_ids'] as $user_id) {
 
 1201                die(
'user id not valid');
 
 1208        ilUtil::sendSuccess($this->lng->txt(
'deleted_users'));
 
 1217        if (!count(
$_POST[
'id'])) {
 
 1224        include_once 
'./Services/Utilities/classes/class.ilConfirmationGUI.php';
 
 1226        $confirm->setFormAction($this->ctrl->getFormAction($this));
 
 1227        $confirm->setHeaderText($this->lng->txt(
'sure_delete_selected_users'));
 
 1228        $confirm->setConfirm($this->lng->txt(
'delete'), 
'performDeleteUsers');
 
 1229        $confirm->setCancel($this->lng->txt(
'cancel'), 
'listUsers');
 
 1237                $name[
'lastname'] . 
', ' . 
$name[
'firstname'] . 
' [' . 
$name[
'login'] . 
']' 
 1240        $this->tpl->setContent($confirm->getHTML());
 
 1250        include_once 
'./Services/User/classes/class.ilLocalUser.php';
 
 1252        if (!isset(
$_GET[
'obj_id'])) {
 
 1259        $ilTabs->clearTargets();
 
 1260        $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this, 
'listUsers'));
 
 1262        $ilHelp->setScreenIdComponent(
"cat");
 
 1263        $ilHelp->setScreenId(
"administrate_user");
 
 1264        $ilHelp->setSubScreenId(
"assign_roles");
 
 1269        if (!count($roles)) {
 
 1270            #ilUtil::sendInfo($this->lng->txt('no_roles_user_can_be_assigned_to')); 
 1271            #$this->listUsersObject(); 
 1279        $f_result = array();
 
 1281        foreach ($roles as $role) {
 
 1286                in_array($role[
'obj_id'], $ass_roles) ? 1 : 0,
 
 1291            $f_result[$counter][
'title'] = $role_obj->getTitle() ? $role_obj->getTitle() : 
"";
 
 1292            $f_result[$counter][
'desc'] = $role_obj->getDescription() ? $role_obj->getDescription() : 
"";
 
 1293            $f_result[$counter][
'type'] = $role[
'role_type'] == 
'global' ?
 
 1294                $this->lng->txt(
'global') :
 
 1295                $this->lng->txt(
'local');
 
 1301        include_once(
'./Modules/Category/classes/class.ilCategoryAssignRoleTableGUI.php');
 
 1304        $title = $this->lng->txt(
'role_assignment') . 
' (' . $tmp_obj->getFullname() . 
')';
 
 1305        $table->setTitle($title, 
"icon_role.svg", $this->lng->txt(
"role_assignment"));
 
 1306        $table->setData($f_result);
 
 1307        $this->tpl->setContent($table->getHTML());
 
 1316        include_once 
'./Services/User/classes/class.ilLocalUser.php';
 
 1334        $new_role_ids = 
$_POST[
'role_ids'] ? 
$_POST[
'role_ids'] : array();
 
 1335        $assigned_roles = 
$rbacreview->assignedRoles((
int) $_REQUEST[
'obj_id']);
 
 1336        foreach ($roles as $role) {
 
 1337            if (in_array($role[
'obj_id'], $new_role_ids) and !in_array($role[
'obj_id'], $assigned_roles)) {
 
 1338                $rbacadmin->assignUser($role[
'obj_id'], (
int) $_REQUEST[
'obj_id']);
 
 1340            if (in_array($role[
'obj_id'], $assigned_roles) and !in_array($role[
'obj_id'], $new_role_ids)) {
 
 1341                $rbacadmin->deassignUser($role[
'obj_id'], (
int) $_REQUEST[
'obj_id']);
 
 1344        ilUtil::sendSuccess($this->lng->txt(
'role_assignment_updated'));
 
 1360            $global_roles = 
$rbacreview->getGlobalRolesArray();
 
 1361        } elseif ($tmp_obj->getTimeLimitOwner() == $this->object->getRefId()) {
 
 1362            $global_roles = 
$rbacreview->getGlobalAssignableRoles();
 
 1364            $global_roles = array();
 
 1366        return $roles = array_merge(
 
 1368            $rbacreview->getAssignableChildRoles($this->object->getRefId())
 
 1381        if ($tmp_obj->getTimeLimitOwner() != $this->object->getRefId() and
 
 1387        $new_assigned = $new_assigned ? $new_assigned : array();
 
 1396        $global_assignable = array();
 
 1397        foreach ($ga as $role) {
 
 1398            $global_assignable[] = $role[
'obj_id'];
 
 1401        $new_visible_assigned_roles = array_intersect($new_assigned, $global_assignable);
 
 1402        $all_assigned_roles = array_intersect($assigned, 
$rbacreview->getGlobalRoles());
 
 1403        $main_assigned_roles = array_diff($all_assigned_roles, $global_assignable);
 
 1405        if (!count($new_visible_assigned_roles) and !count($main_assigned_roles)) {
 
 1415        $ilAccess = 
$DIC->access();
 
 1419        if ($ilAccess->checkAccess(
"read", 
"", $a_target)) {
 
 1421        } elseif ($ilAccess->checkAccess(
"visible", 
"", $a_target)) {
 
 1425                $lng->txt(
"msg_no_perm_read_item"),
 
 1440        $this->tabs_gui->setTabActive(
"obj_tool_setting_taxonomies");
 
 1441        $this->tabs_gui->addSubTab(
 
 1443            $this->lng->txt(
"cntr_taxonomy_sideblock_settings"),
 
 1444            $this->ctrl->getLinkTarget($this, 
"editTaxonomySettings")
 
 1446        $this->tabs_gui->addSubTab(
 
 1448            $this->lng->txt(
"cntr_taxonomy_definitions"),
 
 1449            $this->ctrl->getLinkTargetByClass(
"ilobjtaxonomygui", 
"")
 
 1451        $this->tabs_gui->activateSubTab($a_active);
 
 1458        include_once 
"Services/Object/classes/class.ilObjectServiceSettingsGUI.php";
 
 1459        include_once 
"Services/Taxonomy/classes/class.ilObjTaxonomy.php";
 
 1464        foreach (
$tree->getPathFull($this->object->getRefId()) as $node) {
 
 1469                if (
sizeof($node_taxes)) {
 
 1470                    foreach ($node_taxes as $node_tax) {
 
 1471                        $res[$node_tax[
"tax_id"]] = array(
 
 1472                            "title" => $node_tax[
"title"]
 
 1473                        , 
"source" => $node[
"child"]
 
 1492            if (substr($keyword, 0, strlen($prefix)) == $prefix && (
bool) $value) {
 
 1493                $res[] = substr($keyword, strlen($prefix));
 
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
An exception for terminatinating execution or to throw for unit testing.
error($a_errmsg)
set error message @access public
TableGUI class for role assignments.
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 _catchupWriteEvents($obj_id, $usr_id, $timestamp=null)
Catches up with all write events which occured before the specified timestamp.
static _recordWriteEvent($obj_id, $usr_id, $action, $parent_obj_id=null)
Records a write event.
This class represents an option in a checkbox group.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
Confirmation screen class.
Filter administration for containers.
afterUpdate()
Post (successful) object update hook.
& forwardToPageObject()
forward command to page object
initSortingForm(ilPropertyFormGUI $form, array $a_sorting_settings)
Append sorting settings to property form.
prepareOutput($a_show_subobjects=true)
prepare output
saveListPresentation(ilPropertyFormGUI $form)
Save list presentation setting.
forwardToStyleSheet()
Forward to style object.
initListPresentationForm(ilPropertyFormGUI $form)
Add list presentation settings to form.
saveSortingSettings(ilPropertyFormGUI $form)
Save sorting settings.
Class ilContainerLinkListGUI.
News settings for containers.
static _lookupContainerSetting($a_id, $a_keyword, $a_default_value=null)
Lookup a container setting.
static _deleteContainerSettings($a_id, $a_keyword=null, $a_keyword_like=false)
static _getContainerSettings($a_id)
static _writeContainerSetting($a_id, $a_keyword, $a_value)
GUI class for didactic template settings inside repository objects.
Class ilECSCategorySettings.
Export User Interface Class.
static _getLink($a_ref_id, $a_type='', $a_params=array(), $append="")
static _getAllUserIds($a_filter=0)
initExtendedSettings()
build property form for extended category settings
initEditForm()
Init object edit form.
updateObject()
updates object entry in object_data
importCategoriesWithRolObject()
import categories with local rol
importCategoriesFormObject()
display form for category import
addUserAutoCompleteObject()
Show auto complete results.
getObjectMetadataGUI()
Get object metadata gui.
getEditFormValues()
Get values for edit form.
initTaxSubTabs($a_active="tax_list")
static _importCategories($a_ref_id, $withrol_tmp)
import categories (static, also called by RootFolderGUI)
editInfoObject()
Edit extended category settings.
infoScreenObject()
this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually,...
infoScreen()
show information screen
__construct($a_data, $a_id, $a_call_by_reference=true, $a_prepare_output=true)
Constructor @access public.
listUsersObject($show_delete=false)
applyFilterObject()
Apply filter.
initCreationForms($a_new_type)
Init creation froms.
viewObject()
viewObject container presentation for "administration -> repository, trash, permissions"
executeCommand()
execute command note: this method is overwritten in all container objects
importCategoriesObject()
import categories
static _getImportDir()
get user import directory name
__checkGlobalRoles($new_assigned)
static _importCategoriesForm($a_ref_id, &$a_tpl)
display form for category import (static, also called by RootFolderGUI)
afterSave(ilObject $a_new_object)
Post (successful) object creation hook.
addHeaderAction()
@inheritDoc
setEditTabs($active_tab="settings_misc")
renderObject()
Render category.
const CONTAINER_SETTING_TAXBLOCK
performDeleteUsersObject()
resetFilterObject()
Reset filter (note: this function existed before data table filter has been introduced.
updateInfoObject()
Update info (extended meta data)
importCancelledObject()
import cancelled
static _lookupStandard($a_id)
Lookup standard flag.
static lookupObjectStyle($a_obj_id)
Lookup object style.
static getContentStylePath($a_style_id, $add_random=true, $add_token=true)
get content style path
static writeStyleUsage($a_obj_id, $a_style_id)
Write style usage.
static getUsageOfObject($a_obj_id, $a_include_titles=false)
Get usage of object.
Class ilObjUserFolderGUI.
static _lookupName($a_user_id)
lookup user name
GUI class for the workflow of copying objects.
static getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
checkPermission($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission and redirect on error.
static _gotoRepositoryNode($a_ref_id, $a_cmd="frameset")
Goto repository root.
static _gotoRepositoryRoot($a_raise_error=false)
Goto repository root.
getCreationMode()
get creation mode
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission.
initDidacticTemplate(ilPropertyFormGUI $form)
Show didactic template types.
getObjectService()
Get object service.
redirectToRefId($a_ref_id, $a_cmd="")
redirects to (repository) view per ref id usually to a container and usually used at the end of a sav...
static initServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Init service settings form.
static updateServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Update service settings.
const INFO_TAB_VISIBILITY
GUI class for object translation handling.
Class ilObject Basic functions for all objects.
static _lookupObjId($a_id)
static _lookupTitle($a_id)
lookup object title
static _lookupDescription($a_id)
lookup object description
getRefId()
get reference id @access public
getId()
get object id @access public
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
static initPreview()
Initializes the preview and loads the needed javascripts and styles.
static getInstance()
Singelton get instance.
Auto completion class for user lists.
TableGUI class for user administration.
static getDataDir()
get data directory (outside webspace)
static moveUploadedFile($a_file, $a_name, $a_target, $a_raise_errors=true, $a_mode="move_uploaded")
move uploaded file
static formCheckbox($checked, $varname, $value, $disabled=false)
??? @access public
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static switchColor($a_num, $a_css1, $a_css2)
switches style sheets for each even $a_num (used for changing colors of different result rows)
static unzip(string $path_to_zip_file, bool $overwrite_existing=false, bool $unpack_flat=false)
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static createDirectory($a_dir, $a_mod=0755)
create directory
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc
foreach($_POST as $key=> $value) $res