ILIAS  release_8 Revision v8.24
ilOrgUnitPositionGUI Class Reference

Class ilOrgUnitPositionGUI. More...

+ Inheritance diagram for ilOrgUnitPositionGUI:
+ Collaboration diagram for ilOrgUnitPositionGUI:

Public Member Functions

 __construct ()
 
 addSubTabs ()
 
- Public Member Functions inherited from ILIAS\Modules\OrgUnit\ARHelper\BaseCommands
 getParentGui ()
 
 setParentGui (BaseCommands $parent_gui)
 
 executeCommand ()
 
 addSubTabs ()
 

Data Fields

const SUBTAB_SETTINGS = 'settings'
 
const SUBTAB_PERMISSIONS = 'obj_orgunit_positions'
 
const CMD_CONFIRM_DELETION = 'confirmDeletion'
 
const CMD_ASSIGN = 'assign'
 
- Data Fields inherited from ILIAS\Modules\OrgUnit\ARHelper\BaseCommands
const CMD_INDEX = "index"
 
const CMD_ADD = "add"
 
const CMD_CREATE = "create"
 
const CMD_EDIT = "edit"
 
const CMD_UPDATE = "update"
 
const CMD_CONFIRM = "confirm"
 
const CMD_CONFIRM_RECURSIVE = "confirmRecursive"
 
const CMD_DELETE = "delete"
 
const CMD_DELETE_RECURSIVE = "deleteRecursive"
 
const CMD_CANCEL = "cancel"
 
const AR_ID = "arid"
 

Protected Member Functions

 getPossibleNextClasses ()
 
 getActiveTabId ()
 
 index ()
 
 add ()
 
 create ()
 
 edit ()
 
 update ()
 
 assign ()
 
 confirmDeletion ()
 
 delete ()
 
 cancel ()
 
 getPositionFromRequest ()
 
- Protected Member Functions inherited from ILIAS\Modules\OrgUnit\ARHelper\BaseCommands
 __construct ()
 
 index ()
 
 getPossibleNextClasses ()
 
 getActiveTabId ()
 
 cancel ()
 
 setContent (string $html)
 
 pushSubTab (string $subtab_id, string $url)
 
 activeSubTab (string $subtab_id)
 
 getParentRefId ()
 

Protected Attributes

ilToolbarGUI $toolbar
 
- Protected Attributes inherited from ILIAS\Modules\OrgUnit\ARHelper\BaseCommands
BaseCommands $parent_gui = null
 

Private Attributes

ilGlobalTemplateInterface $main_tpl
 
ilCtrl $ctrl
 
ilGlobalTemplateInterface $tpl
 
ilLanguage $language
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ilOrgUnitPositionGUI::__construct ( )

Reimplemented from ILIAS\Modules\OrgUnit\ARHelper\BaseCommands.

Definition at line 39 of file class.ilOrgUnitPositionGUI.php.

40 {
41 global $DIC;
42
44
45 $main_tpl = $DIC->ui()->mainTemplate();
46 $this->main_tpl = $DIC->ui()->mainTemplate();
47 $this->ctrl = $DIC->ctrl();
48 $this->toolbar = $DIC->toolbar();
49 $this->tpl = $DIC->ui()->mainTemplate();
50 $this->language = $DIC->language();
51 $this->initRequest(
52 $DIC->http(),
53 $DIC['refinery']
54 );
55
56
58 $main_tpl->setOnScreenMessage('failure', $this->language->txt("permission_denied"), true);
59 $DIC->ctrl->redirectByClass(ilObjOrgUnitGUI::class);
60 }
61 }
static _checkAccessPositions(int $ref_id)
ilGlobalTemplateInterface $main_tpl
global $DIC
Definition: feed.php:28
setOnScreenMessage(string $type, string $a_txt, bool $a_keep=false)
Set a message to be displayed to the user.
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc
initRequest(HTTP\Services $http, Refinery\Factory $refinery, ?array $passed_query_params=null, ?array $passed_post_data=null)
Query params and post data parameters are used for testing.
$_GET['client_id']
Definition: saml1-acs.php:21

References $_GET, $DIC, $main_tpl, ILIAS\GlobalScreen\Provider\__construct(), ilObjOrgUnitAccess\_checkAccessPositions(), ILIAS\Repository\ctrl(), ILIAS\Repository\initRequest(), ILIAS\UI\examples\Symbol\Glyph\Language\language(), ilGlobalTemplateInterface\setOnScreenMessage(), and ILIAS\Repository\toolbar().

