20 include_once(
"./Services/User/classes/class.ilUserDefinedFields.php");
36 $this->
lng = $DIC->language();
37 $this->component_repository = $DIC[
'component.repository'];
38 $this->component_factory = $DIC[
'component.factory'];
43 if (self::$instance) {
44 return self::$instance;
46 return self::$instance =
new self();
60 $types[
$plugin->getDefinitionType()] =
$plugin->getDefinitionTypeName();
71 if ($plugin->getDefinitionType() == $a_type) {
92 bool $changeable =
true,
93 string $a_default_value = null
96 $default_value = $a_default_value ??
'';
98 switch ($definition[
'field_type']) {
101 $definition[
'field_name'],
102 'udf_' . $definition[
'field_id']
105 $fprop->setValue($default_value);
107 $fprop->setMaxLength(255);
108 $fprop->setRequired((
bool) $definition[
'required']);
109 if (!$changeable && (!$definition[
'required'] || $default_value !==
'')) {
110 $fprop->setDisabled(
true);
116 $definition[
'field_name'],
117 'udf_' . $definition[
'field_id']
120 $fprop->setValue($default_value);
121 $fprop->setUseRte(
true);
122 $fprop->setRequired((
bool) $definition[
'required']);
123 if (!$changeable && (!$definition[
'required'] || $default_value !==
'')) {
124 $fprop->setDisabled(
true);
130 $definition[
'field_name'],
131 'udf_' . $definition[
'field_id']
136 $fprop->setOptions($user_defined_fields->fieldValuesToSelectArray($definition[
'field_values']));
137 $fprop->setValue($default_value);
138 $fprop->setRequired((
bool) $definition[
'required']);
139 if (!$changeable && (!$definition[
'required'] || $default_value !==
'')) {
140 $fprop->setDisabled(
true);
147 if ($plugin->getDefinitionType() == $definition[
'field_type']) {
148 $fprop = $plugin->getFormPropertyForDefinition(
Readable part of repository interface to ilComponentDataDB.
ilComponentFactory $component_factory
ilComponentRepository $component_repository
getPluginForType(string $a_type)
Get plugin for udf type.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
getActivePlugins()
Get plugins for fields.
const UDF_TYPE_TEXT
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This class represents a text area property in a property form.
getFormPropertyForDefinition(array $definition, bool $changeable=true, string $a_default_value=null)
Get form property for definition.
static ilCustomUserFieldsHelper $instance