ILIAS  release_5-1 Revision 5.0.0-5477-g43f3e3fab5
class.ilCourseParticipantsTableGUI.php
Go to the documentation of this file.
1 <?php
2 
3 /*
4  +-----------------------------------------------------------------------------+
5  | ILIAS open source |
6  +-----------------------------------------------------------------------------+
7  | Copyright (c) 1998-2006 ILIAS open source, University of Cologne |
8  | |
9  | This program is free software; you can redistribute it and/or |
10  | modify it under the terms of the GNU General Public License |
11  | as published by the Free Software Foundation; either version 2 |
12  | of the License, or (at your option) any later version. |
13  | |
14  | This program is distributed in the hope that it will be useful, |
15  | but WITHOUT ANY WARRANTY; without even the implied warranty of |
16  | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
17  | GNU General Public License for more details. |
18  | |
19  | You should have received a copy of the GNU General Public License |
20  | along with this program; if not, write to the Free Software |
21  | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
22  +-----------------------------------------------------------------------------+
23  */
24 
25 include_once './Services/Membership/classes/class.ilParticipantsTableGUI.php';
34 {
35  protected $type = 'admin';
36  protected $show_learning_progress = false;
37  protected $show_timings = false;
38  protected $show_edit_link = true;
39 
40  protected $role_id = 0;
41 
49  public function __construct(
50  $a_parent_obj,
51  $a_type = 'admin',
52  $show_content = true,
53  $a_show_learning_progress = false,
54  $a_show_timings = false,
55  $a_show_edit_link= true,
56  $a_role_id = 0,
57  $a_show_lp_status_sync = false)
58  {
59  global $lng, $ilCtrl;
60 
61  $this->show_learning_progress = $a_show_learning_progress;
62  $this->show_timings = $a_show_timings;
63  $this->show_edit_link = $a_show_edit_link;
64  $this->show_lp_status_sync = $a_show_lp_status_sync;
65 
66  // #13208
67  include_once("Services/Tracking/classes/class.ilObjUserTracking.php");
69  {
70  $this->show_lp_status_sync = false;
71  }
72 
73  $this->lng = $lng;
74  $this->lng->loadLanguageModule('crs');
75  $this->lng->loadLanguageModule('trac');
76  $this->lng->loadLanguageModule('rbac');
77 
78  $this->ctrl = $ilCtrl;
79 
80  $this->type = $a_type;
81  $this->setRoleId($a_role_id);
82 
83  include_once('./Services/PrivacySecurity/classes/class.ilPrivacySettings.php');
84  $this->privacy = ilPrivacySettings::_getInstance();
85 
86  // required before constructor for columns
87  $this->setId('crs_' . $a_type . '_' . $a_role_id.'_'. $a_parent_obj->object->getId());
88  parent::__construct($a_parent_obj, 'members');
89 
90  $this->initSettings();
91 
92  $this->setFormName('participants');
93 
94  $this->addColumn('', 'f', "1");
95  $this->addColumn($this->lng->txt('name'), 'lastname', '20%');
96 
97  $all_cols = $this->getSelectableColumns();
98  foreach($this->getSelectedColumns() as $col)
99  {
100  $this->addColumn($all_cols[$col]['txt'], $col);
101  }
102 
103  if($this->show_learning_progress)
104  {
105  $this->addColumn($this->lng->txt('learning_progress'), 'progress');
106  }
107 
108  if($this->privacy->enabledCourseAccessTimes())
109  {
110  $this->addColumn($this->lng->txt('last_access'), 'access_ut', '16em');
111  }
112 
113  $this->addColumn($this->lng->txt('crs_member_passed'), 'passed');
114  if($this->show_lp_status_sync)
115  {
116  $this->addColumn($this->lng->txt('crs_member_passed_status_changed'), 'passed_info');
117  }
118 
119  if($this->type == 'admin')
120  {
121  $this->setSelectAllCheckbox('admins');
122  // cognos-blu-patch: begin
123  $this->addColumn($this->lng->txt('crs_mem_contact'),'contact');
124  // cognos-blu-patch: end
125  $this->addColumn($this->lng->txt('crs_notification_list_title'), 'notification');
126  $this->addCommandButton('updateAdminStatus', $this->lng->txt('save'));
127  }
128  elseif($this->type == 'tutor')
129  {
130  $this->setSelectAllCheckbox('tutors');
131  // cognos-blu-patch: begin
132  $this->addColumn($this->lng->txt('crs_mem_contact'),'contact');
133  // cognos-blu-patch: end
134  $this->addColumn($this->lng->txt('crs_notification_list_title'), 'notification');
135  $this->addCommandButton('updateTutorStatus', $this->lng->txt('save'));
136  }
137  elseif($this->type == 'member')
138  {
139  $this->setSelectAllCheckbox('members');
140  $this->addColumn($this->lng->txt('crs_blocked'), 'blocked');
141  $this->addCommandButton('updateMemberStatus', $this->lng->txt('save'));
142  }
143  else
144  {
145  $this->setSelectAllCheckbox('roles');
146  $this->addColumn($this->lng->txt('crs_blocked'), 'blocked');
147  $this->addCommandButton('updateRoleStatus', $this->lng->txt('save'));
148 
149  }
150  $this->addColumn($this->lng->txt(''), 'optional');
151 
152  $this->setRowTemplate("tpl.show_participants_row.html", "Modules/Course");
153 
154  if($show_content)
155  {
156  $this->setDefaultOrderField('lastname');
157  $this->enable('sort');
158  $this->enable('header');
159  $this->enable('numinfo');
160  $this->enable('select_all');
161  }
162  else
163  {
164  $this->disable('content');
165  $this->disable('header');
166  $this->disable('footer');
167  $this->disable('numinfo');
168  $this->disable('select_all');
169  }
170 
171  $this->setEnableNumInfo(true);
172  $this->setExternalSegmentation(true);
173 
174  $this->getItems();
175  $this->setTopCommands(true);
176  $this->setEnableHeader(true);
177  $this->setEnableTitle(true);
178  $this->initFilter();
179 
180  $this->setShowRowsSelector(true);
181 
182  include_once "Services/Certificate/classes/class.ilCertificate.php";
183  $this->enable_certificates = ilCertificate::isActive();
184  if($this->enable_certificates)
185  {
186  $this->enable_certificates = ilCertificate::isObjectActive($a_parent_obj->object->getId());
187  }
188  if($this->enable_certificates)
189  {
190  $lng->loadLanguageModule('certificate');
191  }
192  }
193 
197  public function setRoleId($a_role_id)
198  {
199  $this->role_id = $a_role_id;
200  }
201 
206  public function getRoleId()
207  {
208  return $this->role_id;
209  }
210 
211  public function getItems()
212  {
213 
214  }
215 
216 
224  public function fillRow($a_set)
225  {
226  global $ilAccess;
227 
228  $this->tpl->setVariable('VAL_ID', $a_set['usr_id']);
229  $this->tpl->setVariable('VAL_NAME', $a_set['lastname'] . ', ' . $a_set['firstname']);
230 
231  if(!$ilAccess->checkAccessOfUser($a_set['usr_id'], 'read', '', $this->getParentObject()->object->getRefId()) and
232  is_array($info = $ilAccess->getInfo()))
233  {
234  $this->tpl->setCurrentBlock('access_warning');
235  $this->tpl->setVariable('PARENT_ACCESS', $info[0]['text']);
236  $this->tpl->parseCurrentBlock();
237  }
238 
239  if(!ilObjUser::_lookupActive($a_set['usr_id']))
240  {
241  $this->tpl->setCurrentBlock('access_warning');
242  $this->tpl->setVariable('PARENT_ACCESS', $this->lng->txt('usr_account_inactive'));
243  $this->tpl->parseCurrentBlock();
244  }
245 
246 
247  foreach($this->getSelectedColumns() as $field)
248  {
249  switch($field)
250  {
251  case 'gender':
252  $a_set['gender'] = $a_set['gender'] ? $this->lng->txt('gender_' . $a_set['gender']) : '';
253  $this->tpl->setCurrentBlock('custom_fields');
254  $this->tpl->setVariable('VAL_CUST', $a_set[$field]);
255  $this->tpl->parseCurrentBlock();
256  break;
257 
258  case 'birthday':
259  $a_set['birthday'] = $a_set['birthday'] ? ilDatePresentation::formatDate(new ilDate($a_set['birthday'], IL_CAL_DATE)) : $this->lng->txt('no_date');
260  $this->tpl->setCurrentBlock('custom_fields');
261  $this->tpl->setVariable('VAL_CUST', $a_set[$field]);
262  $this->tpl->parseCurrentBlock();
263  break;
264 
265  case 'consultation_hour':
266  $this->tpl->setCurrentBlock('custom_fields');
267  $dts = array();
268  foreach((array) $a_set['consultation_hours'] as $ch)
269  {
271  new ilDateTime($ch['dt'],IL_CAL_UNIX),
272  new ilDateTime($ch['dtend'],IL_CAL_UNIX)
273  );
274  if($ch['explanation'])
275  {
276  $tmp .= ' ' . $ch['explanation'];
277  }
278  $dts[] = $tmp;
279  }
280  $dt_string = implode('<br />', $dts);
281  $this->tpl->setVariable('VAL_CUST',$dt_string);
282  $this->tpl->parseCurrentBlock();
283  break;
284 
285  case 'prtf':
286  $tmp = array();
287  if(is_array($a_set['prtf']))
288  {
289  foreach($a_set['prtf'] as $prtf_url => $prtf_txt)
290  {
291  $tmp[] = '<a href="'.$prtf_url.'">'.$prtf_txt.'</a>';
292  }
293  }
294  $this->tpl->setVariable('VAL_CUST', implode('<br />', $tmp)) ;
295  break;
296 
297 
298  case 'odf_last_update':
299  $this->tpl->setCurrentBlock('custom_fields');
300  $this->tpl->setVariable('VAL_CUST',(string) $a_set['odf_info_txt']);
301  $this->tpl->parseCurrentBlock();
302  break;
303 
304  default:
305  $this->tpl->setCurrentBlock('custom_fields');
306  $this->tpl->setVariable('VAL_CUST', isset($a_set[$field]) ? (string) $a_set[$field] : '');
307  $this->tpl->parseCurrentBlock();
308  break;
309  }
310  }
311 
312  if($this->privacy->enabledCourseAccessTimes())
313  {
314  $this->tpl->setVariable('VAL_ACCESS', $a_set['access_time']);
315  }
316  if($this->show_learning_progress)
317  {
318  $this->tpl->setCurrentBlock('lp');
319  switch($a_set['progress'])
320  {
322  $this->tpl->setVariable('LP_STATUS_ALT', $this->lng->txt($a_set['progress']));
323  $this->tpl->setVariable('LP_STATUS_PATH', ilUtil::getImagePath('scorm/complete.svg'));
324  break;
325 
327  $this->tpl->setVariable('LP_STATUS_ALT', $this->lng->txt($a_set['progress']));
328  $this->tpl->setVariable('LP_STATUS_PATH', ilUtil::getImagePath('scorm/incomplete.svg'));
329  break;
330 
332  $this->tpl->setVariable('LP_STATUS_ALT', $this->lng->txt($a_set['progress']));
333  $this->tpl->setVariable('LP_STATUS_PATH', ilUtil::getImagePath('scorm/not_attempted.svg'));
334  break;
335 
337  $this->tpl->setVariable('LP_STATUS_ALT', $this->lng->txt($a_set['progress']));
338  $this->tpl->setVariable('LP_STATUS_PATH', ilUtil::getImagePath('scorm/failed.svg'));
339  break;
340  }
341  $this->tpl->parseCurrentBlock();
342  }
343  if($this->type == 'admin')
344  {
345  $this->tpl->setVariable('VAL_POSTNAME', 'admins');
346  // cognos-blu-patch: begin
347  $this->tpl->setVariable('VAL_CONTACT_ID',$a_set['usr_id']);
348  $this->tpl->setVariable('VAL_CONTACT_CHECKED',$a_set['contact'] ? 'checked="checked"' : '');
349  // cognos-blu-patch: end
350  $this->tpl->setVariable('VAL_NOTIFICATION_ID', $a_set['usr_id']);
351  $this->tpl->setVariable('VAL_NOTIFICATION_CHECKED', ($a_set['notification'] ? 'checked="checked"' : ''));
352  }
353  elseif($this->type == 'tutor')
354  {
355  $this->tpl->setVariable('VAL_POSTNAME', 'tutors');
356  // cognos-blu-patch: begin
357  $this->tpl->setVariable('VAL_CONTACT_ID',$a_set['usr_id']);
358  $this->tpl->setVariable('VAL_CONTACT_CHECKED',$a_set['contact'] ? 'checked="checked"' : '');
359  // cognos-blu-patch: end
360  $this->tpl->setVariable('VAL_NOTIFICATION_ID', $a_set['usr_id']);
361  $this->tpl->setVariable('VAL_NOTIFICATION_CHECKED', ($a_set['notification'] ? 'checked="checked"' : ''));
362  }
363  elseif($this->type == 'member')
364  {
365  $this->tpl->setCurrentBlock('blocked');
366  $this->tpl->setVariable('VAL_POSTNAME','members');
367  $this->tpl->setVariable('VAL_BLOCKED_ID',$a_set['usr_id']);
368  $this->tpl->setVariable('VAL_BLOCKED_CHECKED',($a_set['blocked'] ? 'checked="checked"' : ''));
369  $this->tpl->parseCurrentBlock();
370  }
371  else
372  {
373  $this->tpl->setCurrentBlock('blocked');
374  $this->tpl->setVariable('VAL_BLOCKED_ID', $a_set['usr_id']);
375  $this->tpl->setVariable('VAL_BLOCKED_CHECKED', ($a_set['blocked'] ? 'checked="checked"' : ''));
376  $this->tpl->parseCurrentBlock();
377 
378  $this->tpl->setVariable('VAL_POSTNAME','roles');
379  }
380 
381  $this->tpl->setVariable('VAL_PASSED_ID',$a_set['usr_id']);
382  $this->tpl->setVariable('VAL_PASSED_CHECKED',($a_set['passed'] ? 'checked="checked"' : ''));
383 
384  if($this->show_lp_status_sync)
385  {
386  $this->tpl->setVariable('PASSED_INFO', $a_set["passed_info"]);
387  }
388 
389  $this->showActionLinks($a_set);
390 
391  if($a_set['passed'] && $this->enable_certificates)
392  {
393  $this->tpl->setCurrentBlock('link');
394  $this->tpl->setVariable('LINK_NAME', $this->ctrl->getLinkTarget($this->parent_obj, 'deliverCertificate'));
395  $this->tpl->setVariable('LINK_TXT', $this->lng->txt('download_certificate'));
396  $this->tpl->parseCurrentBlock();
397  }
398  $this->ctrl->clearParameters($this->parent_obj);
399 
400  if($this->show_timings)
401  {
402  $this->ctrl->setParameterByClass('ilcoursecontentgui', 'member_id', $a_set['usr_id']);
403  $this->tpl->setCurrentBlock('link');
404  $this->tpl->setVariable('LINK_NAME', $this->ctrl->getLinkTargetByClass('ilcoursecontentgui', 'showUserTimings'));
405  $this->tpl->setVariable('LINK_TXT', $this->lng->txt('timings_timings'));
406  $this->tpl->parseCurrentBlock();
407  }
408  }
409 
416  public function parse()
417  {
418  global $rbacreview;
419 
420  $this->determineOffsetAndOrder();
421 
422  include_once './Services/User/classes/class.ilUserQuery.php';
423 
424  $additional_fields = $this->getSelectedColumns();
425  unset($additional_fields["firstname"]);
426  unset($additional_fields["lastname"]);
427  unset($additional_fields["last_login"]);
428  unset($additional_fields["access_until"]);
429  unset($additional_fields['consultation_hour']);
430  unset($additional_fields['prtf']);
431 
432  $udf_ids = $usr_data_fields = $odf_ids = array();
433  foreach($additional_fields as $field)
434  {
435  if(substr($field, 0, 3) == 'udf')
436  {
437  $udf_ids[] = substr($field, 4);
438  continue;
439  }
440  if(substr($field, 0, 3) == 'odf')
441  {
442  $odf_ids[] = substr($field, 4);
443  continue;
444  }
445 
446  $usr_data_fields[] = $field;
447  }
448 
449  $usr_data = ilUserQuery::getUserListData(
450  $this->getOrderField(),
451  $this->getOrderDirection(),
452  $this->getOffset(),
453  $this->getLimit(),
454  '',
455  '',
456  null,
457  false,
458  false,
459  0,
460  $this->getRoleId(),
461  null,
462  $usr_data_fields,
463  $part
464  );
465  foreach((array) $usr_data['set'] as $user)
466  {
467  $usr_ids[] = $user['usr_id'];
468  }
469 
470  // merge course data
471  $course_user_data = $this->getParentObject()->readMemberData($usr_ids,
472  $this->type == 'admin',
473  $this->getSelectedColumns());
474  $a_user_data = array();
475  foreach((array) $usr_data['set'] as $ud)
476  {
477  $user_id = $ud['usr_id'];
478 
479  // #15434
480  if(!$this->checkAcceptance($user_id))
481  {
482  $ud = array();
483  }
484 
485  $a_user_data[$user_id] = array_merge($ud,$course_user_data[$user_id]);
486 
487  if($this->show_lp_status_sync)
488  {
489  // #9912 / #13208
490  $passed_info = "";
491  if($a_user_data[$user_id]["passed_info"])
492  {
493  $pinfo = $a_user_data[$user_id]["passed_info"];
494  if($pinfo["user_id"])
495  {
496  if($pinfo["user_id"] < 0)
497  {
498  $passed_info = $this->lng->txt("crs_passed_status_system");
499  }
500  else if($pinfo["user_id"] > 0)
501  {
502  $name = ilObjUser::_lookupName($pinfo["user_id"]);
503  $passed_info = $this->lng->txt("crs_passed_status_manual_by").": ".$name["login"];
504  }
505  }
506  if($pinfo["timestamp"])
507  {
508  $passed_info .= "<br />".ilDatePresentation::formatDate($pinfo["timestamp"]);
509  }
510  }
511  $a_user_data[$user_id]["passed_info"] = $passed_info;
512  }
513  }
514 
515  // Custom user data fields
516  if($udf_ids)
517  {
518  include_once './Services/User/classes/class.ilUserDefinedData.php';
519  $data = ilUserDefinedData::lookupData($usr_ids, $udf_ids);
520  foreach($data as $usr_id => $fields)
521  {
522  if(!$this->checkAcceptance($usr_id))
523  {
524  continue;
525  }
526 
527  foreach($fields as $field_id => $value)
528  {
529  $a_user_data[$usr_id]['udf_' . $field_id] = $value;
530  }
531  }
532  }
533  // Object specific user data fields
534  if($odf_ids)
535  {
536  include_once './Modules/Course/classes/Export/class.ilCourseUserData.php';
537  $data = ilCourseUserData::_getValuesByObjId($this->getParentObject()->object->getId());
538  foreach($data as $usr_id => $fields)
539  {
540  // #7264: as we get data for all course members filter against user data
541  if(!$this->checkAcceptance($usr_id) || !in_array($usr_id, $usr_ids))
542  {
543  continue;
544  }
545 
546  foreach($fields as $field_id => $value)
547  {
548  $a_user_data[$usr_id]['odf_' . $field_id] = $value;
549  }
550  }
551 
552 
553  // add last edit date
554  include_once './Services/Membership/classes/class.ilObjectCustomUserFieldHistory.php';
555  foreach(ilObjectCustomUserFieldHistory::lookupEntriesByObjectId($this->getParentObject()->object->getId()) as $usr_id => $edit_info)
556  {
557  if(!isset($a_user_data[$usr_id]))
558  {
559  continue;
560  }
561 
562  include_once './Services/PrivacySecurity/classes/class.ilPrivacySettings.php';
563  if($usr_id == $edit_info['update_user'])
564  {
565  $a_user_data[$usr_id]['odf_last_update'] = '';
566  $a_user_data[$usr_id]['odf_info_txt'] = $GLOBALS['lng']->txt('cdf_edited_by_self');
567  if(ilPrivacySettings::_getInstance()->enabledAccessTimesByType($this->getParentObject()->object->getType()))
568  {
569  $a_user_data[$usr_id]['odf_last_update'] .= ('_'.$edit_info['editing_time']->get(IL_CAL_UNIX));
570  $a_user_data[$usr_id]['odf_info_txt'] .= (', '.ilDatePresentation::formatDate($edit_info['editing_time']));
571  }
572  }
573  else
574  {
575  $a_user_data[$usr_id]['odf_last_update'] = $edit_info['update_user'];
576  $a_user_data[$usr_id]['odf_last_update'] .= ('_'.$edit_info['editing_time']->get(IL_CAL_UNIX));
577 
578  $name = ilObjUser::_lookupName($edit_info['update_user']);
579  $a_user_data[$usr_id]['odf_info_txt'] = ($name['firstname'].' '.$name['lastname'].', '.ilDatePresentation::formatDate($edit_info['editing_time']));
580  }
581  }
582  }
583 
584  // consultation hours
585  if($this->isColumnSelected('consultation_hour'))
586  {
587  include_once './Services/Booking/classes/class.ilBookingEntry.php';
588  foreach(ilBookingEntry::lookupManagedBookingsForObject($this->getParentObject()->object->getId(), $GLOBALS['ilUser']->getId()) as $buser => $booking)
589  {
590  if(isset($a_user_data[$buser]))
591  {
592  $a_user_data[$buser]['consultation_hour'] = $booking[0]['dt'];
593  $a_user_data[$buser]['consultation_hour_end'] = $booking[0]['dtend'];
594  $a_user_data[$buser]['consultation_hours'] = $booking;
595  }
596  }
597  }
598  $this->setMaxCount($usr_data['cnt'] ? $usr_data['cnt'] : 0);
599  return $this->setData($a_user_data);
600  }
601 
602 }
603 ?>
showActionLinks($a_set)
show edit links
addCommandButton($a_cmd, $a_text, $a_onclick='', $a_id="", $a_class=null)
Add Command button.
static _lookupName($a_user_id)
lookup user name
initFilter()
Init filter.
setFormName($a_formname)
Set Form name.
static getUserListData($a_order_field, $a_order_dir, $a_offset, $a_limit, $a_string_filter="", $a_activation_filter="", $a_last_login_filter=null, $a_limited_access_filter=false, $a_no_courses_filter=false, $a_course_group_filter=0, $a_role_filter=0, $a_user_folder_filter=null, $a_additional_fields='', $a_user_filter=null, $a_first_letter="")
Get data for user administration list.
setDefaultOrderField($a_defaultorderfield)
Set Default order field.
static lookupManagedBookingsForObject($a_obj_id, $a_usr_id)
Lookup bookings for own and managed consultation hours of an object.
setEnableNumInfo($a_val)
Set enable num info.
static _getValuesByObjId($a_obj_id)
Get values by obj_id (for all users)
const LP_STATUS_NOT_ATTEMPTED
setExternalSegmentation($a_val)
Set external segmentation.
static formatPeriod(ilDateTime $start, ilDateTime $end)
Format a period of two date Shows: 14.
const IL_CAL_UNIX
getOrderDirection()
Get order direction.
getParentObject()
Get parent object.
setId($a_val)
Set id.
const LP_STATUS_IN_PROGRESS
global $ilCtrl
Definition: ilias.php:18
static lookupData($a_user_ids, $a_field_ids)
Lookup data.
$info
Definition: example_052.php:80
static _enabledLearningProgress()
check wether learing progress is enabled or not
setTopCommands($a_val)
Set top commands (display command buttons on top of table, too)
const LP_STATUS_FAILED
Class for single dates.
setRoleId($a_role_id)
Set current role id.
getOffset()
Get offset.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
enable($a_module_name)
enables particular modules of table
static formatDate(ilDateTime $date)
Format a date public.
Date and time handling
getSelectedColumns()
Get selected columns.
setRowTemplate($a_template, $a_template_dir="")
Set row template.
__construct( $a_parent_obj, $a_type='admin', $show_content=true, $a_show_learning_progress=false, $a_show_timings=false, $a_show_edit_link=true, $a_role_id=0, $a_show_lp_status_sync=false)
Constructor.
getSelectableColumns()
Get selectable columns.
_lookupActive($a_usr_id)
Check user account active.
isColumnSelected($a_col)
Is given column selected?
determineOffsetAndOrder($a_omit_offset=false)
Determine offset and order.
static isObjectActive($a_obj_id)
const IL_CAL_DATE
disable($a_module_name)
diesables particular modules of table
global $lng
Definition: privfeed.php:40
setShowRowsSelector($a_value)
Toggle rows-per-page selector.
setEnableHeader($a_enableheader)
Set Enable Header.
checkAcceptance($a_usr_id)
Check acceptance.
getLimit()
Get limit.
static _getInstance()
Get instance of ilPrivacySettings.
$GLOBALS['PHPCAS_CLIENT']
This global variable is used by the interface class phpCAS.
Definition: CAS.php:276
setSelectAllCheckbox($a_select_all_checkbox)
Set the name of the checkbox that should be toggled with a select all button.
setMaxCount($a_max_count)
set max.
setEnableTitle($a_enabletitle)
Set Enable Title.
const LP_STATUS_COMPLETED
addColumn($a_text, $a_sort_field="", $a_width="", $a_is_checkbox_action_column=false, $a_class="", $a_tooltip="", $a_tooltip_with_html=false)
Add a column to the header.
static lookupEntriesByObjectId($a_obj_id)
Get entries by obj_id type $ilDB.