ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
ilSessionMembershipGUI Class Reference

GUI class for membership features. More...

+ Inheritance diagram for ilSessionMembershipGUI:
+ Collaboration diagram for ilSessionMembershipGUI:

Public Member Functions

 getPrintMemberData ($a_members)
 
 getAttendanceListUserData ($a_user_id, $a_filters)
 Callback from attendance list. More...
 
- Public Member Functions inherited from ilMembershipGUI
 __construct (ilObjectGUI $repository_gui, ilObject $repository_obj)
 Constructor. More...
 
 getParentGUI ()
 Get parent gui. More...
 
 getParentObject ()
 Get parent object. More...
 
 getMembersObject ()
 Get member object. More...
 
 filterUserIdsByRbacOrPositionOfCurrentUser ($a_user_ids)
 Filter user ids by access. More...
 
 updateParticipants ()
 update members More...
 
 createMailSignature ()
 
 addMemberTab (ilTabsGUI $tabs, $a_is_participant=false)
 add member tab More...
 
 readMemberData (array $usr_ids, array $columns)
 Required for member table guis. More...
 
 getLocalRoles ()
 Get parent roles. More...
 
 confirmAssignSubscribers ()
 Show subscription confirmation. More...
 
 confirmRefuseSubscribers ()
 Refuse subscriber confirmation. More...
 
 assignSubscribers ()
 Do assignment of subscription request @global type $rbacsystem @global type $ilErr. More...
 
 confirmAssignFromWaitingList ()
 Assign from waiting list (confirmatoin) More...
 
 assignFromWaitingList ()
 Assign from waiting list @global type $rbacsystem. More...
 
 confirmRefuseFromList ()
 Refuse from waiting list (confirmation) More...
 

Protected Member Functions

 getMailMemberRoles ()
 
 checkRbacOrPositionAccessBool ($a_rbac_perm, $a_pos_perm, $a_ref_id=0)
 No support for positions in sessions Check if rbac or position access is granted. More...
 
 initParticipantTemplate ()
 Init participant view template. More...
 
 initWaitingList ()
 init waiting list More...
 
 initParticipantTableGUI ()
 
 initSubscriberTable ()
 
 updateMembers ()
 update entries from member table More...
 
 confirmDeleteParticipants ()
 Show confirmation screen for participants deletion. More...
 
 deleteParticipants ()
 Delete participants @global type $rbacreview @global type $rbacsystem @global type $ilAccess @global type $ilUser. More...
 
 canAddOrSearchUsers ()
 Check if current user is allowed to add / search users.
Returns
bool
More...
 
 getMemberTabName ()
 Get member tab name. More...
 
 getMailContextOptions ()
 Get mail context options.
Returns
array
More...
 
- Protected Member Functions inherited from ilMembershipGUI
 getLanguage ()
 
 getCtrl ()
 
 getLogger ()
 
 getMailMemberRoles ()
 
 checkPermissionBool ($a_permission, $a_cmd='', $a_type='', $a_ref_id=0)
 Check permission. More...
 
 checkRbacOrPositionAccessBool ($a_rbac_perm, $a_pos_perm, $a_ref_id=0)
 Check if rbac or position access is granted. More...
 
 checkPermission ($a_permission, $a_cmd="")
 Check permission If not granted redirect to parent gui. More...
 
 checkRbacOrPermissionAccess ($a_rbac_perm, $a_pos_perm)
 check rbac or position access More...
 
 canAddOrSearchUsers ()
 Check if current user is allowed to add / search users. More...
 
 participants ()
 Show participant table, subscriber table, wating list table;. More...
 
 participantsApplyFilter ()
 Apply filter for participant table. More...
 
 participantsResetFilter ()
 reset participants filter More...
 
 editMember ()
 Edit one participant. More...
 
 editParticipants ($post_participants=array())
 Edit participants. More...
 
 confirmDeleteParticipants ()
 Show confirmation screen for participants deletion. More...
 
 deleteParticipants ()
 
 sendMailToSelectedUsers ()
 Send mail to selected users. More...
 
 getMailContextOptions ()
 Get mail context options. More...
 
 membersMap ()
 Members map. More...
 
 mailMembersBtn ()
 Mail to members view @global type $ilToolbar. More...
 
 showParticipantsToolbar ()
 Show participants toolbar. More...
 
 showMemberExportToolbarButton (ilToolbarGUI $toolbar, $a_back_cmd=null, $a_separator=false)
 Show member export button. More...
 
 showMailToMemberToolbarButton (ilToolbarGUI $toolbar, $a_back_cmd=null, $a_separator=false)
 Show mail to member toolbar button. More...
 
 getDefaultCommand ()
 Get default command. More...
 
 getMemberTabName ()
 Get member tab name. More...
 
 setSubTabs (ilTabsGUI $tabs)
 Set sub tabs. More...
 
 parseSubscriberTable ()
 Parse table of subscription request. More...
 
 initSubscriberTable ()
 
 refuseSubscribers ()
 Refuse subscribers @global type $rbacsystem. More...
 
 parseWaitingListTable ()
 Parse table of subscription request. More...
 
 refuseFromList ()
 refuse from waiting list More...
 
 addToClipboard ()
 Add selected users to user clipboard. More...
 
 getDefaultRole ()
 
 printMembers ()
 Print members. More...
 
 printMembersOutput ()
 print members output More...
 
 printForMembersOutput ()
 print members output More...
 
 jump2UsersGallery ()
 

