33 if (!$access_helper->isUserLoggedIn()() || !$access_helper->hasAdministrationAccess()()) {
38 $this->dic->language()->loadLanguageModule(
'administration');
40 list($groups, $titems) = $this->
getGroups();
42 foreach ($groups as $group => $group_items) {
44 if (is_array($group_items) && count($group_items) > 0) {
47 foreach ($group_items as $group_item) {
48 if ($group_item ==
"---") {
52 $icon = $this->dic->ui()->factory()->symbol()->icon()->standard($titems[$group_item][
"type"], $titems[$group_item][
"title"])
53 ->withIsOutlined(
true);
55 $ref_id = $titems[$group_item][
"ref_id"];
57 $identification = $this->
if->identifier(
'mm_adm_rep');
58 $action =
"ilias.php?baseClass=ilAdministrationGUI&ref_id=" . $ref_id .
"&admin_mode=repository";
60 $identification = $this->
if->identifier(
"mm_adm_" . $titems[$group_item][
"type"]);
61 $action =
"ilias.php?baseClass=ilAdministrationGUI&ref_id=" . $ref_id .
"&cmd=jump";
66 ->link($identification)
67 ->withTitle($titems[$group_item][
"title"])
70 ->withVisibilityCallable(
function() use($ref_id){
71 return $this->dic->rbac()->system()->checkAccess(
'visible,read', $ref_id);
76 $title = $this->dic->language()->txt(
"adm_" . $group);
79 ->linkList($this->
if->identifier(
'adm_content_' . $group))
80 ->withSupportsAsynchronousLoading(
true)
85 ->withPosition($position * 10)
86 ->withAlwaysAvailable(
true)
87 ->withNonAvailableReason($this->dic->ui()->factory()->legacy(
"{$this->dic->language()->txt('item_must_be_always_active')}"))
88 ->withVisibilityCallable(
89 $access_helper->hasAdministrationAccess()
90 )->withAvailableCallable(
91 $access_helper->isUserLoggedIn()
103 "maintenance" =>
"icon_sysa",
104 "layout_and_navigation" =>
"icon_laya",
105 "repository_and_objects" =>
"icon_repa",
106 "personal_workspace" =>
"icon_pwsa",
107 "achievements" =>
"icon_achva",
108 "communication" =>
"icon_coma",
109 "user_administration" =>
"icon_usra",
110 "search_and_find" =>
"icon_safa",
111 "extending_ilias" =>
"icon_exta" 114 return $this->dic->ui()->factory()->symbol()->icon()->custom($icon_path, $title);
123 if (!$this->dic->offsetExists(
'tree')) {
126 $tree = $this->dic->repositoryTree();
127 $rbacsystem = $this->dic->rbac()->system();
128 $lng = $this->dic->language();
132 foreach ($objects as $object) {
133 $new_objects[$object[
"title"] .
":" . $object[
"child"]]
136 if ($object[
"type"] ==
"orgu") {
137 $new_objects[$object[
"title"] .
":" . $object[
"child"]][
"title"] =
$lng->txt(
"objs_orgu");
150 "title" =>
$lng->txt(
"repository_admin"),
151 "description" =>
$lng->txt(
"repository_admin_desc"),
152 "desc" =>
$lng->txt(
"repository_admin_desc"),
162 "title" =>
$lng->txt(
"general_settings"),
168 foreach ($new_objects as
$c) {
170 if ($tree->getParentId($c[
"ref_id"]) ==
ROOT_FOLDER_ID && $c[
"type"] !=
"adm" 171 &&
$_GET[
"admin_mode"] !=
"repository" 177 if ($c[
"type"] ==
"" || $c[
"type"] ==
"objf" 178 || $c[
"type"] ==
"xxx" 186 foreach ($items as
$i) {
187 $titems[$i[
"type"]] =
$i;
193 array(
"adm",
"lngf",
"hlps",
"wfe",
"pdfg",
'fils',
'logs',
'sysc',
"recf",
"root"),
194 "layout_and_navigation" =>
195 array(
"mme",
"stys",
"adve",
"accs"),
196 "repository_and_objects" =>
197 array(
"reps",
"crss",
"grps",
"prgs",
"bibs",
"blga",
"cpad",
"chta",
"facs",
"frma",
"lrss",
198 "mcts",
"mobs",
"svyf",
"assf",
"wbrs",
"wiks",
'lsos'),
199 "personal_workspace" =>
200 array(
"tags",
"cals",
"prfa",
"prss",
"nots"),
202 array(
"lhts",
"skmg",
"trac",
"bdga",
"cert"),
204 array(
"mail",
"cadm",
"nwss",
"coms",
"adn",
"awra"),
205 "user_administration" =>
206 array(
"usrf",
'tos',
"rolf",
"otpl",
"auth",
"ps"),
208 array(
"seas",
"mds",
"taxs"),
210 array(
'ecss',
"ltis",
"wbdv",
"cmis",
"cmps",
"extt"),
214 foreach ($layout as $group => $entries) {
215 $groups[$group] = array();
216 $entries_since_last_sep =
false;
217 foreach ($entries as
$e) {
218 if ($e ==
"---" || $titems[$e][
"type"] !=
"") {
219 if ($e ==
"---" && $entries_since_last_sep) {
220 $groups[$group][] =
$e;
221 $entries_since_last_sep =
false;
224 $groups[$group][] =
$e;
225 $entries_since_last_sep =
true;
232 return [$groups, $titems];
This describes how an icon could be modified during construction of UI.
getIconForGroup(string $group, string $title)
Interface StaticMainMenuProvider.
if(!file_exists(getcwd() . '/ilias.ini.php'))
registration confirmation script for ilias
Class AdministrationMainBarProvider.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)