4include_once(
'Services/PrivacySecurity/classes/class.ilPrivacySettings.php');
 
    5include_once(
'Services/Membership/classes/class.ilMemberAgreement.php');
 
    6include_once(
'Modules/Course/classes/Export/class.ilCourseUserData.php');
 
    7include_once(
'Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php');
 
   50        $ilObjDataCache = 
$DIC[
'ilObjDataCache'];
 
   52        $this->ref_id = $a_ref_id;
 
   53        $this->obj_id = $ilObjDataCache->lookupObjId($this->ref_id);
 
   58        $this->lng->loadLanguageModule(
'ps');
 
   73        $next_class = $this->ctrl->getNextClass($this);
 
   74        $cmd = $this->ctrl->getCmd();
 
   76        switch ($next_class) {
 
   78                if (!$cmd or $cmd == 
'view') {
 
   79                    $cmd = 
'showAgreement';
 
  119        $this->tpl->setContent($form->getHTML());
 
  127        include_once 
'./Services/Form/classes/class.ilPropertyFormGUI.php';
 
  129        $form->setTitle($this->lng->txt($this->type . 
'_agreement_header'));
 
  130        $form->setFormAction(
$GLOBALS[
'DIC'][
'ilCtrl']->getFormAction($this));
 
  131        $form->addCommandButton(
'save', $this->lng->txt(
'save'));
 
  136        if ($this->
getPrivacy()->confirmationRequired($this->type)) {
 
  157        include_once(
'Services/PrivacySecurity/classes/class.ilExportFieldsInfo.php');
 
  161        $tpl = 
new ilTemplate(
'tpl.agreement_form.html', 
true, 
true, 
'Services/Membership');
 
  162        $tpl->setVariable(
'TXT_INFO_AGREEMENT', 
$lng->txt(
$a_type . 
'_info_agreement'));
 
  163        foreach ($fields_info->getExportableFields() as $field) {
 
  164            $tpl->setCurrentBlock(
'field_item');
 
  165            $tpl->setVariable(
'FIELD_NAME', 
$lng->txt($field));
 
  166            $tpl->parseCurrentBlock();
 
  171        include_once(
'Services/User/classes/class.ilUserDefinedFields.php');
 
  173            $tpl->setCurrentBlock(
'field_item');
 
  174            $tpl->setVariable(
'FIELD_NAME', $field[
'field_name']);
 
  175            $tpl->parseCurrentBlock();
 
  178        $fields->setHtml(
$tpl->get());
 
  179        $form->addItem($fields);
 
  217        include_once(
'Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php');
 
  218        include_once(
'Modules/Course/classes/Export/class.ilCourseUserData.php');
 
  224        if ($a_mode == 
'user') {
 
  226            $cdf->setValue(
$lng->txt(
$a_type . 
'_ps_cdf_info'));
 
  227            $cdf->setRequired(
true);
 
  230        foreach ($cdf_fields as $field_obj) {
 
  231            switch ($field_obj->getType()) {
 
  234                    if ($field_obj->getValueOptions()) {
 
  237                        if ($field_obj->isRequired()) {
 
  238                            $option_radios->setRequired(
true);
 
  241                        $open_answer_indexes = (array) $field_obj->getValueOptions();
 
  242                        foreach ($field_obj->getValues() as $key => $val) {
 
  243                            $option_radio = 
new ilRadioOption($val, $field_obj->getId() . 
'_' . $key);
 
  246                            if (in_array($key, $open_answer_indexes)) {
 
  247                                $open_answer = 
new ilTextInputGUI(
$lng->txt(
"form_open_answer"), 
'cdf_oa_' . $field_obj->getId() . 
'_' . $key);
 
  248                                $open_answer->setRequired(
true);
 
  249                                $option_radio->addSubItem($open_answer);
 
  252                            $option_radios->addOption($option_radio);
 
  254                        if ($a_mode == 
'user') {
 
  255                            $cdf->addSubItem($option_radios);
 
  257                            $form->addItem($option_radios);
 
  260                        $select = 
new ilSelectInputGUI($field_obj->getName(), 
'cdf_' . $field_obj->getId());
 
  261                        #$select->setValue(ilUtil::stripSlashes($_POST['cdf'][$field_obj->getId()])); 
  262                        $select->setOptions($field_obj->prepareSelectBox());
 
  263                        if ($field_obj->isRequired()) {
 
  264                            $select->setRequired(
true);
 
  266                        if ($a_mode == 
'user') {
 
  267                            $cdf->addSubItem($select);
 
  269                            $form->addItem($select);
 
  275                    $text = 
new ilTextInputGUI($field_obj->getName(), 
'cdf_' . $field_obj->getId());
 
  276                    #$text->setValue(ilUtil::stripSlashes($_POST['cdf'][$field_obj->getId()])); 
  278                    $text->setMaxLength(255);
 
  279                    if ($field_obj->isRequired()) {
 
  280                        $text->setRequired(
true);
 
  282                    if ($a_mode == 
'user') {
 
  283                        $cdf->addSubItem($text);
 
  285                        $form->addItem($text);
 
  290        if ($a_mode == 
'user') {
 
  291            $form->addItem($cdf);
 
  321            include_once 
'./Services/Membership/classes/class.ilObjectCustomUserFieldHistory.php';
 
  323            $history->setUpdateUser(
$ilUser->getId());
 
  327            $this->ctrl->returnToParent($this);
 
  330            $form->setValuesByPost();
 
  335            $form->setValuesByPost();
 
  354            $current_value = $ud[$a_usr_id][$field_obj->getId()];
 
  355            if (!$current_value) {
 
  359            switch ($field_obj->getType()) {
 
  362                    $id = $field_obj->getIdByValue($current_value);
 
  366                        $item->setValue($field_obj->getId() . 
'_' . $id);
 
  369                        $open_answer_indexes = $field_obj->getValueOptions();
 
  370                        $open_answer_index = end($open_answer_indexes);
 
  372                        $item->setValue($field_obj->getId() . 
'_' . $open_answer_index);
 
  373                        $item_txt = $form->
getItemByPostVar(
'cdf_oa_' . $field_obj->getId() . 
'_' . $open_answer_index);
 
  375                            $item_txt->setValue($current_value);
 
  382                    $item->setValue($current_value);
 
  404            switch ($field_obj->getType()) {
 
  408                    list($field_id, $option_id) = explode(
'_', $form->
getInput(
'cdf_' . $field_obj->getId()));
 
  409                    $open_answer_indexes = (array) $field_obj->getValueOptions();
 
  410                    if (in_array($option_id, $open_answer_indexes)) {
 
  411                        $value = $form->
getInput(
'cdf_oa_' . $field_obj->getId() . 
'_' . $option_id);
 
  413                        $value = $field_obj->getValueById($option_id);
 
  418                    $value = $form->
getInput(
'cdf_' . $field_obj->getId());
 
  423            $course_user_data->setValue($value);
 
  424            $course_user_data->update();
 
  441        if (
$_POST[
'agreement']) {
 
  444        if ($this->privacy->confirmationRequired($this->type)) {
 
  465        $this->agreement_required = $this->
getAgreement()->agreementRequired();
 
  476        if ($this->agreement_required) {
 
  477            $message = $this->lng->txt($this->type . 
'_ps_agreement_req_info');
 
  479        if (!$this->required_fullfilled) {
 
  483            $message .= $this->lng->txt($this->type . 
'_ps_required_info');
 
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
An exception for terminatinating execution or to throw for unit testing.
static _getFields($a_container_id, $a_sort=IL_CDF_SORT_NAME)
Get all fields of a container.
static _getValuesByObjId($a_obj_id)
Get values by obj_id (for all users)
static _checkRequired($a_usr_id, $a_obj_id)
Check required fields.
@classDescription Date and time handling
static _getInstanceByType($a_type)
Get Singleton Instance.
static addExportFieldInfo($form, $a_obj_id, $a_type)
Add export field info to form @global type $lng.
static setCourseDefinedFieldValues(ilPropertyFormGUI $form, $a_obj_id, $a_usr_id=0)
static addCustomFields($form, $a_obj_id, $a_type, $a_mode='user')
Add custom course fields.
static addAgreement($form, $a_obj_id, $a_type)
Add agreement to form.
showAgreement(ilPropertyFormGUI $form=null)
Show agreement form.
__construct($a_ref_id)
Constructor.
sendInfoMessage()
Send info message.
getPrivacy()
Get privycy settings.
executeCommand()
Execute Command.
checkAgreement()
Check Agreement.
static saveCourseDefinedFields(ilPropertyFormGUI $form, $a_obj_id, $a_usr_id=0)
Save course defined fields.
This class represents a non editable value in a property form.
Editing history for object custom user fields.
static _lookupType($a_id, $a_reference=false)
lookup object type
static _getInstance()
Get instance of ilPrivacySettings.
This class represents an option in a radio group.
special template class to simplify handling of ITX/PEAR
This class represents a text property in a property form.
static _getInstance()
Get instance.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.