ILIAS  release_7 Revision v7.30-3-g800a261c036
All Data Structures Namespaces Files Functions Variables Modules Pages
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 ($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_DELETE = "delete"
 
const CMD_CANCEL = "cancel"
 
const AR_ID = "arid"
 

Protected Member Functions

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

Additional Inherited Members

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

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ilOrgUnitPositionGUI::__construct ( )

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

References $_GET, $DIC, ilObjOrgUnitAccess\_checkAccessPositions(), and ilUtil\sendFailure().

17  {
18  global $DIC;
19 
20  if (!ilObjOrgUnitAccess::_checkAccessPositions((int) $_GET['ref_id'])) {
21  ilUtil::sendFailure($DIC->language()->txt("permission_denied"), true);
22  $DIC->ctrl()->redirectByClass(ilObjOrgUnitGUI::class);
23  }
24  }
$_GET["client_id"]
global $DIC
Definition: goto.php:24
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static _checkAccessPositions(int $ref_id)
+ Here is the call graph for this function:

Member Function Documentation

◆ add()

ilOrgUnitPositionGUI::add ( )
protected

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

62  {
63  $form = new ilOrgUnitPositionFormGUI($this, new ilOrgUnitPosition());
64  $this->tpl()->setContent($form->getHTML());
65  }
Class ilOrgUnitPositionFormGUI.

◆ addSubTabs()

ilOrgUnitPositionGUI::addSubTabs ( )

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

References ILIAS\Modules\OrgUnit\ARHelper\BaseCommands\pushSubTab().

Referenced by edit().

252  {
253  $this->ctrl()->saveParameter($this, 'arid');
254  $this->ctrl()->saveParameterByClass(ilOrgUnitDefaultPermissionGUI::class, 'arid');
255  $this->pushSubTab(self::SUBTAB_SETTINGS, $this->ctrl()
256  ->getLinkTarget($this, self::CMD_EDIT));
257  $this->pushSubTab(self::SUBTAB_PERMISSIONS, $this->ctrl()
258  ->getLinkTargetByClass(ilOrgUnitDefaultPermissionGUI::class, self::CMD_INDEX));
259  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ assign()

ilOrgUnitPositionGUI::assign ( )
protected

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

References cancel(), ilOrgUnitPosition\CORE_POSITION_EMPLOYEE, ilOrgUnitUserAssignment\findOrCreateAssignment(), ilOrgUnitPosition\getCorePosition(), ilOrgUnitUserAssignmentQueries\getInstance(), and getPositionFromRequest().

Referenced by delete().

106  {
107  $position = $this->getPositionFromRequest();
108  if ($position->isCorePosition()) {
109  $this->cancel();
110  }
111  $ilOrgUnitUserAssignmentQueries = ilOrgUnitUserAssignmentQueries::getInstance();
112  $assignments = $ilOrgUnitUserAssignmentQueries->getUserAssignmentsOfPosition($position->getId());
113 
115 
116  foreach ($assignments as $assignment) {
117  ilOrgUnitUserAssignment::findOrCreateAssignment($assignment->getUserId(), $employee_position->getId(), $assignment->getOrguId());
118  $assignment->delete();
119  }
120 
121  ilUtil::sendSuccess($this->txt('msg_assignment_to_employee_done'), true);
122  }
static findOrCreateAssignment($user_id, $position_id, $orgu_id)
static getCorePosition($core_identifier)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cancel()

ilOrgUnitPositionGUI::cancel ( )
protected

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

Referenced by assign(), and confirmDeletion().

180  {
181  $this->ctrl()->redirect($this, self::CMD_INDEX);
182  }
+ Here is the caller graph for this function:

◆ confirmDeletion()

ilOrgUnitPositionGUI::confirmDeletion ( )
protected

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

References cancel(), ilOrgUnitUserAssignmentQueries\getInstance(), and getPositionFromRequest().

126  {
127  $position = $this->getPositionFromRequest();
128  if ($position->isCorePosition()) {
129  $this->cancel();
130  }
131  self::initAuthoritiesRenderer();
132  $this->dic()->language()->loadLanguageModule('orgu');
133  $position_string = $this->dic()->language()->txt("position") . ": ";
134  $authority_string = $this->dic()->language()->txt("authorities") . ": ";
135  $user_string = $this->dic()->language()->txt("user_assignments") . ": ";
136  $ilOrgUnitUserAssignmentQueries = ilOrgUnitUserAssignmentQueries::getInstance();
137 
138  $confirmation = new ilConfirmationGUI();
139  $confirmation->setFormAction($this->ctrl()->getFormAction($this));
140  $confirmation->setCancel($this->txt(self::CMD_CANCEL), self::CMD_CANCEL);
141  $confirmation->setConfirm($this->txt(self::CMD_DELETE), self::CMD_DELETE);
142  $confirmation->setHeaderText($this->txt('msg_confirm_deletion'));
143  $confirmation->addItem(self::AR_ID, $position->getId(), $position_string
144  . $position->getTitle());
145  // Authorities
146  $authority_string .= implode(", ", $position->getAuthorities());
147  $confirmation->addItem('authorities', true, $authority_string);
148 
149  // Amount uf user-assignments
150  $userIdsOfPosition = $ilOrgUnitUserAssignmentQueries->getUserIdsOfPosition($position->getId());
151  $ilOrgUnitUserQueries = new ilOrgUnitUserQueries();
152  $usersOfPosition = $ilOrgUnitUserQueries->findAllUsersByUserIds($userIdsOfPosition);
153  $userNames = $ilOrgUnitUserQueries->getAllUserNames($usersOfPosition);
154 
155  $confirmation->addItem('users', true, $user_string . implode(', ', $userNames));
156 
157  $checkbox_assign_users = new ilCheckboxInputGUI('', 'assign_users');
158  $checkbox_assign_users->setChecked(true);
159  $checkbox_assign_users->setValue(1);
160  $checkbox_assign_users->setOptionTitle('Assign affected users to employee role');
161  $confirmation->addItem('assign_users', '', $checkbox_assign_users->render());
162 
163  $this->tpl()->setContent($confirmation->getHTML());
164  }
This class represents a checkbox property in a property form.
Class ilOrgUnitUserQueries.
getFormAction($a_cmd, $a_formaction="")
get form action for command (command is method name without "Object", e.g.
Confirmation screen class.
+ Here is the call graph for this function:

◆ create()

ilOrgUnitPositionGUI::create ( )
protected

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

69  {
70  $form = new ilOrgUnitPositionFormGUI($this, new ilOrgUnitPosition());
71  if ($form->saveObject()) {
72  ilUtil::sendSuccess($this->txt('msg_position_created'), true);
73  $this->ctrl()->redirect($this, self::CMD_INDEX);
74  }
75 
76  $this->tpl()->setContent($form->getHTML());
77  }
Class ilOrgUnitPositionFormGUI.

◆ delete()

ilOrgUnitPositionGUI::delete ( )
protected

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

References $_POST, assign(), and getPositionFromRequest().

168  {
169  if ($_POST['assign_users']) {
170  $this->assign();
171  }
172  $position = $this->getPositionFromRequest();
173  $position->deleteWithAllDependencies();
174  ilUtil::sendSuccess($this->txt('msg_deleted'), true);
175  $this->ctrl()->redirect($this, self::CMD_INDEX);
176  }
$_POST["username"]
+ Here is the call graph for this function:

◆ edit()

ilOrgUnitPositionGUI::edit ( )
protected

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

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

81  {
82  $this->addSubTabs();
83  $this->activeSubTab(self::SUBTAB_SETTINGS);
84  $position = $this->getPositionFromRequest();
85  $form = new ilOrgUnitPositionFormGUI($this, $position);
86  $form->fillForm();
87  $this->tpl()->setContent($form->getHTML());
88  }
Class ilOrgUnitPositionFormGUI.
+ Here is the call graph for this function:

◆ getActiveTabId()

ilOrgUnitPositionGUI::getActiveTabId ( )
protected
Returns
string

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

References ilObjOrgUnitGUI\TAB_POSITIONS.

43  {
45  }

◆ getARIdFromRequest()

ilOrgUnitPositionGUI::getARIdFromRequest ( )
protected
Returns
mixed

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

Referenced by getPositionFromRequest().

189  {
190  $get = $this->dic()->http()->request()->getQueryParams()[self::AR_ID];
191  $post = $this->dic()->http()->request()->getParsedBody()[self::AR_ID];
192 
193  return $post ? $post : $get;
194  }
+ Here is the caller graph for this function:

◆ getPositionFromRequest()

ilOrgUnitPositionGUI::getPositionFromRequest ( )
protected
Returns

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

References $GLOBALS, $lang, ActiveRecord\findOrGetInstance(), getARIdFromRequest(), ilOrgUnitAuthority\OVER_EVERYONE, ilOrgUnitAuthority\replaceNameRenderer(), ilOrgUnitAuthority\SCOPE_ALL_ORGUS, ilOrgUnitAuthority\SCOPE_SAME_ORGU, and ilOrgUnitAuthority\SCOPE_SUBSEQUENT_ORGUS.

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

201  {
202  return ilOrgUnitPosition::find($this->getARIdFromRequest());
203  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getPossibleNextClasses()

ilOrgUnitPositionGUI::getPossibleNextClasses ( )
protected
Returns
array

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

31  {
32  return array(
33  ilOrgUnitDefaultPermissionGUI::class,
34  ilOrgUnitUserAssignmentGUI::class,
35  );
36  }

◆ index()

ilOrgUnitPositionGUI::index ( )
protected

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

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

49  {
50  self::initAuthoritiesRenderer();
52  $b->setUrl($this->ctrl()->getLinkTarget($this, self::CMD_ADD));
53  $b->setCaption('add_position');
54  $this->dic()->toolbar()->addButtonInstance($b);
55 
56  $table = new ilOrgUnitPositionTableGUI($this, self::CMD_INDEX);
57  $this->setContent($table->getHTML());
58  }
Class ilOrgUnitPositionTableGUI.
+ Here is the call graph for this function:

◆ update()

ilOrgUnitPositionGUI::update ( )
protected

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

References getPositionFromRequest().

92  {
93  $position = $this->getPositionFromRequest();
94  $form = new ilOrgUnitPositionFormGUI($this, $position);
95  $form->setValuesByPost();
96  if ($form->saveObject()) {
97  ilUtil::sendSuccess($this->txt('msg_position_updated'), true);
98  $this->ctrl()->redirect($this, self::CMD_INDEX);
99  }
100 
101  $this->tpl()->setContent($form->getHTML());
102  }
Class ilOrgUnitPositionFormGUI.
+ Here is the call graph for this function:

Field Documentation

◆ CMD_ASSIGN

const ilOrgUnitPositionGUI::CMD_ASSIGN = 'assign'

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

◆ CMD_CONFIRM_DELETION

const ilOrgUnitPositionGUI::CMD_CONFIRM_DELETION = 'confirmDeletion'

◆ SUBTAB_PERMISSIONS

const ilOrgUnitPositionGUI::SUBTAB_PERMISSIONS = 'obj_orgunit_positions'

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

Referenced by ilOrgUnitDefaultPermissionGUI\index().

◆ SUBTAB_SETTINGS

const ilOrgUnitPositionGUI::SUBTAB_SETTINGS = 'settings'

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


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