+ Here is the call graph for this function:

Member Function Documentation

◆ add()

ilOrgUnitPositionGUI::add ( )
protected

Definition at line 88 of file class.ilOrgUnitPositionGUI.php.

88 : void
89 {
90 $form = new ilOrgUnitPositionFormGUI($this, new ilOrgUnitPosition());
91 $this->tpl->setContent($form->getHTML());
92 }
Class ilOrgUnitPositionFormGUI.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...

◆ addSubTabs()

ilOrgUnitPositionGUI::addSubTabs ( )

Reimplemented from ILIAS\Modules\OrgUnit\ARHelper\BaseCommands.

Definition at line 261 of file class.ilOrgUnitPositionGUI.php.

261 : void
262 {
263 $this->ctrl->saveParameter($this, 'arid');
264 $this->ctrl->saveParameterByClass(ilOrgUnitDefaultPermissionGUI::class, 'arid');
265 $this->pushSubTab(self::SUBTAB_SETTINGS, $this->ctrl
266 ->getLinkTarget($this, self::CMD_EDIT));
267 $this->pushSubTab(self::SUBTAB_PERMISSIONS, $this->ctrl
268 ->getLinkTargetByClass(
269 ilOrgUnitDefaultPermissionGUI::class,
270 self::CMD_INDEX
271 ));
272 }
pushSubTab(string $subtab_id, string $url)

References ILIAS\Repository\ctrl(), and ILIAS\Modules\OrgUnit\ARHelper\BaseCommands\pushSubTab().

Referenced by edit().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ assign()

ilOrgUnitPositionGUI::assign ( )
protected

Definition at line 128 of file class.ilOrgUnitPositionGUI.php.

128 : void
129 {
130 $position = $this->getPositionFromRequest();
131 if ($position->isCorePosition()) {
132 $this->cancel();
133 }
134 $ilOrgUnitUserAssignmentQueries = ilOrgUnitUserAssignmentQueries::getInstance();
135 $assignments = $ilOrgUnitUserAssignmentQueries->getUserAssignmentsOfPosition($position->getId());
136
138
139 foreach ($assignments as $assignment) {
141 $assignment->getUserId(),
142 $employee_position->getId(),
143 $assignment->getOrguId()
144 );
145 $assignment->delete();
146 }
147
148 $this->main_tpl->setOnScreenMessage('success', $this->language->txt('msg_assignment_to_employee_done'), true);
149 }
static getCorePosition(int $core_identifier)
static findOrCreateAssignment(int $user_id, int $position_id, int $orgu_id)

References cancel(), ilOrgUnitPosition\CORE_POSITION_EMPLOYEE, ilOrgUnitUserAssignment\findOrCreateAssignment(), ilOrgUnitPosition\getCorePosition(), ilOrgUnitUserAssignmentQueries\getInstance(), getPositionFromRequest(), and ILIAS\UI\examples\Symbol\Glyph\Language\language().

Referenced by delete().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cancel()

ilOrgUnitPositionGUI::cancel ( )
protected
Exceptions

ilCtrlException

Reimplemented from ILIAS\Modules\OrgUnit\ARHelper\BaseCommands.

Definition at line 205 of file class.ilOrgUnitPositionGUI.php.

205 : void
206 {
207 $this->ctrl->redirect($this, self::CMD_INDEX);
208 }

References ILIAS\Repository\ctrl().

Referenced by assign(), and confirmDeletion().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ confirmDeletion()

ilOrgUnitPositionGUI::confirmDeletion ( )
protected

Definition at line 151 of file class.ilOrgUnitPositionGUI.php.