Additional Inherited Members

- Protected Attributes inherited from ilMembershipGUI
 $lng = null
 
 $ctrl = null
 
 $logger = null
 
 $tpl
 
 $access
 

Detailed Description

Member Function Documentation

◆ canAddOrSearchUsers()

ilSessionMembershipGUI::canAddOrSearchUsers ( )
protected

Check if current user is allowed to add / search users.

Returns
bool

Reimplemented from ilMembershipGUI.

Definition at line 222 of file class.ilSessionMembershipGUI.php.

223 {
224 return false;
225 }

◆ checkRbacOrPositionAccessBool()

ilSessionMembershipGUI::checkRbacOrPositionAccessBool (   $a_rbac_perm,
  $a_pos_perm,
  $a_ref_id = 0 
)
protected

No support for positions in sessions Check if rbac or position access is granted.

Parameters
string$a_rbac_perm
string$a_pos_perm
int$a_ref_id

Reimplemented from ilMembershipGUI.

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

36 {
37 if (!$a_ref_id) {
38 $a_ref_id = $this->getParentObject()->getRefId();
39 }
40 return $this->checkPermissionBool($a_rbac_perm, $a_ref_id);
41 }
checkPermissionBool($a_permission, $a_cmd='', $a_type='', $a_ref_id=0)
Check permission.
getParentObject()
Get parent object.

References ilMembershipGUI\checkPermissionBool(), and ilMembershipGUI\getParentObject().

+ Here is the call graph for this function:

◆ confirmDeleteParticipants()

ilSessionMembershipGUI::confirmDeleteParticipants ( )
protected

Show confirmation screen for participants deletion.

Reimplemented from ilMembershipGUI.

Definition at line 139 of file class.ilSessionMembershipGUI.php.

140 {
141 $participants = (array) $_POST['participants'];
142
143 if (!count($participants)) {
144 ilUtil::sendFailure($this->lng->txt('no_checkbox'), true);
145 $this->ctrl->redirect($this, 'participants');
146 }
147
148 include_once('./Services/Utilities/classes/class.ilConfirmationGUI.php');
149 $confirm = new ilConfirmationGUI();
150 $confirm->setFormAction($this->ctrl->getFormAction($this, 'confirmDeleteParticipants'));
151 $confirm->setHeaderText($this->lng->txt($this->getParentObject()->getType() . '_header_delete_members'));
152 $confirm->setConfirm($this->lng->txt('confirm'), 'deleteParticipants');
153 $confirm->setCancel($this->lng->txt('cancel'), 'participants');
154
155 foreach ($participants as $usr_id) {
156 $name = ilObjUser::_lookupName($usr_id);
157
158 $confirm->addItem(
159 'participants[]',
160 $name['user_id'],
161 $name['lastname'] . ', ' . $name['firstname'] . ' [' . $name['login'] . ']',
162 ilUtil::getImagePath('icon_usr.svg')
163 );
164 }
165
166 $this->tpl->setContent($confirm->getHTML());
167 }
$_POST["username"]
Confirmation screen class.
static _lookupName($a_user_id)
lookup user name
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)

