/** * Add input elements to definition form * * @param ilPropertyFormGUI $a_form * @param ilAdvancedMDPermissionHelper $a_form */ public function addToFieldDefinitionForm(ilPropertyFormGUI $a_form, ilAdvancedMDPermissionHelper $a_permissions) { global $lng; $perm = $a_permissions->hasPermissions(ilAdvancedMDPermissionHelper::CONTEXT_FIELD, $this->getFieldId(), array(array(ilAdvancedMDPermissionHelper::ACTION_FIELD_EDIT_PROPERTY, ilAdvancedMDPermissionHelper::SUBACTION_FIELD_TITLE), array(ilAdvancedMDPermissionHelper::ACTION_FIELD_EDIT_PROPERTY, ilAdvancedMDPermissionHelper::SUBACTION_FIELD_DESCRIPTION), array(ilAdvancedMDPermissionHelper::ACTION_FIELD_EDIT_PROPERTY, ilAdvancedMDPermissionHelper::SUBACTION_FIELD_SEARCHABLE), array(ilAdvancedMDPermissionHelper::ACTION_FIELD_EDIT_PROPERTY, ilAdvancedMDPermissionHelper::SUBACTION_FIELD_PROPERTIES))); // title $title = new ilTextInputGUI($lng->txt('title'), 'title'); $title->setValue($this->getTitle()); $title->setSize(20); $title->setMaxLength(70); $title->setRequired(true); $a_form->addItem($title); if (!$perm[ilAdvancedMDPermissionHelper::ACTION_FIELD_EDIT_PROPERTY][ilAdvancedMDPermissionHelper::SUBACTION_FIELD_TITLE]) { $title->setDisabled(true); } // desc $desc = new ilTextAreaInputGUI($lng->txt('description'), 'description'); $desc->setValue($this->getDescription()); $desc->setRows(3); $desc->setCols(50); $a_form->addItem($desc); if (!$perm[ilAdvancedMDPermissionHelper::ACTION_FIELD_EDIT_PROPERTY][ilAdvancedMDPermissionHelper::SUBACTION_FIELD_DESCRIPTION]) { $desc->setDisabled(true); } // searchable $check = new ilCheckboxInputGUI($lng->txt('md_adv_searchable'), 'searchable'); $check->setChecked($this->isSearchable()); $check->setValue(1); $a_form->addItem($check); if (!$perm[ilAdvancedMDPermissionHelper::ACTION_FIELD_EDIT_PROPERTY][ilAdvancedMDPermissionHelper::SUBACTION_FIELD_SEARCHABLE]) { $check->setDisabled(true); } /* required $check = new ilCheckboxInputGUI($lng->txt('md_adv_required'), 'required'); $check->setChecked($this->isRequired()); $check->setValue(1); $a_form->addItem($check); */ $this->addCustomFieldToDefinitionForm($a_form, !$perm[ilAdvancedMDPermissionHelper::ACTION_FIELD_EDIT_PROPERTY][ilAdvancedMDPermissionHelper::SUBACTION_FIELD_PROPERTIES]); }