ILIAS  release_9 Revision v9.13-25-g2c18ec4c24f
ilADTLocalizedTextFormBridge Class Reference

Class ilADTLocalizedTextDBBridge. More...

+ Inheritance diagram for ilADTLocalizedTextFormBridge:
+ Collaboration diagram for ilADTLocalizedTextFormBridge:

Public Member Functions

 addToForm ()
 
 importFromPost ()
 
- Public Member Functions inherited from ilADTTextFormBridge
 __construct (ilADT $a_adt)
 
 setMulti (bool $a_value, ?int $a_cols=null, ?int $a_rows=null)
 
 isMulti ()
 
 addToForm ()
 
 importFromPost ()
 
- Public Member Functions inherited from ilADTFormBridge
 __construct (ilADT $a_adt)
 
 getADT ()
 
 setForm (ilPropertyFormGUI $a_form)
 
 getForm ()
 
 setElementId (string $a_value)
 Set element id (aka form field) More...
 
 getElementId ()
 
 setTitle (string $a_value)
 
 getTitle ()
 
 setInfo (string $a_value)
 
 getInfo ()
 
 setParentElement ($a_value)
 
 getParentElement ()
 Get parent element. More...
 
 setDisabled (bool $a_value)
 
 isDisabled ()
 
 setRequired (bool $a_value)
 
 isRequired ()
 
 addToForm ()
 Add ADT-specific fields to form. More...
 
 addJS (ilGlobalTemplateInterface $a_tpl)
 Add ADT-specific JS-files to template. More...
 
 shouldBeImportedFromPost (ilADTFormBridge $a_parent_adt=null)
 Check if incoming values should be imported at all. More...
 
 importFromPost ()
 Import values from form request POST data. More...
 
 validate ()
 
 setExternalErrors (array $a_errors)
 

Protected Member Functions

 isValidADT (ilADT $a_adt)
 
- Protected Member Functions inherited from ilADTTextFormBridge
 isValidADT (ilADT $a_adt)
 
 addElementToForm (string $title, string $element_id, string $value, bool $is_translation=false, string $language='')
 
- Protected Member Functions inherited from ilADTFormBridge
 isValidADT (ilADT $a_adt)
 
 setADT (ilADT $a_adt)
 
 addBasicFieldProperties (ilFormPropertyGUI $a_field, ilADTDefinition $a_def)
 Helper method to handle generic properties like setRequired(), setInfo() More...
 
 findParentElementInForm ()
 
 addToParentElement (ilFormPropertyGUI $a_field)
 
 isActiveForSubItems ($a_parent_option=null)
 Check if element is currently active for subitem(s) More...
 

Additional Inherited Members

- Protected Attributes inherited from ilADTTextFormBridge
bool $multi = false
 
int $multi_rows
 
int $multi_cols
 
- Protected Attributes inherited from ilADTFormBridge
ilADT $adt
 
ilPropertyFormGUI $form
 
 $parent
 
string $id = null
 
string $title = ''
 
string $info = ''
 
 $parent_element
 
bool $required = false
 
bool $disabled = false
 
ilLanguage $lng
 

Detailed Description

Member Function Documentation

◆ addToForm()

ilADTLocalizedTextFormBridge::addToForm ( )

Definition at line 24 of file class.ilADTLocalizedTextFormBridge.php.

References ilADTTextFormBridge\addElementToForm(), ilADTFormBridge\getADT(), ilADTFormBridge\getElementId(), and ilADTFormBridge\getTitle().

24  : void
25  {
26  $active_languages = $this->getADT()->getCopyOfDefinition()->getActiveLanguages();
27  $multilingual_value_support = $this->getADT()->getCopyOfDefinition()->getMultilingualValueSupport();
28 
29  if (
30  !count($active_languages) ||
31  !$multilingual_value_support
32  ) {
33 
34  $languages = $this->getADT()->getTranslations();
35  $text = $languages[$this->getADT()->getCopyOfDefinition()->getDefaultLanguage()] ?? '';
36  $this->addElementToForm(
37  $this->getTitle(),
38  $this->getElementId() . '_' . $this->getADT()->getCopyOfDefinition()->getDefaultLanguage(),
39  $text,
40  false,
41  ''
42  );
43  return;
44  }
45  $is_translation = null;
46  foreach ($active_languages as $active_language) {
47  if (strcmp($active_language, $this->getADT()->getCopyOfDefinition()->getDefaultLanguage()) === 0) {
48  $is_translation = false;
49  } else {
50  $is_translation = true;
51  }
52 
53  $languages = $this->getADT()->getTranslations();
54 
55  $text = '';
56 
57  if (array_key_exists($active_language, $languages)) {
58  $text = $languages[$active_language];
59  }
60 
61  $this->addElementToForm(
62  $this->getTitle(),
63  $this->getElementId() . '_' . $active_language,
64  $text,
65  $is_translation,
66  $active_language
67  );
68  }
69  }
addElementToForm(string $title, string $element_id, string $value, bool $is_translation=false, string $language='')
+ Here is the call graph for this function:

◆ importFromPost()

ilADTLocalizedTextFormBridge::importFromPost ( )

Definition at line 74 of file class.ilADTLocalizedTextFormBridge.php.

References ilADTFormBridge\getADT(), ilADTFormBridge\getElementId(), and ilADTFormBridge\getForm().

74  : void
75  {
76  $multilingual_value_support = $this->getADT()->getCopyOfDefinition()->getMultilingualValueSupport();
77  if (
78  !$this->getADT()->getCopyOfDefinition()->supportsTranslations() ||
79  !$multilingual_value_support
80  ) {
81  $language = $this->getADT()->getCopyOfDefinition()->getDefaultLanguage();
82  $this->getADT()->setTranslation(
83  $language,
84  $this->getForm()->getInput($this->getElementId() . '_' . $language)
85  );
86  $this->getADT()->setText($this->getForm()->getInput($this->getElementId() . '_' . $language));
87  $input_item = $this->getForm()->getItemByPostVar($this->getElementId() . '_' . $language);
88  $input_item->setValue($this->getADT()->getTextForLanguage($language));
89  return;
90  }
91  $active_languages = $this->getADT()->getCopyOfDefinition()->getActiveLanguages();
92  foreach ($active_languages as $language) {
93  $this->getADT()->setTranslation(
94  $language,
95  $this->getForm()->getInput($this->getElementId() . '_' . $language)
96  );
97  $this->getADT()->setText($this->getForm()->getInput($this->getElementId() . '_' . $language));
98  $input_item = $this->getForm()->getItemByPostVar($this->getElementId() . '_' . $language);
99  $input_item->setValue((string) $this->getADT()->getTranslations()[$language]);
100  }
101  }
+ Here is the call graph for this function:

◆ isValidADT()

ilADTLocalizedTextFormBridge::isValidADT ( ilADT  $a_adt)
protected

Definition at line 16 of file class.ilADTLocalizedTextFormBridge.php.

16  : bool
17  {
18  return $a_adt instanceof ilADTLocalizedText;
19  }
Class ilADTLocalizedText.

The documentation for this class was generated from the following file: