PluginProbe
User Access Manager / 2.3.7
User Access Manager v2.3.7
2.3.20 2.3.19 2.3.18 2.3.17 2.3.16 2.3.15 2.3.14 2.3.13 trunk 0.6 0.6.1 0.6.2 0.7 0.7 Beta 0.7.0.1 0.8 0.8.0.1 0.8.0.2 0.9 0.9.1 0.9.1.1 0.9.1.2 0.9.1.3 0.9.1.4 1.0 All 136 releases
user-access-manager / src / View / GroupSelectionForm.php

GroupSelectionForm.php in User Access Manager 2.3.7, at src/View/GroupSelectionForm.php

149 lines 6.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * GroupSelectionFrom.php
4 *
5 * Shows the group selection form at the admin panel.
6 *
7 * PHP versions 5
8 *
9 * @author Alexander Schneider <alexanderschneider85@gmail.com>
10 * @copyright 2008-2017 Alexander Schneider
11 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License, version 2
12 * @version SVN: $id$
13 * @link http://wordpress.org/extend/plugins/user-access-manager/
14 */
15
16 use UserAccessManager\Controller\Backend\ObjectController;
17 use UserAccessManager\Object\ObjectHandler;
18 use UserAccessManager\UserGroup\AssignmentInformation;
19 use UserAccessManager\UserGroup\DynamicUserGroup;
20 use UserAccessManager\UserGroup\UserGroup;
21
22 ?>
23 <input type="hidden" name="uam_update_groups" value="1"/>
24 <ul class="uam_group_selection">
25 <?php
26 /**
27 * @var ObjectController $controller
28 */
29
30 $groupsFormName = $controller->getGroupsFormName();
31 $objectType = $controller->getObjectInformation()->getObjectType();
32 $objectId = $controller->getObjectInformation()->getObjectId();
33 $userGroups = $controller->getFilteredUserGroups();
34 $controller->sortUserGroups($userGroups);
35 $dateUtil = $controller->getDateUtil();
36
37 /**
38 * @var UserGroup[] $userGroups
39 */
40 foreach ($userGroups as $userGroup) {
41 $userGroup->setIgnoreDates(true);
42 $fromDate = null;
43 $toDate = null;
44 $isLockedRecursive = false;
45 $attributes = '';
46
47 /**
48 * @var AssignmentInformation $assignmentInformation
49 */
50 if ($userGroup->isObjectMember($objectType, $objectId, $assignmentInformation) === true) {
51 $attributes .= 'checked="checked" ';
52 $fromDate = $assignmentInformation->getFromDate();
53 $toDate = $assignmentInformation->getToDate();
54 $isLockedRecursive = $userGroup->isLockedRecursive($objectType, $objectId);
55 $attributes .= ($isLockedRecursive === true) ? ' disabled="disabled"' : '';
56 } elseif ($controller->isNewObject()
57 && $userGroup->isDefaultGroupForObjectType($objectType, $fromTime, $toTime) === true
58 ) {
59 $attributes .= 'checked="checked" ';
60 $fromDate = $dateUtil->getDateFromTime($fromTime);
61 $toDate = $dateUtil->getDateFromTime($toTime);
62 } elseif ($userGroup instanceof DynamicUserGroup
63 && $userGroup->getId() !== DynamicUserGroup::USER_TYPE . '|0'
64 ) {
65 continue;
66 }
67
68 ?>
69 <li>
70 <input type="checkbox"
71 id="<?php echo $groupsFormName; ?>-<?php echo $userGroup->getId(); ?>" <?php echo $attributes; ?>
72 value="<?php echo $userGroup->getId(); ?>"
73 name="<?php echo $groupsFormName; ?>[<?php echo $userGroup->getId(); ?>][id]"/>
74 <label for="<?php echo $groupsFormName; ?>-<?php echo $userGroup->getId(); ?>" class="selectit"
75 style="display:inline;">
76 <?php echo htmlentities($userGroup->getName()) . ($isLockedRecursive === true ? ' [LR]' : ''); ?>
77 <span class="uam_group_info_link">(<?php echo TXT_UAM_INFO; ?>)</span>
78 <?php include 'GroupInfo.php'; ?>
79 </label>
80 <?php
81 $dateText = TXT_UAM_GROUP_ASSIGNMENT_TIME;
82
83 if ($fromDate !== null) {
84 $dateText = TXT_UAM_GROUP_FROM_DATE . ' ' . $dateUtil->formatDate($fromDate);
85 }
86
87 if ($toDate !== null) {
88 $dateText = ($dateText !== TXT_UAM_GROUP_ASSIGNMENT_TIME) ? $dateText . '<br>' : '';
89 $dateText .= TXT_UAM_GROUP_TO_DATE . ' ' . $dateUtil->formatDate($toDate);
90 }
91
92 if ($isLockedRecursive === false) {
93 $formPrefix = $groupsFormName . '-' . $userGroup->getId();
94 ?>
95 <span class="uam_group_date"><?php echo $dateText; ?></span>
96 <div class="uam_group_date_form">
97 <div>
98 <label class="uam_date_label" for="<?php echo $formPrefix; ?>-fromDate-date">
99 <?php echo TXT_UAM_GROUP_FROM_DATE; ?>
100 </label>
101 <input type="date"
102 id="<?php echo $formPrefix ?>-fromDate-date"
103 name="<?php echo "{$groupsFormName}[{$userGroup->getId()}][fromDate][date]"; ?>"
104 value="<?php echo $dateUtil->formatDateForDateInput($fromDate); ?>"/>
105 <label for="<?php echo $formPrefix; ?>-fromDate-time">@</label>
106 <input type="time"
107 id="<?php echo $formPrefix; ?>-fromDate-time"
108 name="<?php echo "{$groupsFormName}[{$userGroup->getId()}][fromDate][time]"; ?>"
109 value="<?php echo $dateUtil->formatDateForTimeInput($fromDate); ?>"/>
110 </div>
111 <div>
112 <label class="uam_date_label" for="<?php echo $formPrefix; ?>-toDate-date">
113 <?php echo TXT_UAM_GROUP_TO_DATE; ?>
114 </label>
115 <input type="date"
116 id="<?php echo $formPrefix ?>-toDate-date"
117 name="<?php echo "{$groupsFormName}[{$userGroup->getId()}][toDate][date]"; ?>"
118 value="<?php echo $dateUtil->formatDateForDateInput($toDate); ?>"/>
119 <label for="<?php echo $formPrefix; ?>-toDate-time">@</label>
120 <input type="time"
121 id="<?php echo $formPrefix; ?>-toDate-time"
122 name="<?php echo "{$groupsFormName}[{$userGroup->getId()}][toDate][time]"; ?>"
123 value="<?php echo $dateUtil->formatDateForTimeInput($toDate); ?>"/>
124 </div>
125 </div>
126 <?php
127 }
128 ?>
129 </li>
130 <?php
131 }
132 ?>
133 </ul>
134 <?php
135 if ($controller->getObjectInformation()->getObjectType() !==
136 ObjectHandler::GENERAL_USER_OBJECT_TYPE
137 && $controller->checkUserAccess() === true
138 ) {
139 ?>
140 <p>
141 <span><label for="uam_dynamic_groups"><?php echo TXT_UAM_ADD_DYNAMIC_GROUP; ?></label></span>
142 <input id="uam_dynamic_groups"
143 class="form-input-tip ui-autocomplete-input"
144 autocomplete="off"
145 value=""
146 role="combobox">
147 </p>
148 <?php
149 }