151 : void
152 {
153 $position = $this->getPositionFromRequest();
154 if ($position->isCorePosition()) {
155 $this->cancel();
156 }
157 $position->afterObjectLoad();
158 self::initAuthoritiesRenderer();
159 $this->language->loadLanguageModule('orgu');
160 $position_string = $this->language->txt("position") . ": ";
161 $authority_string = $this->language->txt("authorities") . ": ";
162 $user_string = $this->language->txt("user_assignments") . ": ";
163 $ilOrgUnitUserAssignmentQueries = ilOrgUnitUserAssignmentQueries::getInstance();
164
165 $confirmation = new ilConfirmationGUI();
166 $confirmation->setFormAction($this->ctrl->getFormAction($this));
167 $confirmation->setCancel($this->language->txt(self::CMD_CANCEL), self::CMD_CANCEL);
168 $confirmation->setConfirm($this->language->txt(self::CMD_DELETE), self::CMD_DELETE);
169 $confirmation->setHeaderText($this->language->txt('msg_confirm_deletion'));
170 $confirmation->addItem(self::AR_ID, $position->getId(), $position_string
171 . $position->getTitle());
172 // Authorities
173 $authority_string .= implode(", ", $position->getAuthorities());
174 $confirmation->addItem('authorities', true, $authority_string);
175
176 // Amount uf user-assignments
177 $userIdsOfPosition = $ilOrgUnitUserAssignmentQueries->getUserIdsOfPosition($position->getId());
178 $ilOrgUnitUserQueries = new ilOrgUnitUserQueries();
179 $usersOfPosition = $ilOrgUnitUserQueries->findAllUsersByUserIds($userIdsOfPosition);
180 $userNames = $ilOrgUnitUserQueries->getAllUserNames($usersOfPosition);
181
182 $confirmation->addItem('users', true, $user_string . implode(', ', $userNames));
183
184 $checkbox_assign_users = new ilCheckboxInputGUI('', 'assign_users');
185 $checkbox_assign_users->setChecked(true);
186 $checkbox_assign_users->setValue(1);
187 $checkbox_assign_users->setOptionTitle('Assign affected users to employee role');
188 $confirmation->addItem('assign_users', '', $checkbox_assign_users->render());
189
190 $this->tpl->setContent($confirmation->getHTML());
191 }
This class represents a checkbox property in a property form.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...

References cancel(), ILIAS\Repository\ctrl(), ilOrgUnitUserAssignmentQueries\getInstance(), getPositionFromRequest(), and ILIAS\UI\examples\Symbol\Glyph\Language\language().

+ Here is the call graph for this function:

◆ create()

ilOrgUnitPositionGUI::create ( )
protected

Definition at line 94 of file class.ilOrgUnitPositionGUI.php.

94 : void
95 {
96 $form = new ilOrgUnitPositionFormGUI($this, new ilOrgUnitPosition());
97 if ($form->saveObject() === true) {
98 $this->main_tpl->setOnScreenMessage('success', $this->language->txt('msg_position_created'), true);
99 $this->ctrl->redirect($this, self::CMD_INDEX);
100 }
101
102 $this->tpl->setContent($form->getHTML());
103 }

References ILIAS\Repository\ctrl(), and ILIAS\UI\examples\Symbol\Glyph\Language\language().

+ Here is the call graph for this function:

◆ delete()

ilOrgUnitPositionGUI::delete ( )
protected

Definition at line 193 of file class.ilOrgUnitPositionGUI.php.

193 : void
194 {
195 if ($_POST['assign_users']) {
196 $this->assign();
197 }
198 $position = $this->getPositionFromRequest();
199 $position->afterObjectLoad();
200 $position->deleteWithAllDependencies();
201 $this->main_tpl->setOnScreenMessage('success', $this->language->txt('msg_deleted'), true);
202 $this->ctrl->redirect($this, self::CMD_INDEX);
203 }

References assign(), ILIAS\Repository\ctrl(), getPositionFromRequest(), and ILIAS\UI\examples\Symbol\Glyph\Language\language().

+ Here is the call graph for this function:

◆ edit()

ilOrgUnitPositionGUI::edit ( )
protected

Definition at line 105 of file class.ilOrgUnitPositionGUI.php.

105 : void
106 {
107 $this->addSubTabs();
108 $this->activeSubTab(self::SUBTAB_SETTINGS);
109 $position = $this->getPositionFromRequest();
110 $form = new ilOrgUnitPositionFormGUI($this, $position);
111 $form->fillForm();
112 $this->tpl->setContent($form->getHTML());
113 }

References ILIAS\Modules\OrgUnit\ARHelper\BaseCommands\activeSubTab(), addSubTabs(), and getPositionFromRequest().

+ Here is the call graph for this function:

◆ getActiveTabId()

ilOrgUnitPositionGUI::getActiveTabId ( )
protected

Reimplemented from ILIAS\Modules\OrgUnit\ARHelper\BaseCommands.

Definition at line 71 of file class.ilOrgUnitPositionGUI.php.

71 : string
72 {
74 }

References ilObjOrgUnitGUI\TAB_POSITIONS.

◆ getPositionFromRequest()

ilOrgUnitPositionGUI::getPositionFromRequest ( )
protected