References $_POST, $name, ilObjUser\_lookupName(), ilUtil\getImagePath(), and ilUtil\sendFailure().

+ Here is the call graph for this function:

◆ deleteParticipants()

ilSessionMembershipGUI::deleteParticipants ( )
protected

Delete participants @global type $rbacreview @global type $rbacsystem @global type $ilAccess @global type $ilUser.

Returns
boolean

Reimplemented from ilMembershipGUI.

Definition at line 177 of file class.ilSessionMembershipGUI.php.

178 {
179 $this->checkPermission('manage_members');
180
181 $participants = (array) $_POST['participants'];
182
183 if (!is_array($participants) or !count($participants)) {
184 ilUtil::sendFailure($this->lng->txt("no_checkbox"), true);
185 $this->ctrl->redirect($this, 'participants');
186 }
187
188 foreach ($participants as $part_id) {
189 // delete role assignment
190 $this->getMembersObject()->delete($part_id);
191 // delete further settings
192 $event_part = new ilEventParticipants($this->getParentObject()->getId());
193 $event_part->setUserId($part_id);
194 $event_part->setParticipated(false);
195 $event_part->setRegistered(false);
196 $event_part->setMark('');
197 $event_part->setComment('');
198 $event_part->updateUser();
199 }
200
201 ilUtil::sendSuccess($this->lng->txt($this->getParentObject()->getType() . "_members_deleted"), true);
202 $this->ctrl->redirect($this, "participants");
203
204 return true;
205 }
checkPermission($a_permission, $a_cmd="")
Check permission If not granted redirect to parent gui.
getMembersObject()
Get member object.

References $_POST, ilMembershipGUI\checkPermission(), ilMembershipGUI\getMembersObject(), ilMembershipGUI\getParentObject(), and ilUtil\sendFailure().

+ Here is the call graph for this function:

◆ getAttendanceListUserData()

ilSessionMembershipGUI::getAttendanceListUserData (   $a_user_id,
  $a_filters 
)

Callback from attendance list.

Parameters
int$a_user_id
Returns
array

Definition at line 234 of file class.ilSessionMembershipGUI.php.

235 {
236 $data = $this->getMembersObject()->getEventParticipants()->getUser($a_user_id);
237
238 if ($a_filters && $a_filters["registered"] && !$data["registered"]) {
239 return;
240 }
241
242 $data['registered'] = $data['registered'] ?
243 $this->lng->txt('yes') :
244 $this->lng->txt('no');
245 $data['participated'] = $data['participated'] ?
246 $this->lng->txt('yes') :
247 $this->lng->txt('no');
248
249 return $data;
250 }
$data
Definition: bench.php:6

References $data, and ilMembershipGUI\getMembersObject().

+ Here is the call graph for this function:

◆ getMailContextOptions()

ilSessionMembershipGUI::getMailContextOptions ( )
protected

Get mail context options.

Returns
array

Reimplemented from ilMembershipGUI.

Definition at line 266 of file class.ilSessionMembershipGUI.php.

267 {
268 $context_options = [];
269
270 $context_options =
271 [
273 'ref_id' => $this->getParentObject()->getRefId(),
274 'ts' => time()
275 ];
276 return $context_options;
277 }
const CONTEXT_KEY
Session parameter for the context.

References ilMailFormCall\CONTEXT_KEY, ilMembershipGUI\getParentObject(), and ilSessionMailTemplateParticipantContext\ID.

+ Here is the call graph for this function:

◆ getMailMemberRoles()

ilSessionMembershipGUI::getMailMemberRoles ( )
protected
Returns
ilAbstractMailMemberRoles|null

Reimplemented from ilMembershipGUI.

Definition at line 22 of file class.ilSessionMembershipGUI.php.

23 {
24 return new ilMailMemberSessionRoles();
25 }
Class ilMailMemberSessionRoles.

◆ getMemberTabName()

ilSessionMembershipGUI::getMemberTabName ( )
protected

Get member tab name.

Returns
string

Reimplemented from ilMembershipGUI.

Definition at line 256 of file class.ilSessionMembershipGUI.php.

257 {
258 return $this->lng->txt($this->getParentObject()->getType() . '_members');
259 }

References ilMembershipGUI\getParentObject().

+ Here is the call graph for this function:

◆ getPrintMemberData()

