ILIAS  release_8 Revision v8.24
class.ilMStListUsersGUI.php
Go to the documentation of this file.
1<?php
18declare(strict_types=1);
19
22
29{
30 public const CMD_RESET_FILTER = 'resetFilter';
31 public const CMD_APPLY_FILTER = 'applyFilter';
32 public const CMD_INDEX = 'index';
33 public const CMD_GET_ACTIONS = "getActions";
34 public const CMD_ADD_USER_AUTO_COMPLETE = 'addUserAutoComplete';
37 private \ilGlobalTemplateInterface $main_tpl;
41
42 public function __construct()
43 {
44 global $DIC;
45 $this->main_tpl = $DIC->ui()->mainTemplate();
46 $this->access = ilMyStaffAccess::getInstance();
47 $this->help = $DIC->help();
48 $this->ctrl = $DIC->ctrl();
49 $this->language = $DIC->language();
50 $this->help->setScreenIdComponent('msta');
51 }
52
53 protected function checkAccessOrFail(): void
54 {
55 if ($this->access->hasCurrentUserAccessToMyStaff()) {
56 return;
57 } else {
58 $this->main_tpl->setOnScreenMessage('failure', $this->language->txt("permission_denied"), true);
59 $this->ctrl->redirectByClass(ilDashboardGUI::class, "");
60 }
61 }
62
63 final public function executeCommand(): void
64 {
65 global $DIC;
66
67 $this->checkAccessOrFail();
68
69 $cmd = $DIC->ctrl()->getCmd();
70
71 switch ($cmd) {
74 case self::CMD_INDEX:
77 $this->$cmd();
78 break;
79 default:
80 $this->index();
81 break;
82 }
83 }
84
85 final public function index(): void
86 {
87 $this->listUsers();
88 }
89
90 final public function listUsers(): void
91 {
92 global $DIC;
93
94 $this->help->setScreenId('users_list');
95 $this->table = new ilMStListUsersTableGUI($this, self::CMD_INDEX);
96 $DIC->ui()->mainTemplate()->setTitle($DIC->language()->txt('mst_list_users'));
97 $DIC->ui()->mainTemplate()->setTitleIcon(ilUtil::getImagePath('icon_stff.svg'));
98 $DIC->ui()->mainTemplate()->setContent($this->table->getHTML());
99 }
100
101 final public function applyFilter(): void
102 {
103 $this->table = new ilMStListUsersTableGUI($this, self::CMD_APPLY_FILTER);
104 $this->table->writeFilterToSession();
105 $this->table->resetOffset();
106 $this->index();
107 }
108
109 final public function resetFilter(): void
110 {
111 $this->table = new ilMStListUsersTableGUI($this, self::CMD_RESET_FILTER);
112 $this->table->resetOffset();
113 $this->table->resetFilter();
114 $this->index();
115 }
116
117 final public function cancel(): void
118 {
119 global $DIC;
120
121 $DIC->ctrl()->redirect($this);
122 }
123}
Help GUI class.
language handling
Class ilMStListUsersGUI.
ilMStListUsersTableGUI $table
ilGlobalTemplateInterface $main_tpl
static getImagePath(string $img, string $module_path="", string $mode="output", bool $offline=false)
get image path (for images located in a template directory)
global $DIC
Definition: feed.php:28
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...