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 type $rbacsystem type $ilErr. More...
 
 confirmAssignFromWaitingList ()
 Assign from waiting list (confirmatoin) More...
 
 assignFromWaitingList ()
 Assign from waiting list 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 type $rbacreview type $rbacsystem type $ilAccess type $ilUser. More...
 
 canAddOrSearchUsers ()
 
 getMemberTabName ()
 Get member tab name. More...
 
 getMailContextOptions ()
 
- 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 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 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

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

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

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

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.
+ Here is the call graph for this function:

◆ confirmDeleteParticipants()

ilSessionMembershipGUI::confirmDeleteParticipants ( )
protected

Show confirmation screen for participants deletion.

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

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

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  }
static _lookupName($a_user_id)
lookup user name
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
$_POST["username"]
Confirmation screen class.
+ Here is the call graph for this function:

◆ deleteParticipants()

ilSessionMembershipGUI::deleteParticipants ( )
protected

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

Returns
boolean

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

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

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  }
getMembersObject()
Get member object.
checkPermission($a_permission, $a_cmd="")
Check permission If not granted redirect to parent gui.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
getParentObject()
Get parent object.
$_POST["username"]
+ 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.

References $data, and ilMembershipGUI\getMembersObject().

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  }
getMembersObject()
Get member object.
$data
Definition: bench.php:6
+ Here is the call graph for this function:

◆ getMailContextOptions()

ilSessionMembershipGUI::getMailContextOptions ( )
protected

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

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

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.
getParentObject()
Get parent object.
+ Here is the call graph for this function:

◆ getMailMemberRoles()

ilSessionMembershipGUI::getMailMemberRoles ( )
protected
Returns
ilAbstractMailMemberRoles|null

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

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

References ilMembershipGUI\getParentObject().

257  {
258  return $this->lng->txt($this->getParentObject()->getType() . '_members');
259  }
getParentObject()
Get parent object.
+ 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

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

References $table, and ilMembershipGUI\getParentObject().

68  {
70  $this,
71  $this->getParentObject(),
72  'participants'
73  );
74  $table->init();
75  return $table;
76  }
getParentObject()
Get parent object.
if(empty($password)) $table
Definition: pwgen.php:24
+ 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

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

References ilMembershipGUI\getParentObject().

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.
getParentObject()
Get parent object.
+ 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.

References ilMembershipGUI\getParentObject().

58  {
59  include_once './Modules/Session/classes/class.ilSessionWaitingList.php';
60  $wait = new ilSessionWaitingList($this->getParentObject()->getId());
61  return $wait;
62  }
getParentObject()
Get parent object.
+ 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.

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

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  }
checkPermission($a_permission, $a_cmd="")
Check permission If not granted redirect to parent gui.
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
getParentObject()
Get parent object.
const IL_SESS_MEMBER
$_POST["username"]
+ Here is the call graph for this function:

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