23 include_once(
'Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php');
24 include_once(
'Services/Membership/classes/class.ilMemberAgreement.php');
64 $this->lng->loadLanguageModule(
'ps');
69 $this->tabs_gui = $ilTabs;
71 $this->obj_id = $a_obj_id;
75 $this->ref_id = end($refs);
88 if(!$ilAccess->checkAccess(
'write',
'',$this->ref_id))
90 $ilErr->raiseError($lng->txt(
'permission_denied'),$ilErr->WARNING);
93 $cmd = $this->ctrl->getCmd();
95 switch($next_class = $this->ctrl->getNextClass($this))
137 $ilToolbar->addButton(
138 $this->lng->txt(
'ps_cdf_add_field'),
139 $this->ctrl->getLinkTarget($this,
'addField')
142 include_once
'./Services/Membership/classes/class.ilObjectCustomUserFieldsTableGUI.php';
145 $this->tpl->setContent($table->getHTML());
155 foreach($fields as $field_obj)
157 $field_obj->enableRequired((
bool) isset(
$_POST[
'required'][$field_obj->getId()]));
158 $field_obj->update();
173 if(!count(
$_POST[
'field_ids']))
179 include_once
'./Services/Utilities/classes/class.ilConfirmationGUI.php';
181 $confirm->setFormAction($this->ctrl->getFormAction($this));
182 $confirm->setHeaderText($this->lng->txt(
'ps_cdf_delete_sure'));
184 foreach(
$_POST[
'field_ids'] as $field_id)
188 $confirm->addItem(
'field_ids[]', $field_id, $tmp_field->getName());
191 $confirm->setConfirm($this->lng->txt(
'delete'),
'deleteFields');
192 $confirm->setCancel($this->lng->txt(
'cancel'),
'listFields');
193 $this->tpl->setContent($confirm->getHTML());
202 foreach((array)
$_POST[
'field_ids'] as $field_id)
205 $tmp_field->delete();
223 $this->form->getItemByPostVar(
'va')->setValues(array(
''));
225 $this->tpl->setContent($this->form->getHTML());
237 if($this->form->checkInput())
240 $udf->setName($this->form->getInput(
'na'));
241 $udf->setType($this->form->getInput(
'ty'));
242 $udf->setValues($udf->prepareValues($this->form->getInput(
'va')));
243 $udf->enableRequired($this->form->getInput(
're'));
252 $this->form->setValuesByPost();
253 $this->tpl->setContent($this->form->getHTML());
273 $this->form->getItemByPostVar(
'na')->setValue($udf->getName());
274 $this->form->getItemByPostVar(
'ty')->setValue($udf->getType());
275 $this->form->getItemByPostVar(
're')->setChecked($udf->isRequired());
276 $this->form->getItemByPostVar(
'va')->setValues($udf->getValues());
277 $this->form->getItemByPostVar(
'va')->setOpenAnswerIndexes($udf->getValueOptions());
279 $this->tpl->setContent($this->form->getHTML());
292 if($this->form->checkInput())
295 $udf->setName($this->form->getInput(
'na'));
296 $udf->setType($this->form->getInput(
'ty'));
297 $prepared = $udf->prepareValues($this->form->getInput(
'va'));
298 $udf->setValues($prepared);
299 $udf->setValueOptions($this->form->getItemByPostVar(
'va')->getOpenAnswerIndexes());
300 $udf->enableRequired($this->form->getInput(
're'));
311 $this->form->setValuesByPost();
312 $this->tpl->setContent($this->form->getHTML());
326 include_once
'./Services/Form/classes/class.ilPropertyFormGUI.php';
327 $this->form =
new ilPropertyFormGUI();
331 case self::MODE_CREATE:
332 $this->form->setFormAction($this->ctrl->getFormAction($this));
333 $this->form->setTitle($this->lng->txt(
'ps_cdf_add_field'));
334 $this->form->addCommandButton(
'saveField', $this->lng->txt(
'save'));
335 $this->form->addCommandButton(
'listFields', $this->lng->txt(
'cancel'));
338 case self::MODE_UPDATE:
339 $this->ctrl->setParameter($this,
'field_id',(
int)
$_REQUEST[
'field_id']);
340 $this->form->setFormAction($this->ctrl->getFormAction($this));
341 $this->form->setTitle($this->lng->txt(
'ps_cdf_edit_field'));
342 $this->form->addCommandButton(
'updateField', $this->lng->txt(
'save'));
343 $this->form->addCommandButton(
'listFields', $this->lng->txt(
'cancel'));
350 $na->setMaxLength(255);
351 $na->setRequired(
true);
352 $this->form->addItem($na);
357 $this->form->addItem($ty);
359 if($a_mode == self::MODE_UPDATE)
361 $ty->setDisabled(
true);
366 $ty->addOption($ty_te);
370 $ty->addOption($ty_se);
373 include_once
'./Services/Form/classes/class.ilSelectBuilderInputGUI.php';
376 $ty_se_mu->setRequired(
true);
377 $ty_se_mu->setSize(32);
378 $ty_se_mu->setMaxLength(128);
379 $ty_se->addSubItem($ty_se_mu);
384 $this->form->addItem($re);