19 declare(strict_types=1);
    52         bool $a_call_by_reference = 
true,
    53         bool $a_prepare_output = 
true    57         $this->rbacsystem = $DIC->rbac()->system();
    58         $this->nav_history = $DIC[
"ilNavigationHistory"];
    59         $this->
access = $DIC->access();
    60         $this->
ctrl = $DIC->ctrl();
    61         $this->
tabs = $DIC->tabs();
    62         $this->
help = $DIC[
"ilHelp"];
    63         $this->
lng = $DIC->language();
    64         $this->
user = $DIC->user();
    65         $this->tree = $DIC->repositoryTree();
    66         $this->error = $DIC[
"ilErr"];
    68         $this->tpl = $DIC[
"tpl"];
    69         $this->
toolbar = $DIC->toolbar();
    70         $this->rbacreview = $DIC->rbac()->review();
    71         $this->rbacadmin = $DIC->rbac()->admin();
    73         $this->
lng->loadLanguageModule(
'cat');
    74         $this->
lng->loadLanguageModule(
'obj');
    79         if (is_object($this->
object)) {
    87         $this->cat_request = $DIC
    92         $this->taxonomy = $DIC->taxonomy();
   102         $next_class = $this->
ctrl->getNextClass($this);
   103         $cmd = $this->
ctrl->getCmd();
   105         $header_action = 
true;
   106         switch ($next_class) {
   107             case strtolower(ilRepositoryTrashGUI::class):
   109                 $this->
ctrl->setReturn($this, 
'trash');
   110                 $this->
ctrl->forwardCommand($ru);
   114                 $this->tabs_gui->setTabActive(
'administrate_users');
   115                 if ($this->cat_request->getObjId() === 0) {
   118                         $this->cat_request->getRefId(),
   125                         $this->cat_request->getObjId(),
   131                 $this->
ctrl->forwardCommand($this->gui_obj);
   133                 $ilTabs->clearTargets();
   134                 $ilTabs->setBackTarget($this->
lng->txt(
'backto_lua'), $this->
ctrl->getLinkTarget($this, 
'listUsers'));
   137                 $ilHelp->setScreenId(
"administrate_user");
   138                 $ilHelp->setSubScreenId($ilCtrl->getCmd());
   141             case "ilobjuserfoldergui":
   144                     $this->cat_request->getRefId(),
   147                 $this->gui_obj->setUserOwnerId($this->cat_request->getRefId());
   148                 $this->gui_obj->setCreationMode($this->creation_mode);
   149                 $this->
ctrl->forwardCommand($this->gui_obj);
   151                 $ilTabs->clearTargets();
   152                 $ilTabs->setBackTarget($this->
lng->txt(
'backto_lua'), $this->
ctrl->getLinkTarget($this, 
'listUsers'));
   155                 $ilHelp->setScreenId(
"administrate_user");
   156                 $ilHelp->setSubScreenId($ilCtrl->getCmd());
   162                 $this->content_style_gui->addCss(
   169             case 'ilpermissiongui':
   171                 $this->tabs_gui->setTabActive(
'perm_settings');
   173                 $this->
ctrl->forwardCommand($perm_gui);
   176             case 'ilinfoscreengui':
   177                 if ($this->info_screen_enabled) {
   184             case "ilcontainerpagegui":
   188                     $this->tpl->setContent($ret);
   190                 $header_action = 
false;
   193             case 'ilobjectcopygui':
   198                 $this->
ctrl->forwardCommand($cp);
   201             case "ilobjectcontentstylesettingsgui":
   205                 $settings_gui = $this->content_style_gui
   206                     ->objectSettingsGUIForRefId(
   210                 $this->
ctrl->forwardCommand($settings_gui);
   213             case 'ilusertablegui':
   215                 $u_table->initFilter();
   216                 $this->
ctrl->setReturn($this, 
'listUsers');
   217                 $this->
ctrl->forwardCommand($u_table);
   220             case "ilcommonactiondispatchergui":
   226             case 'ildidactictemplategui':
   227                 $this->
ctrl->setReturn($this, 
'edit');
   229                 $this->
ctrl->forwardCommand($did);
   234                 $this->tabs_gui->setTabActive(
'export');
   236                 $exp->addFormat(
'xml');
   237                 $this->
ctrl->forwardCommand($exp);
   240             case 'ilobjecttranslationgui':
   246                 $this->
ctrl->forwardCommand($transgui);
   249             case strtolower(ilTaxonomySettingsGUI::class):
   253                 $tax_gui = $this->taxonomy->gui()->getSettingsGUI(
   255                     $this->
lng->txt(
"cntr_tax_settings_info"),
   259                 $this->
ctrl->forwardCommand($tax_gui);
   262             case 'ilobjectmetadatagui':
   265                 $this->tabs_gui->activateTab(
'meta_data');
   269             case "ilcontainernewssettingsgui":
   271                 $this->tabs_gui->setTabActive(
'settings');
   273                 $this->tabs_gui->activateSubTab(
'obj_news_settings');
   275                 $news_set_gui->setHideByDate(
true);
   276                 $this->
ctrl->forwardCommand($news_set_gui);
   279             case 'ilcontainerfilteradmingui':
   282                 $this->
setEditTabs($active_tab = 
"settings_filter");
   283                 $this->tabs_gui->activateTab(
'settings');
   288                 if ($cmd === 
"infoScreen") {
   296                     $ilAccess->checkAccess(
"read", 
"", $this->cat_request->getRefId())) {
   297                     $ilNavigationHistory->addItem(
   298                         $this->cat_request->getRefId(),
   299                         ilLink::_getLink($this->cat_request->getRefId(), 
"cat"),
   305                 if (is_object($this->
object)) {
   306                     $this->content_style_gui->addCss(
   316                 $this->tabs_gui->activateTab(
"view_content");   
   322         if ($header_action) {
   404         $prefix = self::CONTAINER_SETTING_TAXBLOCK;
   405         $tax_id = $this->cat_request->getTaxId();
   411         $this->
ctrl->redirectByClass(ilTaxonomySettingsGUI::class, 
"");
   416         $prefix = self::CONTAINER_SETTING_TAXBLOCK;
   417         $tax_id = $this->cat_request->getTaxId();
   422         $this->
ctrl->redirectByClass(ilTaxonomySettingsGUI::class, 
"");
   430             ? $this->
lng->txt(
"yes")
   431             : $this->
lng->txt(
"no");
   434             $this->
lng->txt(
"cntr_taxonomy_show_sideblock") => $value
   442         $this->
ctrl->setParameterByClass(self::class, 
"cat_tax_id", $tax_id);
   445             $actions[] = $this->
ui->factory()->button()->shy(
   446                 $this->
lng->txt(
"cat_show_tax_in_side_block"),
   447                 $this->
ctrl->getLinkTargetByClass(
   453             $actions[] = $this->
ui->factory()->button()->shy(
   454                 $this->
lng->txt(
"cat_hide_tax_in_side_block"),
   455                 $this->
ctrl->getLinkTargetByClass(
   461         $this->
ctrl->setParameterByClass(self::class, 
"cat_tax_id", null);
   474         if ($this->
ctrl->getCmd() === 
"editPageContent") {
   478         $ilHelp->setScreenIdComponent(
"cat");
   481             $this->tabs_gui->addTab(
   484                 $this->
ctrl->getLinkTarget($this, 
"")
   488             if ($this->info_screen_enabled) {
   489                 $force_active = $this->
ctrl->getNextClass() === 
"ilinfoscreengui"   490                     || strtolower($this->cat_request->getCmdClass()) === 
"ilnotegui";
   491                 $this->tabs_gui->addTarget(
   493                     $this->
ctrl->getLinkTargetByClass(
   494                         [
"ilobjcategorygui", 
"ilinfoscreengui"],
   497                     [
"showSummary", 
"", 
"infoScreen"],
   507             $force_active = ($this->
ctrl->getCmd() === 
"edit");
   508             $this->tabs_gui->addTarget(
   510                 $this->
ctrl->getLinkTarget($this, 
"edit"),
   528             $mdtab = $mdgui->getTab();
   530                 $this->tabs_gui->addTab(
   532                     $this->
lng->txt(
"meta_data"),
   540             $this->tabs_gui->addTarget(
   541                 "administrate_users",
   542                 $this->
ctrl->getLinkTarget($this, 
"listUsers"),
   548         if ($ilAccess->checkAccess(
'write', 
'', $this->object->getRefId())) {
   549             $this->tabs_gui->addTarget(
   551                 $this->
ctrl->getLinkTargetByClass([ilRepositoryGUI::class, self::class, 
'ilexportgui'], 
''),
   569         parent::renderObject();
   573             $this->
object->getRefId(),
   574             $this->
object->getId(),
   581         if (strtolower($this->cat_request->getBaseClass()) === 
"iladministrationgui") {
   582             parent::viewObject();
   598         $this->content_style_domain
   599             ->styleForRefId($new_object->
getRefId())
   600             ->inheritFromParent();
   603         $this->tpl->setOnScreenMessage(
'success', $this->
lng->txt(
"cat_added"), 
true);
   604         $this->
ctrl->setParameter($this, 
"ref_id", $new_object->
getRefId());
   615         $this->
ctrl->redirectByClass(ilInfoScreenGUI::class, 
"showSummary");
   627         if (!$ilAccess->checkAccess(
"visible", 
"", $this->ref_id)) {
   628             $ilErr->raiseError($this->
lng->txt(
"msg_no_perm_read"), 
$ilErr->MESSAGE);
   631         if (!$this->info_screen_enabled) {
   636         $this->tabs_gui->setTabActive(
'info_short');
   640         $info->enablePrivateNotes();
   642         if ($ilAccess->checkAccess(
"read", 
"", $this->cat_request->getRefId())) {
   647         $info->enableNewsEditing(
false);
   648         if ($ilAccess->checkAccess(
"write", 
"", $this->cat_request->getRefId())) {
   650             $enable_internal_rss = $news_set->get(
"enable_rss_for_internal");
   652             if ($enable_internal_rss) {
   653                 $info->setBlockProperty(
"news", 
"settings", 
'1');
   654                 $info->setBlockProperty(
"news", 
"public_notifications_option", 
'1');
   660         $record_gui->
parse();
   664         $info->addMetaDataSections($this->
object->getId(), 0, $this->
object->getType());
   667         if ($ilCtrl->getNextClass() === 
"ilinfoscreengui") {
   668             $ilCtrl->forwardCommand($info);
   670             return $ilCtrl->getHTML($info);
   679         $this->tabs_gui->activateTab(
'settings');
   680         $this->tabs_gui->setSubTabActive(
'edit_cat_settings');
   683         $this->tpl->setContent($this->
form->getHTML());
   695         $this->
form->checkInput();
   697         if ($this->record_gui->importEditFormPostValues()) {
   698             $this->record_gui->writeEditForm();
   700             $this->tpl->setOnScreenMessage(
'success', $this->
lng->txt(
"settings_saved"), 
true);
   701             $this->
ctrl->redirect($this, 
"editInfo");
   711         if (is_object($this->
form)) {
   716         $this->
form->setFormAction($this->
ctrl->getFormAction($this));
   717         $this->
form->setTitle($this->
lng->txt(
'ext_cat_settings'));
   718         $this->
form->addCommandButton(
'updateInfo', $this->
lng->txt(
'save'));
   719         $this->
form->addCommandButton(
'editInfo', $this->
lng->txt(
'cancel'));
   723         $this->record_gui->parse();
   728     protected function setEditTabs($active_tab = 
"settings_misc"): void
   730         $this->tabs_gui->addSubTab(
   732             $this->
lng->txt(
"general"),
   733             $this->
ctrl->getLinkTarget($this, 
"edit")
   736         $this->tabs_gui->addSubTab(
   738             $this->
lng->txt(
"obj_multilinguality"),
   739             $this->
ctrl->getLinkTargetByClass(
"ilobjecttranslationgui", 
"")
   750             $this->tabs_gui->addSubTab(
   752                 $this->
lng->txt(
"cont_news_settings"),
   753                 $this->
ctrl->getLinkTargetByClass(
'ilcontainernewssettingsgui')
   757         $this->tabs_gui->addSubTab(
   759             $this->
lng->txt(
"cont_filter"),
   760             $this->
ctrl->getLinkTargetByClass(
"ilcontainerfilteradmingui", 
"")
   764             $this->taxonomy->gui()->addSettingsSubTab($obj->getId());
   767         $this->tabs_gui->activateTab(
"settings");
   768         $this->tabs_gui->activateSubTab($active_tab);
   775         $this->
lng->loadLanguageModule($this->
object->getType());
   783         $this->initFormTitleDescription(
$form);
   790         $pres->setTitle($this->
lng->txt(
'obj_presentation'));
   794         $form = $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->addTitleIconVisibility();
   797         $form = $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->addTopActionsVisibility();
   800         $form = $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->addIcon();
   803         $form = $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->addTileImage();
   820         $bl->setInfo($this->
lng->txt(
"cont_block_limit_info"));
   828         $ecs->addSettingsToForm(
$form, 
'cat');
   832         $sh->setTitle($this->
lng->txt(
'obj_features'));
   865             $ilErr->raiseError($this->
lng->txt(
"msg_no_perm_write"), 
$ilErr->MESSAGE);
   872                 $this->
object->setTitle($title);
   873                 $this->
object->setDescription($desc);
   874                 $this->
object->update();
   879                 $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->saveTitleIconVisibility();
   882                 $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->saveTopActionsVisibility();
   885                 $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->saveIcon();
   888                 $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->saveTileImage();
   924                 if ($ecs->handleSettingsUpdate(
$form)) {
   954         $utab->resetOffset();
   955         $utab->resetFilter();
   970         $utab->resetOffset();
   971         $utab->writeFilterToSession();
   986             $ilErr->raiseError($this->
lng->txt(
"msg_no_perm_admin_users"), 
$ilErr->MESSAGE);
   988         $this->tabs_gui->setTabActive(
'administrate_users');
   992         $this->tpl->addBlockfile(
   995             'tpl.cat_admin_users.html',
   996             "components/ILIAS/Category"  1001             $ilToolbar->addButton(
  1002                 $this->
lng->txt(
'add_user'),
  1003                 $this->
ctrl->getLinkTargetByClass(
'ilobjusergui', 
'create')
  1006             $ilToolbar->addButton(
  1007                 $this->
lng->txt(
'import_users'),
  1008                 $this->
ctrl->getLinkTargetByClass(
'ilobjuserfoldergui', 
'importUserForm')
  1011             $this->tpl->setOnScreenMessage(
'info', $this->
lng->txt(
'no_roles_user_can_be_assigned_to'));
  1015             $this->tpl->setCurrentBlock(
"confirm_delete");
  1016             $this->tpl->setVariable(
"CONFIRM_FORMACTION", $this->
ctrl->getFormAction($this));
  1017             $this->tpl->setVariable(
"TXT_CANCEL", $this->
lng->txt(
'cancel'));
  1018             $this->tpl->setVariable(
"CONFIRM_CMD", 
'performDeleteUsers');
  1019             $this->tpl->setVariable(
"TXT_CONFIRM", $this->
lng->txt(
'delete'));
  1020             $this->tpl->parseCurrentBlock();
  1023         $this->
lng->loadLanguageModule(
'user');
  1026         $this->tpl->setVariable(
'USERS_TABLE', $utab->getHTML());
  1035         $auto->setSearchFields([
'login', 
'firstname', 
'lastname', 
'email']);
  1036         $auto->enableFieldSearchableCheck(
true);
  1039         if (($this->cat_request->getFetchAll())) {
  1043         echo $auto->getList($this->cat_request->getTerm());
  1051         foreach ($this->cat_request->getUserIds() as 
$user_id) {
  1060         $this->tpl->setOnScreenMessage(
'success', $this->
lng->txt(
'deleted_users'));
  1067         if ($this->cat_request->getIds() === []) {
  1068             $this->tpl->setOnScreenMessage(
'failure', $this->
lng->txt(
'no_users_selected'));
  1074         $confirm->setFormAction($this->
ctrl->getFormAction($this));
  1075         $confirm->setHeaderText($this->
lng->txt(
'sure_delete_selected_users'));
  1076         $confirm->setConfirm($this->
lng->txt(
'delete'), 
'performDeleteUsers');
  1077         $confirm->setCancel($this->
lng->txt(
'cancel'), 
'listUsers');
  1079         foreach ($this->cat_request->getIds() as 
$user) {
  1085                 $name[
'lastname'] . 
', ' . $name[
'firstname'] . 
' [' . $name[
'login'] . 
']'  1088         $this->tpl->setContent($confirm->getHTML());
  1098         if ($this->cat_request->getObjId() === 0) {
  1099             $this->tpl->setOnScreenMessage(
'failure', 
'no_user_selected');
  1104         $ilTabs->clearTargets();
  1105         $ilTabs->setBackTarget($this->
lng->txt(
'backto_lua'), $this->
ctrl->getLinkTarget($this, 
'listUsers'));
  1108         $ilHelp->setScreenId(
"administrate_user");
  1109         $ilHelp->setSubScreenId(
"assign_roles");
  1119         foreach ($roles as $role) {
  1124                 in_array((
int) $role[
'obj_id'], $ass_roles, 
true),
  1126                 (
string) $role[
'obj_id'],
  1129             $f_result[$counter][
'title'] = $role_obj->getTitle() ?: 
"";
  1130             $f_result[$counter][
'desc'] = $role_obj->getDescription() ?: 
"";
  1131             $f_result[$counter][
'type'] = ($role[
'role_type'] ?? 
'') === 
'global' ?
  1132                 $this->
lng->txt(
'global') :
  1133                 $this->
lng->txt(
'local');
  1141         $title = $this->
lng->txt(
'role_assignment') . 
' (' . $tmp_obj->getFullname() . 
')';
  1142         $table->setTitle($title, 
"standard/icon_role.svg", $this->
lng->txt(
"role_assignment"));
  1143         $table->setData($f_result);
  1144         $this->tpl->setContent($table->getHTML());
  1154         if ($this->cat_request->getObjId() === 0 ||
  1156             $this->tpl->setOnScreenMessage(
'failure', 
'no_user_selected');
  1164             $this->tpl->setOnScreenMessage(
'failure', $this->
lng->txt(
'no_global_role_left'));
  1169         $new_role_ids = $this->cat_request->getRoleIds();
  1171         foreach ($roles as $role) {
  1172             if (in_array((
int) $role[
'obj_id'], $new_role_ids, 
true) && !in_array((
int) $role[
'obj_id'], $assigned_roles, 
true)) {
  1175             if (in_array((
int) $role[
'obj_id'], $assigned_roles, 
true) && !in_array((
int) $role[
'obj_id'], $new_role_ids, 
true)) {
  1179         $this->tpl->setOnScreenMessage(
'success', $this->
lng->txt(
'role_assignment_updated'));
  1194         } elseif ($tmp_obj->getTimeLimitOwner() === $this->
object->getRefId()) {
  1214         if ($tmp_obj->getTimeLimitOwner() !== $this->
object->getRefId() &&
  1220         $new_assigned = $new_assigned ?: [];
  1229         $global_assignable = [];
  1230         foreach ($ga as $role) {
  1231             $global_assignable[] = $role[
'obj_id'];
  1234         $new_visible_assigned_roles = array_intersect($new_assigned, $global_assignable);
  1236         $main_assigned_roles = array_diff($all_assigned_roles, $global_assignable);
  1238         if (!count($new_visible_assigned_roles) && !count($main_assigned_roles)) {
  1244     public static function _goto(
string $a_target): void
  1247         $main_tpl = $DIC->ui()->mainTemplate();
  1249         $ilAccess = $DIC->access();
  1251         $lng = $DIC->language();
  1252         if ($ilAccess->checkAccess(
"read", 
"", (
int) $a_target)) {
  1254         } elseif ($ilAccess->checkAccess(
"visible", 
"", (
int) $a_target)) {
  1257             $main_tpl->setOnScreenMessage(
'failure', sprintf(
  1258                 $lng->
txt(
"msg_no_perm_read_item"),
  1273         $this->tabs_gui->setTabActive(
"obj_tool_setting_taxonomies");
  1274         $this->tabs_gui->addSubTab(
  1276             $this->
lng->txt(
"cntr_taxonomy_sideblock_settings"),
  1277             $this->
ctrl->getLinkTarget($this, 
"editTaxonomySettings")
  1279         $this->tabs_gui->addSubTab(
  1281             $this->
lng->txt(
"cntr_taxonomy_definitions"),
  1282             $this->
ctrl->getLinkTargetByClass(
"ilobjtaxonomygui", 
"")
  1284         $this->tabs_gui->activateSubTab($a_active);
  1299                 if (count($node_taxes)) {
  1300                     foreach ($node_taxes as $node_tax) {
  1301                         $res[$node_tax[
"tax_id"]] = [
  1302                             "title" => $node_tax[
"title"]
  1303                         , 
"source" => $node[
"child"]
  1318         $prefix = self::CONTAINER_SETTING_TAXBLOCK;
  1321             if ($value && strpos($keyword, $prefix) === 0) {
  1322                 $res[] = substr($keyword, strlen($prefix));
 static _getAllUserIds(int $a_filter=0)
 
StandardGUIRequest $cat_request
 
ilAdvancedMDRecordGUI $record_gui
 
setPropertyForm(ilPropertyFormGUI $form)
 
infoScreen()
show information screen 
 
saveSortingSettings(ilPropertyFormGUI $form)
 
txt(string $a_topic, string $a_default_lang_fallback_mod="")
gets the text for a given topic if the topic is not in the list, the topic itself with "-" will be re...
 
GUI class for the workflow of copying objects. 
 
prepareOutput(bool $show_sub_objects=true)
 
hideTaxAsSideBlockObject()
 
checkGlobalRoles($new_assigned)
 
redirectToRefId(int $ref_id, string $cmd="")
redirects to (repository) view per ref id usually to a container and usually used at the end of a sav...
 
assignUser(int $a_rol_id, int $a_usr_id)
Assigns an user to a role. 
 
showTaxAsSideBlockObject()
 
static _gotoRepositoryNode(int $ref_id, string $cmd="")
 
const CONTAINER_SETTING_TAXBLOCK
 
static _lookupName(int $a_user_id)
lookup user name 
 
static getUsageOfObject(int $a_obj_id, bool $a_include_titles=false)
 
__construct( $a_data, int $a_id, bool $a_call_by_reference=true, bool $a_prepare_output=true)
 
static updateServiceSettingsForm(int $obj_id, ilPropertyFormGUI $form, array $services)
 
listUsersObject(bool $show_delete=false)
 
getPathFull(int $a_endnode_id, int $a_startnode_id=0)
get path from a given startnode to a given endnode if startnode is not given the rootnode is startnod...
 
static _lookupContainerSetting(int $a_id, string $a_keyword, string $a_default_value=null)
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
static _lookupObjId(int $ref_id)
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
setCreationMode(bool $mode=true)
If true, a creation screen is displayed the current [ref_id] does belong to the parent class The mode...
 
bool $info_screen_enabled
 
checkAccess(string $a_operations, int $a_ref_id, string $a_type="")
checkAccess represents the main method of the RBAC-system in ILIAS3 developers want to use With this ...
 
TableGUI class for user administration. 
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
getGlobalRolesArray()
get only 'global' roles 
 
getAssignableChildRoles(int $a_ref_id)
Get all assignable roles directly under a specific node. 
 
ilNavigationHistory $nav_history
 
static _lookupTitle(int $obj_id)
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
setScreenIdComponent(string $a_comp)
 
applyFilterObject()
Apply filter. 
 
performDeleteUsersObject()
 
initDidacticTemplate(ilPropertyFormGUI $form)
 
Class ilObjectGUI Basic methods of all Output classes. 
 
initTaxSubTabs($a_active="tax_list")
 
static _recordReadEvent(string $a_type, int $a_ref_id, int $obj_id, int $usr_id, bool $isCatchupWriteEvents=true, $a_ext_rc=null, $a_ext_time=null)
 
Repository GUI Utilities. 
 
static _recordWriteEvent(int $obj_id, int $usr_id, string $action, ?int $parent_obj_id=null)
Records a write event. 
 
resetFilterObject()
import categories (static, also called by RootFolderGUI) 
 
afterSave(ilObject $new_object)
 
getGlobalRoles()
get only 'global' roles 
 
static getDataDir()
get data directory (outside webspace) 
 
static initServiceSettingsForm(int $obj_id, ilPropertyFormGUI $form, array $services)
 
Last visited history for repository items. 
 
static _goto(string $a_target)
 
saveListPresentation(ilPropertyFormGUI $form)
 
checkPermissionBool(string $perm, string $cmd="", string $type="", ?int $ref_id=null)
 
static _writeContainerSetting(int $a_id, string $a_keyword, string $a_value)
 
Filter administration for containers. 
 
infoScreenObject()
this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually...
 
renderObject()
Render category. 
 
static getInstanceByObjId(?int $obj_id, bool $stop_on_error=true)
get an instance of an Ilias object by object id 
 
setEditTabs($active_tab="settings_misc")
 
activateTab(string $a_id)
 
getGlobalAssignableRoles()
get only 'global' roles (with flag 'assign_users') 
 
form( $class_path, string $cmd, string $submit_caption="")
 
initListPresentationForm(ilPropertyFormGUI $form)
Add list presentation settings to form. 
 
initSortingForm(ilPropertyFormGUI $form, array $a_sorting_settings)
Append sorting settings to property form. 
 
__construct(Container $dic, ilPlugin $plugin)
 
setInfoObject(ilInfoScreenGUI $info)
get info sections 
 
const INFO_TAB_VISIBILITY
 
ILIAS Container InternalGUIService $gui
 
Class ilContainerGUI This is a base GUI class for all container objects in ILIAS: root folder...
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
static _catchupWriteEvents(int $obj_id, int $usr_id, ?string $timestamp=null)
Catches up with all write events which occured before the specified timestamp. 
 
ILIAS Taxonomy Service $taxonomy
 
addHeaderAction()
Add header action menu. 
 
checkPermission(string $perm, string $cmd="", string $type="", ?int $ref_id=null)
 
static _getContainerSettings(int $a_id)
 
addUserAutoCompleteObject()
Show auto complete results. 
 
assignedRoles(int $a_usr_id)
get all assigned roles to a given user 
 
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call 
 
static _deleteContainerSettings(int $a_id, string $a_keyword="", bool $a_keyword_like=false)
 
GUI class for object translation handling. 
 
static _gotoRepositoryRoot(bool $raise_error=false)
Goto repository root. 
 
deassignUser(int $a_rol_id, int $a_usr_id)
Deassigns a user from a role. 
 
getProperties(int $tax_id)