Definition at line 210 of file class.ilOrgUnitPositionGUI.php.

210 : ?ActiveRecord
211 {
212 return ilOrgUnitPosition::find($this->str(self::AR_ID));
213 }
Class ActiveRecord.

References ILIAS\Repository\str().

Referenced by assign(), confirmDeletion(), delete(), edit(), and update().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getPossibleNextClasses()

ilOrgUnitPositionGUI::getPossibleNextClasses ( )
protected

Reimplemented from ILIAS\Modules\OrgUnit\ARHelper\BaseCommands.

Definition at line 63 of file class.ilOrgUnitPositionGUI.php.

63 : array
64 {
65 return array(
66 ilOrgUnitDefaultPermissionGUI::class,
67 ilOrgUnitUserAssignmentGUI::class,
68 );
69 }

◆ index()

ilOrgUnitPositionGUI::index ( )
protected

Reimplemented from ILIAS\Modules\OrgUnit\ARHelper\BaseCommands.

Definition at line 76 of file class.ilOrgUnitPositionGUI.php.

76 : void
77 {
78 self::initAuthoritiesRenderer();
80 $b->setUrl($this->ctrl->getLinkTarget($this, self::CMD_ADD));
81 $b->setCaption('add_position');
82 $this->toolbar->addButtonInstance($b);
83
84 $table = new ilOrgUnitPositionTableGUI($this, self::CMD_INDEX);
85 $this->setContent($table->getHTML());
86 }
Class ilOrgUnitPositionTableGUI.

References Vendor\Package\$b, ILIAS\Repository\ctrl(), ilLinkButton\getInstance(), ILIAS\Modules\OrgUnit\ARHelper\BaseCommands\setContent(), and ILIAS\Repository\toolbar().

+ Here is the call graph for this function:

◆ update()

ilOrgUnitPositionGUI::update ( )
protected

Definition at line 115 of file class.ilOrgUnitPositionGUI.php.

115 : void
116 {
117 $position = $this->getPositionFromRequest();
118 $form = new ilOrgUnitPositionFormGUI($this, $position);
119 $form->setValuesByPost();
120 if ($form->saveObject() === true) {
121 $this->main_tpl->setOnScreenMessage('success', $this->language->txt('msg_position_updated'), true);
122 $this->ctrl->redirect($this, self::CMD_INDEX);
123 }
124
125 $this->tpl->setContent($form->getHTML());
126 }

References ILIAS\Repository\ctrl(), getPositionFromRequest(), and ILIAS\UI\examples\Symbol\Glyph\Language\language().

+ Here is the call graph for this function:

Field Documentation

◆ $ctrl

ilCtrl ilOrgUnitPositionGUI::$ctrl
private

Definition at line 35 of file class.ilOrgUnitPositionGUI.php.

◆ $language

ilLanguage ilOrgUnitPositionGUI::$language
private

Definition at line 37 of file class.ilOrgUnitPositionGUI.php.

◆ $main_tpl

ilGlobalTemplateInterface ilOrgUnitPositionGUI::$main_tpl
private

Definition at line 34 of file class.ilOrgUnitPositionGUI.php.

Referenced by __construct().

◆ $toolbar

ilToolbarGUI ilOrgUnitPositionGUI::$toolbar
protected

Definition at line 33 of file class.ilOrgUnitPositionGUI.php.

◆ $tpl

ilGlobalTemplateInterface ilOrgUnitPositionGUI::$tpl
private

Definition at line 36 of file class.ilOrgUnitPositionGUI.php.

◆ CMD_ASSIGN

const ilOrgUnitPositionGUI::CMD_ASSIGN = 'assign'

Definition at line 32 of file class.ilOrgUnitPositionGUI.php.

◆ CMD_CONFIRM_DELETION

const ilOrgUnitPositionGUI::CMD_CONFIRM_DELETION = 'confirmDeletion'

Definition at line 31 of file class.ilOrgUnitPositionGUI.php.

◆ SUBTAB_PERMISSIONS

const ilOrgUnitPositionGUI::SUBTAB_PERMISSIONS = 'obj_orgunit_positions'

Definition at line 30 of file class.ilOrgUnitPositionGUI.php.

Referenced by ilOrgUnitDefaultPermissionGUI\index().

◆ SUBTAB_SETTINGS

const ilOrgUnitPositionGUI::SUBTAB_SETTINGS = 'settings'

Definition at line 29 of file class.ilOrgUnitPositionGUI.php.


The documentation for this class was generated from the following file: