ILIAS  release_8 Revision v8.24
class.ilADNTabHandling.php
Go to the documentation of this file.
1<?php
2
24{
25 private int $ref_id;
26
28
30
32
33 protected ilCtrl $ctrl;
34
36
40 public function __construct(int $ref_id)
41 {
42 global $DIC;
43
44 $this->ref_id = $ref_id;
45 $this->tabs = $DIC['ilTabs'];
46 $this->lng = $DIC->language();
47 $this->lng->loadLanguageModule('adn');
48 $this->ctrl = $DIC['ilCtrl'];
49 $this->rbacsystem = $DIC['rbacsystem'];
50 $this->help = $DIC->help();
51 }
52
53 public function initTabs(string $tab, string $subtab = null, bool $backtab = false): void
54 {
55 $this->tabs->clearTargets(); // clears Help-ID
56
57 // Help Screen-ID
58 $this->help->setScreenIdComponent('adn');
59 $this->help->setScreenId($tab);
60 if (null !== $subtab) {
61 $this->help->setSubScreenId($subtab);
62 }
63
64 if ($this->rbacsystem->checkAccess('visible,read', $this->ref_id)) {
65 $this->tabs->addTab(
68 $this->ctrl->getLinkTargetByClass(ilObjAdministrativeNotificationGUI::class, ilObjAdministrativeNotificationGUI::TAB_MAIN)
69 );
70 /*
71 switch ($tab) {
72 case ilObjMainMenuGUI::TAB_MAIN:
73 $this->tabs->addSubTab(
74 ilMMTopItemGUI::CMD_VIEW_TOP_ITEMS,
75 $this->lng->txt(ilMMTopItemGUI::CMD_VIEW_TOP_ITEMS),
76 $this->ctrl->getLinkTargetByClass(ilMMTopItemGUI::class, ilMMTopItemGUI::CMD_VIEW_TOP_ITEMS)
77 );
78 $this->tabs->addSubTab(
79 ilMMSubItemGUI::CMD_VIEW_SUB_ITEMS,
80 $this->lng->txt(ilMMSubItemGUI::CMD_VIEW_SUB_ITEMS),
81 $this->ctrl->getLinkTargetByClass(ilMMSubItemGUI::class, ilMMSubItemGUI::CMD_VIEW_SUB_ITEMS)
82 );
83 $this->tabs->activateSubTab($subtab);
84 break;
85 }
86 if ($subtab === null) {
87 $subtab = ilMMTopItemGUI::CMD_VIEW_TOP_ITEMS;
88 }
89 $this->tabs->activateSubTab($subtab);*/
90 }
91 if ($this->rbacsystem->checkAccess('edit_permission', $this->ref_id)) {
92 $this->tabs->addTab(
93 'perm_settings',
94 $this->lng->txt('perm_settings'),
95 $this->ctrl->getLinkTargetByClass(array(ilObjAdministrativeNotificationGUI::class, ilPermissionGUI::class), 'perm')
96 );
97 }
98 if ($backtab) {
99 /* $this->tabs->clearTargets();
100 if ($calling_class == ilMMSubItemGUI::class) {
101 $this->tabs->setBackTarget($this->lng->txt('tab_back'), $this->ctrl->getLinkTargetByClass(ilMMSubItemGUI::class, $subtab));
102 } else {
103 $this->tabs->setBackTarget($this->lng->txt('tab_back'), $this->ctrl->getLinkTargetByClass(ilObjMainMenuGUI::class, $subtab));
104 }*/
105 }
106 $this->tabs->activateTab($tab);
107 }
108}
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
initTabs(string $tab, string $subtab=null, bool $backtab=false)
__construct(int $ref_id)
ilMMTabHandling constructor.
Class ilCtrl provides processing control methods.
Help GUI class.
language handling
class ilRbacSystem system function like checkAccess, addActiveRole ... Supporting system functions ar...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
global $DIC
Definition: feed.php:28