ILIAS  release_7 Revision v7.30-3-g800a261c036
class.ilADNTabHandling.php
Go to the documentation of this file.
1<?php
2
8{
9
13 private $ref_id;
17 private $rbacsystem;
21 private $tabs;
25 private $lng;
29 protected $ctrl;
33 private $help;
34
39 public function __construct(int $ref_id)
40 {
41 global $DIC;
42
43 $this->ref_id = $ref_id;
44 $this->tabs = $DIC['ilTabs'];
45 $this->lng = $DIC->language();
46 $this->lng->loadLanguageModule('adn');
47 $this->ctrl = $DIC['ilCtrl'];
48 $this->rbacsystem = $DIC['rbacsystem'];
49 $this->help = $DIC->help();
50 }
51
58 public function initTabs(string $tab, string $subtab = null, bool $backtab = false, $calling_class = "")
59 {
60 $this->tabs->clearTargets(); // clears Help-ID
61
62 // Help Screen-ID
63 $this->help->setScreenIdComponent('adn');
64 $this->help->setScreenId($tab);
65 $this->help->setSubScreenId($subtab);
66
67 if ($this->rbacsystem->checkAccess('visible,read', $this->ref_id)) {
68 $this->tabs->addTab(
71 $this->ctrl->getLinkTargetByClass(ilObjAdministrativeNotificationGUI::class, ilObjAdministrativeNotificationGUI::TAB_MAIN)
72 );
73 /*
74 switch ($tab) {
75 case ilObjMainMenuGUI::TAB_MAIN:
76 $this->tabs->addSubTab(
77 ilMMTopItemGUI::CMD_VIEW_TOP_ITEMS,
78 $this->lng->txt(ilMMTopItemGUI::CMD_VIEW_TOP_ITEMS),
79 $this->ctrl->getLinkTargetByClass(ilMMTopItemGUI::class, ilMMTopItemGUI::CMD_VIEW_TOP_ITEMS)
80 );
81 $this->tabs->addSubTab(
82 ilMMSubItemGUI::CMD_VIEW_SUB_ITEMS,
83 $this->lng->txt(ilMMSubItemGUI::CMD_VIEW_SUB_ITEMS),
84 $this->ctrl->getLinkTargetByClass(ilMMSubItemGUI::class, ilMMSubItemGUI::CMD_VIEW_SUB_ITEMS)
85 );
86 $this->tabs->activateSubTab($subtab);
87 break;
88 }
89 if ($subtab === null) {
90 $subtab = ilMMTopItemGUI::CMD_VIEW_TOP_ITEMS;
91 }
92 $this->tabs->activateSubTab($subtab);*/
93 }
94 if ($this->rbacsystem->checkAccess('edit_permission', $this->ref_id)) {
95 $this->tabs->addTab(
96 'perm_settings',
97 $this->lng->txt('perm_settings'),
98 $this->ctrl->getLinkTargetByClass(array(ilObjAdministrativeNotificationGUI::class, ilPermissionGUI::class), 'perm')
99 );
100 }
101 if ($backtab) {
102 /* $this->tabs->clearTargets();
103 if ($calling_class == ilMMSubItemGUI::class) {
104 $this->tabs->setBackTarget($this->lng->txt('tab_back'), $this->ctrl->getLinkTargetByClass(ilMMSubItemGUI::class, $subtab));
105 } else {
106 $this->tabs->setBackTarget($this->lng->txt('tab_back'), $this->ctrl->getLinkTargetByClass(ilObjMainMenuGUI::class, $subtab));
107 }*/
108 }
109 $this->tabs->activateTab($tab);
110 }
111}
An exception for terminatinating execution or to throw for unit testing.
Class ilADNTabHandling.
initTabs(string $tab, string $subtab=null, bool $backtab=false, $calling_class="")
__construct(int $ref_id)
ilMMTabHandling constructor.
global $DIC
Definition: goto.php:24
help()
Definition: help.php:2