ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
ilRegistrationGUI Class Reference

Base class for Course and Group registration. More...

+ Inheritance diagram for ilRegistrationGUI:
+ Collaboration diagram for ilRegistrationGUI:

Public Member Functions

 __construct ($a_container)
 Constructor. More...
 
 getContainer ()
 Parent object. More...
 
 getRefId ()
 Get ref. More...
 
 cancel ()
 cancel subscription More...
 
 show (ilPropertyFormGUI $form=null)
 show registration form More...
 
 join ()
 join More...
 

Protected Member Functions

 isRegistrationPossible ()
 check if registration is possible More...
 
 enableRegistration ($a_status)
 set registration disabled More...
 
 initParticipants ()
 Init participants object (course or group participants) More...
 
 initWaitingList ()
 Init waiting list (course or group waiting list) More...
 
 isWaitingListActive ()
 Check if the waiting list is active Maximum of members exceeded or any user on the waiting list. More...
 
 getWaitingList ()
 Get waiting list object. More...
 
 leaveWaitingList ()
 
 getFormTitle ()
 Get title for property form. More...
 
 fillInformations ()
 fill informations More...
 
 fillRegistrationPeriod ()
 show informations about the registration period More...
 
 fillMaxMembers ()
 show informations about the maximum number of user. More...
 
 fillRegistrationType ()
 show informations about registration procedure More...
 
 fillMembershipLimitation ()
 Show membership limitations. More...
 
 fillAgreement ()
 Show user agreement. More...
 
 showCustomFields ()
 Show course defined fields. More...
 
 validateAgreement ()
 Check Agreement. More...
 
 validateCustomFields ()
 Check required course fields. More...
 
 setAccepted ($a_status)
 Set Agreement accepted. More...
 
 validate ()
 validate join request More...
 
 initForm ()
 init registration form More...
 
 addCommandButtons ()
 Add command buttons. More...
 
 updateSubscriptionRequest ()
 Update subscription message. More...
 
 cancelSubscriptionRequest ()
 

Protected Attributes

 $privacy = null
 
 $container = null
 
 $ref_id
 
 $obj_id
 
 $participants
 
 $waiting_list = null
 
 $form
 
 $registration_possible = true
 
 $join_error = ''
 
 $tpl
 
 $lng
 
 $ctrl
 

Detailed Description

Base class for Course and Group registration.

Author
Stefan Meyer smeye.nosp@m.r.il.nosp@m.ias@g.nosp@m.mx.d.nosp@m.e
Version
$Id$

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

Constructor & Destructor Documentation

◆ __construct()

ilRegistrationGUI::__construct (   $a_container)

Constructor.

public

Parameters
objectCourse or Group object
Returns

Definition at line 65 of file class.ilRegistrationGUI.php.

References $ilCtrl, $lng, $tpl, ilPrivacySettings\_getInstance(), ilObject\_lookupObjId(), ilObject\_lookupType(), initParticipants(), and initWaitingList().

66  {
67  global $lng,$ilCtrl,$tpl;
68 
69  $this->lng = $lng;
70  $this->lng->loadLanguageModule('crs');
71  $this->lng->loadLanguageModule('grp');
72  $this->lng->loadLanguageModule('ps');
73  $this->lng->loadLanguageModule('membership');
74 
75  $this->ctrl = $ilCtrl;
76  $this->tpl = $tpl;
77 
78  $this->container = $a_container;
79  $this->ref_id = $this->container->getRefId();
80  $this->obj_id = ilObject::_lookupObjId($this->ref_id);
81  $this->type = ilObject::_lookupType($this->obj_id);
82 
83  // Init participants
84  $this->initParticipants();
85 
86  // Init waiting list
87  $this->initWaitingList();
88 
89  $this->privacy = ilPrivacySettings::_getInstance();
90  }
global $ilCtrl
Definition: ilias.php:18
initWaitingList()
Init waiting list (course or group waiting list)
static _lookupObjId($a_id)
static _lookupType($a_id, $a_reference=false)
lookup object type
static _getInstance()
Get instance of ilPrivacySettings.
initParticipants()
Init participants object (course or group participants)
+ Here is the call graph for this function:

Member Function Documentation

◆ addCommandButtons()

ilRegistrationGUI::addCommandButtons ( )
protected

Add command buttons.

Returns

Definition at line 585 of file class.ilRegistrationGUI.php.

References $ilUser, getWaitingList(), isRegistrationPossible(), isWaitingListActive(), and ilUtil\sendQuestion().

Referenced by initForm().

586  {
587  global $ilUser;
588 
589  if ($this->isRegistrationPossible() and $this->isWaitingListActive() and !$this->getWaitingList()->isOnList($ilUser->getId())) {
590  $this->form->addCommandButton('join', $this->lng->txt('mem_add_to_wl'));
591  $this->form->addCommandButton('cancel', $this->lng->txt('cancel'));
592  } elseif ($this->isRegistrationPossible() and !$this->getWaitingList()->isOnList($ilUser->getId())) {
593  $this->form->addCommandButton('join', $this->lng->txt('join'));
594  $this->form->addCommandButton('cancel', $this->lng->txt('cancel'));
595  }
596  if ($this->getWaitingList()->isOnList($ilUser->getId())) {
598  sprintf(
599  $this->lng->txt($this->container->getType() . '_cancel_waiting_list'),
600  $this->container->getTitle()
601  )
602  );
603  $this->form->addCommandButton('leaveWaitingList', $this->lng->txt('leave_waiting_list'));
604  $this->form->addCommandButton('cancel', $this->lng->txt('cancel'));
605  }
606  }
getWaitingList()
Get waiting list object.
isWaitingListActive()
Check if the waiting list is active Maximum of members exceeded or any user on the waiting list...
isRegistrationPossible()
check if registration is possible
$ilUser
Definition: imgupload.php:18
static sendQuestion($a_info="", $a_keep=false)
Send Question to Screen.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cancel()

ilRegistrationGUI::cancel ( )

cancel subscription

public

Definition at line 475 of file class.ilRegistrationGUI.php.

References $ilCtrl.

476  {
477  global $tree, $ilCtrl;
478 
479  $ilCtrl->setParameterByClass(
480  "ilrepositorygui",
481  "ref_id",
482  $tree->getParentId($this->container->getRefId())
483  );
484  $ilCtrl->redirectByClass("ilrepositorygui", "");
485  }
global $ilCtrl
Definition: ilias.php:18

◆ cancelSubscriptionRequest()

ilRegistrationGUI::cancelSubscriptionRequest ( )
protected

Definition at line 626 of file class.ilRegistrationGUI.php.

References $ilCtrl, $ilUser, and ilUtil\sendSuccess().

627  {
628  global $ilUser, $tree, $ilCtrl;
629 
630  $this->participants->deleteSubscriber($ilUser->getId());
631  ilUtil::sendSuccess($this->lng->txt('sub_request_deleted'), true);
632 
633  $ilCtrl->setParameterByClass(
634  "ilrepositorygui",
635  "ref_id",
636  $tree->getParentId($this->container->getRefId())
637  );
638  $ilCtrl->redirectByClass("ilrepositorygui", "");
639  }
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
global $ilCtrl
Definition: ilias.php:18
$ilUser
Definition: imgupload.php:18
+ Here is the call graph for this function:

◆ enableRegistration()

ilRegistrationGUI::enableRegistration (   $a_status)
protected

set registration disabled

protected

Parameters
bool
Returns

Definition at line 128 of file class.ilRegistrationGUI.php.

References initParticipants(), initWaitingList(), and isWaitingListActive().

Referenced by ilCourseRegistrationGUI\fillMaxMembers(), ilGroupRegistrationGUI\fillMaxMembers(), fillMembershipLimitation(), ilCourseRegistrationGUI\fillRegistrationPeriod(), ilGroupRegistrationGUI\fillRegistrationPeriod(), ilGroupRegistrationGUI\fillRegistrationType(), and ilCourseRegistrationGUI\fillRegistrationType().