ilSessionMembershipGUI::getPrintMemberData (   $a_members)
Parameters
array$a_members
Returns
array

Definition at line 213 of file class.ilSessionMembershipGUI.php.

214 {
215 return $a_members;
216 }

◆ initParticipantTableGUI()

ilSessionMembershipGUI::initParticipantTableGUI ( )
protected
Returns
\ilParticpantTableGUI

Definition at line 67 of file class.ilSessionMembershipGUI.php.

68 {
70 $this,
71 $this->getParentObject(),
72 'participants'
73 );
74 $table->init();
75 return $table;
76 }
if(empty($password)) $table
Definition: pwgen.php:24

References $table, and ilMembershipGUI\getParentObject().

+ Here is the call graph for this function:

◆ initParticipantTemplate()

ilSessionMembershipGUI::initParticipantTemplate ( )
protected

Init participant view template.

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

49 {
50 $this->tpl->addBlockFile('ADM_CONTENT', 'adm_content', 'tpl.sess_edit_members.html', 'Modules/Session');
51 }

◆ initSubscriberTable()

ilSessionMembershipGUI::initSubscriberTable ( )
protected
Returns
\ilSubscriberTableGUI

Reimplemented from ilMembershipGUI.

Definition at line 81 of file class.ilSessionMembershipGUI.php.

82 {
83 $subscriber = new ilSubscriberTableGUI($this, $this->getParentObject(), true, false);
84 $subscriber->setTitle($this->lng->txt('group_new_registrations'));
85 return $subscriber;
86 }
GUI class for course/group subscriptions.

References ilMembershipGUI\getParentObject().

+ Here is the call graph for this function:

◆ initWaitingList()

ilSessionMembershipGUI::initWaitingList ( )
protected

init waiting list

Returns
ilGroupWaitingList

Definition at line 57 of file class.ilSessionMembershipGUI.php.

58 {
59 include_once './Modules/Session/classes/class.ilSessionWaitingList.php';
60 $wait = new ilSessionWaitingList($this->getParentObject()->getId());
61 return $wait;
62 }

References ilMembershipGUI\getParentObject().

+ Here is the call graph for this function:

◆ updateMembers()

ilSessionMembershipGUI::updateMembers ( )
protected

update entries from member table

Definition at line 92 of file class.ilSessionMembershipGUI.php.

93 {
94 $this->checkPermission('manage_members');
95
96 $part = ilParticipants::getInstance($this->getParentObject()->getRefId());
97
98
99 $wait = new ilSessionWaitingList($this->getParentObject()->getId());
100 $waiting = $wait->getUserIds();
101
102 foreach ((array) $_REQUEST['visible_participants'] as $part_id) {
103 if (in_array($part_id, $waiting)) {
104 // so not update users on waiting list
105 continue;
106 }
107
108 $participated = (bool) $_POST['participated'][$part_id];
109 $registered = (bool) $_POST['registered'][$part_id];
110 $contact = (bool) $_POST['contact'][$part_id];
111
112 if ($part->isAssigned($part_id)) {
113 if (!$participated && !$registered && !$contact) {
114 $part->delete($part_id);
115 }
116 } else {
117 if ($participated || $registered || $contact) {
118 $part->add($part_id, IL_SESS_MEMBER);
119 }
120 }
121 $event_part = new ilEventParticipants($this->getParentObject()->getId());
122 $event_part->setUserId($part_id);
123 $event_part->setMark(ilUtil::stripSlashes($_POST['mark'][$part_id]));
124 $event_part->setComment(ilUtil::stripSlashes($_POST['comment'][$part_id]));
125 $event_part->setParticipated($participated);
126 $event_part->setRegistered($registered);
127 $event_part->setContact($contact);
128 $event_part->updateUser();
129 }
130
131 ilUtil::sendSuccess($this->getLanguage()->txt('settings_saved'), true);
132 $this->getCtrl()->redirect($this, 'participants');
133 }
const IL_SESS_MEMBER
static getInstance($a_ref_id)
Get instance by ref_id.
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled

References $_POST, ilMembershipGUI\checkPermission(), ilMembershipGUI\getCtrl(), ilParticipants\getInstance(), ilMembershipGUI\getLanguage(), ilMembershipGUI\getParentObject(), IL_SESS_MEMBER, and ilUtil\stripSlashes().

+ Here is the call graph for this function:

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