24 include_once(
'Services/PrivacySecurity/classes/class.ilPrivacySettings.php');
67 $this->lng->loadLanguageModule(
'crs');
68 $this->lng->loadLanguageModule(
'grp');
69 $this->lng->loadLanguageModule(
'ps');
74 $this->container = $a_container;
75 $this->ref_id = $this->container->getRefId();
126 $this->registration_possible = $a_status;
170 $parent = $tree->getParentId($this->container->getRefId());
172 $message = sprintf($this->lng->txt($this->container->getType().
'_removed_from_waiting_list'),
173 $this->container->getTitle());
176 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id", $parent);
177 $ilCtrl->redirectByClass(
"ilrepositorygui",
"");
231 include_once(
'Modules/Course/classes/class.ilObjCourseGrouping.php');
239 $tpl =
new ilTemplate(
'tpl.membership_limitation_form.html',
true,
true,
'Services/Membership');
240 $tpl->setVariable(
'LIMIT_INTRO',$this->lng->txt($this->type.
'_grp_info_reg'));
248 if($ilAccess->checkAccess(
'visible',
'',$ref_id,$type))
250 include_once(
'./Services/Link/classes/class.ilLink.php');
251 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id", $ref_id);
252 $tpl->setVariable(
'LINK_ITEM',
253 $ilCtrl->getLinkTargetByClass(
"ilrepositorygui",
""));
254 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id",
$_GET[
"ref_id"]);
255 $tpl->setVariable(
'ITEM_LINKED_TITLE',$title);
259 $tpl->setVariable(
'ITEM_TITLE');
261 $tpl->setCurrentBlock(
'items');
263 $tpl->setVariable(
'ALT_ICON',$this->lng->txt(
'obj_'.$type));
264 $tpl->parseCurrentBlock();
272 $mem->setAlert($this->container->getMessage());
275 $this->form->addItem($mem);
293 include_once(
'Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php');
299 $this->lng->loadLanguageModule(
'ps');
301 include_once(
'Services/PrivacySecurity/classes/class.ilExportFieldsInfo.php');
304 if(!count($fields_info->getExportableFields()))
310 $section->setTitle($this->lng->txt(
'usr_agreement'));
313 include_once
'./Services/Membership/classes/class.ilMemberAgreementGUI.php';
320 if($this->privacy->confirmationRequired($this->type))
336 include_once(
'Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php');
337 include_once(
'Modules/Course/classes/Export/class.ilCourseUserData.php');
345 $cdf->
setValue($this->lng->txt($this->type.
'_ps_cdf_info'));
346 $cdf->setRequired(
true);
348 foreach($cdf_fields as $field_obj)
350 $course_user_data =
new ilCourseUserData($ilUser->getId(),$field_obj->getId());
352 switch($field_obj->getType())
355 $select =
new ilSelectInputGUI($field_obj->getName(),
'cdf['.$field_obj->getId().
']');
357 $select->setOptions($field_obj->prepareSelectBox());
358 if($field_obj->isRequired())
360 $select->setRequired(
true);
363 $cdf->addSubItem($select);
369 $text =
new ilTextInputGUI($field_obj->getName(),
'cdf['.$field_obj->getId().
']');
372 $text->setMaxLength(255);
373 if($field_obj->isRequired())
375 $text->setRequired(
true);
377 $cdf->addSubItem($text);
381 $this->form->addItem($cdf);
399 include_once(
'Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php');
400 if(!$this->privacy->confirmationRequired($this->type))
418 $required_fullfilled =
true;
421 switch($field_obj->getType())
426 list($field_id,$option_id) = explode(
'_',
$_POST[
'cdf_'.$field_obj->getId()]);
427 $open_answer_indexes = (array) $field_obj->getValueOptions();
428 if(in_array($option_id, $open_answer_indexes))
430 $value =
$_POST[
'cdf_oa_'.$field_obj->getId()];
434 $value = $field_obj->getValueById($option_id);
439 $value =
$_POST[
'cdf_'.$field_obj->getId()];
443 $GLOBALS[
'ilLog']->write(__METHOD__.
': new value '. $value);
446 $course_user_data =
new ilCourseUserData($ilUser->getId(),$field_obj->getId());
447 $course_user_data->
setValue($value);
448 $course_user_data->update();
450 if($field_obj->isRequired() and !$value)
452 $required_fullfilled =
false;
456 return $required_fullfilled;
469 include_once(
'Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php');
475 include_once(
'Services/Membership/classes/class.ilMemberAgreement.php');
476 $this->agreement =
new ilMemberAgreement($ilUser->getId(),$this->container->getId());
478 $this->agreement->setAcceptanceTime(time());
479 $this->agreement->save();
491 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id",
492 $tree->getParentId($this->container->getRefId()));
493 $ilCtrl->redirectByClass(
"ilrepositorygui",
"");
512 $this->tpl->setContent($this->form->getHTML());
558 if(is_object($this->form))
563 include_once(
'./Services/Form/classes/class.ilPropertyFormGUI.php');
565 $this->form->setFormAction($this->ctrl->getFormAction($this,
'join'));
599 $this->form->addCommandButton(
'join',$this->lng->txt(
'mem_add_to_wl'));
600 $this->form->addCommandButton(
'cancel',$this->lng->txt(
'cancel'));
604 $this->form->addCommandButton(
'join',$this->lng->txt(
'join'));
605 $this->form->addCommandButton(
'cancel',$this->lng->txt(
'cancel'));
610 sprintf($this->lng->txt($this->container->getType().
'_cancel_waiting_list'),
611 $this->container->getTitle())
613 $this->form->addCommandButton(
'leaveWaitingList', $this->lng->txt(
'leave_waiting_list'));
614 $this->form->addCommandButton(
'cancel', $this->lng->txt(
'cancel'));
628 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id",
629 $tree->getParentId($this->container->getRefId()));
630 $ilCtrl->redirectByClass(
"ilrepositorygui",
"");
638 $this->participants->deleteSubscriber($ilUser->getId());
641 $ilCtrl->setParameterByClass(
"ilrepositorygui",
"ref_id",
642 $tree->getParentId($this->container->getRefId()));
643 $ilCtrl->redirectByClass(
"ilrepositorygui",
"");
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
fillAgreement()
Show user agreement.
setValue($a_value)
Set Value.
static addExportFieldInfo($form, $a_obj_id, $a_type)
Add export field info to form type $lng.
cancelSubscriptionRequest()
initForm()
init registration form
getWaitingList()
Get waiting list object.
fillRegistrationPeriod()
show informations about the registration period
fillRegistrationType()
show informations about registration procedure
updateSubscriptionRequest()
Update subscription message.
static _lookupTitle($a_id)
lookup object title
isWaitingListActive()
Check if the waiting list is active Maximum of members exceeded or any user on the waiting list...
getFormTitle()
Get title for property form.
Base class for Course and Group registration.
static getTypeIconPath($a_type, $a_obj_id, $a_size='small')
Get type icon path path Return image path for icon_xxx.pngs Or (if enabled) path to custom icon...
showCustomFields()
Show course defined fields.
setAccepted($a_status)
set accepted
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
validateAgreement()
Check Agreement.
setAccepted($a_status)
Set Agreement accepted.
initWaitingList()
Init waiting list (course or group waiting list)
enableRegistration($a_status)
set registration disabled
static _getInstanceByType($a_type)
Get Singleton Instance.
validate()
validate join request
static _lookupObjId($a_id)
special template class to simplify handling of ITX/PEAR
isRegistrationPossible()
check if registration is possible
static addAgreement($form, $a_obj_id, $a_type)
Add agreement to form.
This class represents a text property in a property form.
static addCustomFields($form, $a_obj_id, $a_type)
Add custom course fields.
validateCustomFields()
Check required course fields.
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static sendQuestion($a_info="", $a_keep=false)
Send Question to Screen.
static _lookupType($a_id, $a_reference=false)
lookup object type
static _hasFields($a_container_id)
Check if there are any define fields.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
_checkGroupingDependencies(&$container_obj, $a_user_id=null)
cancel()
cancel subscription
show()
show registration form
This class represents a non editable value in a property form.
fillMembershipLimitation()
Show membership limitations.
fillInformations()
fill informations
addCommandButtons()
Add command buttons.
_getGroupingItems($container_obj)
Get courses/groups that are assigned to the same membership limitation.
fillMaxMembers()
show informations about the maximum number of user.
__construct($a_container)
Constructor.
static _getInstance()
Get instance of ilPrivacySettings.
getContainer()
Parent object.
initParticipants()
Init participants object (course or group participants)
static _getFields($a_container_id, $a_sort=IL_CDF_SORT_NAME)
Get all fields of a container.