129  {
130  $this->registration_possible = $a_status;
131  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ fillAgreement()

ilRegistrationGUI::fillAgreement ( )
protected

Show user agreement.

protected

Returns

Definition at line 286 of file class.ilRegistrationGUI.php.

References $ilUser, $section, ilExportFieldsInfo\_getInstanceByType(), ilCourseDefinedFieldDefinition\_hasFields(), ilObject\_lookupType(), ilMemberAgreementGUI\addAgreement(), ilMemberAgreementGUI\addCustomFields(), ilMemberAgreementGUI\addExportFieldInfo(), and isRegistrationPossible().

Referenced by initForm().

287  {
288  global $ilUser;
289 
290  if (!$this->isRegistrationPossible()) {
291  return true;
292  }
293 
294  include_once('Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php');
295  if (!$this->privacy->confirmationRequired($this->type) and !ilCourseDefinedFieldDefinition::_hasFields($this->container->getId())) {
296  return true;
297  }
298 
299  $this->lng->loadLanguageModule('ps');
300 
301  include_once('Services/PrivacySecurity/classes/class.ilExportFieldsInfo.php');
302  $fields_info = ilExportFieldsInfo::_getInstanceByType(ilObject::_lookupType($this->container->getId()));
303 
304  if (!count($fields_info->getExportableFields())) {
305  return true;
306  }
307 
309  $section->setTitle($this->lng->txt($this->type . '_usr_agreement'));
310  $this->form->addItem($section);
311 
312  include_once './Services/Membership/classes/class.ilMemberAgreementGUI.php';
313  ilMemberAgreementGUI::addExportFieldInfo($this->form, $this->obj_id, $this->type);
314 
315 
316  ilMemberAgreementGUI::addCustomFields($this->form, $this->obj_id, $this->type);
317 
318  // Checkbox agreement
319  if ($this->privacy->confirmationRequired($this->type)) {
320  ilMemberAgreementGUI::addAgreement($this->form, $this->obj_id, $this->type);
321  }
322  return true;
323  }
static addExportFieldInfo($form, $a_obj_id, $a_type)
Add export field info to form type $lng.
This class represents a section header in a property form.
static addCustomFields($form, $a_obj_id, $a_type, $a_mode='user')
Add custom course fields.
$section
Definition: Utf8Test.php:83
static _getInstanceByType($a_type)
Get Singleton Instance.
isRegistrationPossible()
check if registration is possible
static addAgreement($form, $a_obj_id, $a_type)
Add agreement to form.
$ilUser
Definition: imgupload.php:18
static _lookupType($a_id, $a_reference=false)
lookup object type
static _hasFields($a_container_id)
Check if there are any define fields.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ fillInformations()

ilRegistrationGUI::fillInformations ( )
abstractprotected

fill informations

protected

Returns

Referenced by initForm(), and leaveWaitingList().

+ Here is the caller graph for this function:

◆ fillMaxMembers()

ilRegistrationGUI::fillMaxMembers ( )
abstractprotected

show informations about the maximum number of user.

protected

Parameters

Referenced by initForm(), and leaveWaitingList().

+ Here is the caller graph for this function:

◆ fillMembershipLimitation()

ilRegistrationGUI::fillMembershipLimitation ( )
protected

Show membership limitations.

protected

Returns

Definition at line 233 of file class.ilRegistrationGUI.php.

References $_GET, $ilCtrl, $obj_id, $ref_id, $title, $tpl, $type, ilObjCourseGrouping\_checkGroupingDependencies(), ilObjCourseGrouping\_getGroupingItems(), ilObject\_getIcon(), ilObject\_lookupObjId(), ilObject\_lookupTitle(), ilObject\_lookupType(), enableRegistration(), and ilCustomInputGUI\setHtml().

Referenced by initForm().

234  {
235  global $ilAccess, $ilCtrl;
236 
237  include_once('Modules/Course/classes/class.ilObjCourseGrouping.php');
238  if (!$items = ilObjCourseGrouping::_getGroupingItems($this->container)) {
239  return true;
240  }
241 
242  $mem = new ilCustomInputGUI($this->lng->txt('groupings'));
243 
244  $tpl = new ilTemplate('tpl.membership_limitation_form.html', true, true, 'Services/Membership');
245  $tpl->setVariable('LIMIT_INTRO', $this->lng->txt($this->type . '_grp_info_reg'));
246 
247  foreach ($items as $ref_id) {
248  $obj_id = ilObject::_lookupObjId($ref_id);
251 
252  if ($ilAccess->checkAccess('visible', '', $ref_id, $type)) {
253  include_once('./Services/Link/classes/class.ilLink.php');
254  $ilCtrl->setParameterByClass("ilrepositorygui", "ref_id", $ref_id);
255  $tpl->setVariable(
256  'LINK_ITEM',
257  $ilCtrl->getLinkTargetByClass("ilrepositorygui", "")
258  );
259  $ilCtrl->setParameterByClass("ilrepositorygui", "ref_id", $_GET["ref_id"]);
260  $tpl->setVariable('ITEM_LINKED_TITLE', $title);
261  } else {
262  $tpl->setVariable('ITEM_TITLE');
263  }
264  $tpl->setCurrentBlock('items');
265  $tpl->setVariable('TYPE_ICON', ilObject::_getIcon($obj_id, 'tiny', $type));
266  $tpl->setVariable('ALT_ICON', $this->lng->txt('obj_' . $type));
267  $tpl->parseCurrentBlock();
268  }
269 
270  $mem->setHtml($tpl->get());
271 
272 
273  if (!ilObjCourseGrouping::_checkGroupingDependencies($this->container)) {
274  $mem->setAlert($this->container->getMessage());
275  $this->enableRegistration(false);
276  }
277  $this->form->addItem($mem);
278  }
static _getIcon( $a_obj_id="", $a_size="big", $a_type="", $a_offline=false)
Get icon for repository item.
setHtml($a_html)
Set Html.
$type
$_GET["client_id"]
static _lookupTitle($a_id)
lookup object title
global $ilCtrl
Definition: ilias.php:18
enableRegistration($a_status)
set registration disabled
static _lookupObjId($a_id)
special template class to simplify handling of ITX/PEAR
static _lookupType($a_id, $a_reference=false)
lookup object type
static _checkGroupingDependencies(&$container_obj, $a_user_id=null)
This class represents a custom property in a property form.
static _getGroupingItems($container_obj)
Get courses/groups that are assigned to the same membership limitation.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ fillRegistrationPeriod()

ilRegistrationGUI::fillRegistrationPeriod ( )
abstractprotected

show informations about the registration period

protected

Referenced by initForm(), and leaveWaitingList().

+ Here is the caller graph for this function:

◆ fillRegistrationType()

ilRegistrationGUI::fillRegistrationType ( )
abstractprotected

show informations about registration procedure

protected

Returns

Referenced by initForm(), and leaveWaitingList().

+ Here is the caller graph for this function:

◆ getContainer()

ilRegistrationGUI::getContainer ( )

Parent object.

Returns
ilObject

Definition at line 96 of file class.ilRegistrationGUI.php.

References $container.

Referenced by ilCourseRegistrationGUI\fillMaxMembers(), and ilGroupRegistrationGUI\fillMaxMembers().

97  {
98  return $this->container;
99  }
+ Here is the caller graph for this function:

◆ getFormTitle()

ilRegistrationGUI::getFormTitle ( )
abstractprotected

Get title for property form.

protected

Returns
string title

Referenced by initForm(), and leaveWaitingList().

+ Here is the caller graph for this function:

◆ getRefId()

ilRegistrationGUI::getRefId ( )

Get ref.

Returns
type

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

References $ref_id.

Referenced by ilCourseRegistrationGUI\executeCommand().

106  {
107  return $this->ref_id;
108  }
+ Here is the caller graph for this function:

◆ getWaitingList()

◆ initForm()

ilRegistrationGUI::initForm ( )
protected

init registration form

protected

Returns

Definition at line 550 of file class.ilRegistrationGUI.php.

References $form, $ilUser, addCommandButtons(), fillAgreement(), fillInformations(), fillMaxMembers(), fillMembershipLimitation(), fillRegistrationPeriod(), fillRegistrationType(), getFormTitle(), and isRegistrationPossible().

Referenced by join(), and show().

551  {
552  global $ilUser;
553 
554  if (is_object($this->form)) {
555  return true;
556  }
557 
558  include_once('./Services/Form/classes/class.ilPropertyFormGUI.php');
559  $this->form = new ilPropertyFormGUI();
560  $this->form->setFormAction($this->ctrl->getFormAction($this, 'join'));
561  $this->form->setTitle($this->getFormTitle());
562 
563  $this->fillInformations();
564  $this->fillMembershipLimitation();
565  if ($this->isRegistrationPossible()) {
566  $this->fillRegistrationPeriod();
567  }
568  if ($this->isRegistrationPossible() || $this->participants->isSubscriber($ilUser->getId())) {
569  $this->fillRegistrationType();
570  }
571  if ($this->isRegistrationPossible()) {
572  $this->fillMaxMembers();
573  }
574  if ($this->isRegistrationPossible()) {
575  $this->fillAgreement();
576  }
577  $this->addCommandButtons();
578  return $this->form;
579  }
fillAgreement()
Show user agreement.
This class represents a property form user interface.
fillRegistrationPeriod()
show informations about the registration period
fillRegistrationType()
show informations about registration procedure
getFormTitle()
Get title for property form.
isRegistrationPossible()
check if registration is possible
$ilUser
Definition: imgupload.php:18
fillMembershipLimitation()
Show membership limitations.
fillInformations()
fill informations
addCommandButtons()
Add command buttons.
fillMaxMembers()
show informations about the maximum number of user.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initParticipants()

ilRegistrationGUI::initParticipants ( )
abstractprotected

Init participants object (course or group participants)

protected

Returns

Referenced by __construct(), and enableRegistration().

+ Here is the caller graph for this function:

◆ initWaitingList()

ilRegistrationGUI::initWaitingList ( )
abstractprotected

Init waiting list (course or group waiting list)

protected

Returns

Referenced by __construct(), and enableRegistration().

+ Here is the caller graph for this function:

◆ isRegistrationPossible()

ilRegistrationGUI::isRegistrationPossible ( )
protected

check if registration is possible

protected

Returns
bool

Definition at line 116 of file class.ilRegistrationGUI.php.

References $registration_possible.

Referenced by ilGroupRegistrationGUI\addCommandButtons(), ilCourseRegistrationGUI\addCommandButtons(), addCommandButtons(), fillAgreement(), initForm(), ilGroupRegistrationGUI\validate(), and ilCourseRegistrationGUI\validate().

117  {
118  return (bool) $this->registration_possible;
119  }
+ Here is the caller graph for this function:

◆ isWaitingListActive()

ilRegistrationGUI::isWaitingListActive ( )
abstractprotected

Check if the waiting list is active Maximum of members exceeded or any user on the waiting list.

Returns

Referenced by addCommandButtons(), and enableRegistration().

+ Here is the caller graph for this function:

◆ join()

ilRegistrationGUI::join ( )

join

public

Parameters

Definition at line 514 of file class.ilRegistrationGUI.php.

References $form, add(), initForm(), ilUtil\sendFailure(), show(), and validate().

515  {
516  $form = $this->initForm();
517 
518  if (!$form->checkInput() || !$this->validate()) {
519  $form->setValuesByPost();
520  if ($this->join_error) {
521  ilUtil::sendFailure($this->join_error);
522  } else {
523  ilUtil::sendFailure($this->lng->txt('err_check_input'));
524  }
525  $this->show($form);
526  return false;
527  }
528 
529  $this->add();
530  }
show(ilPropertyFormGUI $form=null)
show registration form
initForm()
init registration form
add()
Definition: add.php:2
validate()
validate join request
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
+ Here is the call graph for this function:

◆ leaveWaitingList()

ilRegistrationGUI::leaveWaitingList ( )
protected

Definition at line 169 of file class.ilRegistrationGUI.php.

References $ilCtrl, $ilUser, $message, fillInformations(), fillMaxMembers(), fillRegistrationPeriod(), fillRegistrationType(), getFormTitle(), getWaitingList(), and ilUtil\sendSuccess().

170  {
171  global $ilUser,$tree,$ilCtrl;
172 
173  $this->getWaitingList()->removeFromList($ilUser->getId());
174  $parent = $tree->getParentId($this->container->getRefId());
175 
176  $message = sprintf(
177  $this->lng->txt($this->container->getType() . '_removed_from_waiting_list'),
178  $this->container->getTitle()
179  );
181 
182  $ilCtrl->setParameterByClass("ilrepositorygui", "ref_id", $parent);
183  $ilCtrl->redirectByClass("ilrepositorygui", "");
184  }
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
getWaitingList()
Get waiting list object.
global $ilCtrl
Definition: ilias.php:18
catch(Exception $e) $message
$ilUser
Definition: imgupload.php:18
+ Here is the call graph for this function:

◆ setAccepted()

ilRegistrationGUI::setAccepted (   $a_status)
protected

Set Agreement accepted.

private

Parameters
bool

Definition at line 454 of file class.ilRegistrationGUI.php.

References $ilUser, ilCourseDefinedFieldDefinition\_hasFields(), ilMemberAgreement\setAccepted(), and time.

Referenced by ilGroupRegistrationGUI\add(), ilCourseRegistrationGUI\add(), and ilCourseRegistrationGUI\validate().

455  {
456  global $ilUser;
457 
458  include_once('Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php');
459  if (!$this->privacy->confirmationRequired($this->type) and !ilCourseDefinedFieldDefinition::_hasFields($this->container->getId())) {
460  return true;
461  }
462 
463  include_once('Services/Membership/classes/class.ilMemberAgreement.php');
464  $this->agreement = new ilMemberAgreement($ilUser->getId(), $this->container->getId());
465  $this->agreement->setAccepted($a_status);
466  $this->agreement->setAcceptanceTime(time());
467  $this->agreement->save();
468  }
setAccepted($a_status)
set accepted
$ilUser
Definition: imgupload.php:18
static _hasFields($a_container_id)
Check if there are any define fields.
Add data(end) time
Method that wraps PHPs time in order to allow simulations with the workflow.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ show()

ilRegistrationGUI::show ( ilPropertyFormGUI  $form = null)

show registration form

public

Parameters

Definition at line 494 of file class.ilRegistrationGUI.php.

References $_SESSION, $form, initForm(), and ilUtil\sendInfo().

Referenced by ilCourseRegistrationGUI\add(), and join().

495  {
496  if (!$form instanceof ilPropertyFormGUI) {
497  $this->initForm();
498  }
499 
500  if ($_SESSION["pending_goto"]) {
501  ilUtil::sendInfo($this->lng->txt("reg_goto_parent_membership_info"));
502  }
503 
504  $this->tpl->setContent($this->form->getHTML());
505  }
$_SESSION["AccountId"]
This class represents a property form user interface.
initForm()
init registration form
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ showCustomFields()

ilRegistrationGUI::showCustomFields ( )
protected

Show course defined fields.

protected

Definition at line 330 of file class.ilRegistrationGUI.php.

References $_POST, $ilUser, $text, ilCourseDefinedFieldDefinition\_getFields(), IL_CDF_TYPE_SELECT, IL_CDF_TYPE_TEXT, ilSelectInputGUI\setValue(), ilNonEditableValueGUI\setValue(), and ilUtil\stripSlashes().

331  {
332  global $ilUser;
333 
334  include_once('Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php');
335  include_once('Modules/Course/classes/Export/class.ilCourseUserData.php');
336 
337  if (!count($cdf_fields = ilCourseDefinedFieldDefinition::_getFields($this->container->getId()))) {
338  return true;
339  }
340 
341  $cdf = new ilNonEditableValueGUI($this->lng->txt('ps_crs_user_fields'));
342  $cdf->setValue($this->lng->txt($this->type . '_ps_cdf_info'));
343  $cdf->setRequired(true);
344 
345  foreach ($cdf_fields as $field_obj) {
346  $course_user_data = new ilCourseUserData($ilUser->getId(), $field_obj->getId());
347 
348  switch ($field_obj->getType()) {
349  case IL_CDF_TYPE_SELECT:
350  $select = new ilSelectInputGUI($field_obj->getName(), 'cdf[' . $field_obj->getId() . ']');
351  $select->setValue(ilUtil::stripSlashes($_POST['cdf'][$field_obj->getId()]));
352  $select->setOptions($field_obj->prepareSelectBox());
353  if ($field_obj->isRequired()) {
354  $select->setRequired(true);
355  }
356 
357  $cdf->addSubItem($select);
358 
359 
360  break;
361 
362  case IL_CDF_TYPE_TEXT:
363  $text = new ilTextInputGUI($field_obj->getName(), 'cdf[' . $field_obj->getId() . ']');
364  $text->setValue(ilUtil::stripSlashes($_POST['cdf'][$field_obj->getId()]));
365  $text->setSize(32);
366  $text->setMaxLength(255);
367  if ($field_obj->isRequired()) {
368  $text->setRequired(true);
369  }
370  $cdf->addSubItem($text);
371  break;
372  }
373  }
374  $this->form->addItem($cdf);
375  return true;
376  }
This class represents a selection list property in a property form.
setValue($a_value)
Set Value.
$text
Definition: errorreport.php:18
This class represents a text property in a property form.
$ilUser
Definition: imgupload.php:18
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
This class represents a non editable value in a property form.
$_POST["username"]
static _getFields($a_container_id, $a_sort=IL_CDF_SORT_NAME)
Get all fields of a container.
+ Here is the call graph for this function:

◆ updateSubscriptionRequest()

ilRegistrationGUI::updateSubscriptionRequest ( )
protected

Update subscription message.

Returns
void

Definition at line 612 of file class.ilRegistrationGUI.php.

References $_POST, $ilCtrl, $ilUser, ilUtil\sendSuccess(), and ilUtil\stripSlashes().

613  {
614  global $ilUser, $tree, $ilCtrl;
615 
616  $this->participants->updateSubject($ilUser->getId(), ilUtil::stripSlashes($_POST['subject']));
617  ilUtil::sendSuccess($this->lng->txt('sub_request_saved'), true);
618  $ilCtrl->setParameterByClass(
619  "ilrepositorygui",
620  "ref_id",
621  $tree->getParentId($this->container->getRefId())
622  );
623  $ilCtrl->redirectByClass("ilrepositorygui", "");
624  }
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
global $ilCtrl
Definition: ilias.php:18
$ilUser
Definition: imgupload.php:18
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
$_POST["username"]
+ Here is the call graph for this function:

◆ validate()

ilRegistrationGUI::validate ( )
protected

validate join request

protected

Returns
bool

Definition at line 539 of file class.ilRegistrationGUI.php.

Referenced by join().

540  {
541  return true;
542  }
+ Here is the caller graph for this function:

◆ validateAgreement()

ilRegistrationGUI::validateAgreement ( )
protected

Check Agreement.

protected

Definition at line 384 of file class.ilRegistrationGUI.php.

References $_POST, and $ilUser.

Referenced by ilGroupRegistrationGUI\validate(), and ilCourseRegistrationGUI\validate().

385  {
386  global $ilUser;
387 
388  if ($_POST['agreement']) {
389  return true;
390  }
391  include_once('Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php');
392  if (!$this->privacy->confirmationRequired($this->type)) {
393  return true;
394  }
395  return false;
396  }
$ilUser
Definition: imgupload.php:18
$_POST["username"]
+ Here is the caller graph for this function:

◆ validateCustomFields()

ilRegistrationGUI::validateCustomFields ( )
protected

Check required course fields.

protected

Definition at line 404 of file class.ilRegistrationGUI.php.

References $_POST, $GLOBALS, $ilUser, ilCourseDefinedFieldDefinition\_getFields(), array, IL_CDF_TYPE_SELECT, IL_CDF_TYPE_TEXT, and ilCourseUserData\setValue().

Referenced by ilGroupRegistrationGUI\validate(), and ilCourseRegistrationGUI\validate().

405  {
406  global $ilUser;
407 
408 
409  $required_fullfilled = true;
410  foreach (ilCourseDefinedFieldDefinition::_getFields($this->container->getId()) as $field_obj) {
411  switch ($field_obj->getType()) {
412  case IL_CDF_TYPE_SELECT:
413 
414  // Split value id from post
415  list($field_id, $option_id) = explode('_', $_POST['cdf_' . $field_obj->getId()]);
416 
417  #$GLOBALS['ilLog']->write(__METHOD__.': '.print_r($field_id,TRUE).' '.print_r($option_id,TRUE).' '.print_r($_POST,TRUE));
418 
419  $open_answer_indexes = (array) $field_obj->getValueOptions();
420  if (in_array($option_id, $open_answer_indexes)) {
421  $value = $_POST['cdf_oa_' . $field_obj->getId() . '_' . $option_id];
422  } else {
423  $value = $field_obj->getValueById($option_id);
424  }
425  break;
426 
427  case IL_CDF_TYPE_TEXT:
428  $value = $_POST['cdf_' . $field_obj->getId()];
429  break;
430  }
431 
432  $GLOBALS['ilLog']->write(__METHOD__ . ': new value ' . $value);
433 
434 
435  $course_user_data = new ilCourseUserData($ilUser->getId(), $field_obj->getId());
436  $course_user_data->setValue($value);
437  $course_user_data->update();
438 
439  // #14220
440  if ($field_obj->isRequired() and $value == "") {
441  $required_fullfilled = false;
442  }
443  }
444 
445  return $required_fullfilled;
446  }
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
$ilUser
Definition: imgupload.php:18
Create styles array
The data for the language used.
$_POST["username"]
static _getFields($a_container_id, $a_sort=IL_CDF_SORT_NAME)
Get all fields of a container.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Field Documentation

◆ $container

ilRegistrationGUI::$container = null
protected

Definition at line 39 of file class.ilRegistrationGUI.php.

Referenced by getContainer().

◆ $ctrl

ilRegistrationGUI::$ctrl
protected

Definition at line 56 of file class.ilRegistrationGUI.php.

◆ $form

ilRegistrationGUI::$form
protected

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

Referenced by initForm(), join(), and show().

◆ $join_error

ilRegistrationGUI::$join_error = ''
protected

Definition at line 51 of file class.ilRegistrationGUI.php.

◆ $lng

ilRegistrationGUI::$lng
protected

Definition at line 55 of file class.ilRegistrationGUI.php.

Referenced by __construct(), and ilGroupRegistrationGUI\add().

◆ $obj_id

ilRegistrationGUI::$obj_id
protected

Definition at line 41 of file class.ilRegistrationGUI.php.

Referenced by fillMembershipLimitation().

◆ $participants

ilRegistrationGUI::$participants
protected

Definition at line 46 of file class.ilRegistrationGUI.php.

◆ $privacy

ilRegistrationGUI::$privacy = null
protected

Definition at line 37 of file class.ilRegistrationGUI.php.

◆ $ref_id

ilRegistrationGUI::$ref_id
protected

Definition at line 40 of file class.ilRegistrationGUI.php.

Referenced by fillMembershipLimitation(), and getRefId().

◆ $registration_possible

ilRegistrationGUI::$registration_possible = true
protected

Definition at line 50 of file class.ilRegistrationGUI.php.

Referenced by isRegistrationPossible().

◆ $tpl

◆ $waiting_list


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