ILIAS  release_8 Revision v8.19
All Data Structures Namespaces Files Functions Variables Modules Pages
ilADTMultiEnumFormBridge Class Reference
+ Inheritance diagram for ilADTMultiEnumFormBridge:
+ Collaboration diagram for ilADTMultiEnumFormBridge:

Public Member Functions

 setOptionInfos (array $a_info=null)
 
 setAutoSort (bool $a_value)
 
 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)
 
 isActiveForSubItems ($a_parent_option=null)
 
- 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...
 

Protected Attributes

array $option_infos = []
 
bool $auto_sort = true
 
- 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

Definition at line 5 of file class.ilADTMultiEnumFormBridge.php.

Member Function Documentation

◆ addToForm()

ilADTMultiEnumFormBridge::addToForm ( )

Definition at line 25 of file class.ilADTMultiEnumFormBridge.php.

References ilADTFormBridge\addBasicFieldProperties(), ilADTFormBridge\addToParentElement(), ilADTFormBridge\getADT(), ilADTFormBridge\getElementId(), and ilADTFormBridge\getTitle().

25  : void
26  {
27  $def = $this->getADT()->getCopyOfDefinition();
28  $options = $def->getOptions();
29 
30  if ($this->auto_sort) {
31  asort($options);
32  }
33 
34  $cbox = new ilCheckboxGroupInputGUI($this->getTitle(), $this->getElementId());
35 
36  foreach ($options as $value => $caption) {
37  $option = new ilCheckboxOption($caption, (string) $value);
38  if (is_array($this->option_infos) && array_key_exists($value, $this->option_infos)) {
39  $option->setInfo($this->option_infos[$value]);
40  }
41  $cbox->addOption($option);
42  }
43 
44  $this->addBasicFieldProperties($cbox, $def);
45 
46  $cbox->setValue($this->getADT()->getSelections());
47 
48  $this->addToParentElement($cbox);
49  }
addToParentElement(ilFormPropertyGUI $a_field)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
addBasicFieldProperties(ilFormPropertyGUI $a_field, ilADTDefinition $a_def)
Helper method to handle generic properties like setRequired(), setInfo()
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
+ Here is the call graph for this function:

◆ importFromPost()

ilADTMultiEnumFormBridge::importFromPost ( )

Definition at line 51 of file class.ilADTMultiEnumFormBridge.php.

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

51  : void
52  {
53  // ilPropertyFormGUI::checkInput() is pre-requisite
54 
55  /*
56  * BT 32161: post value is null when no checkbox is selected,
57  * check whether the corresponding form input really exists, just
58  * to be sure.
59  */
60  if (is_object($this->getForm()->getItemByPostVar($this->getElementId()))) {
61  $this->getADT()->setSelections($this->getForm()->getInput($this->getElementId()) ?? []);
62  }
63 
64  $field = $this->getForm()->getItemByPostVar($this->getElementId());
65  $field->setValue($this->getADT()->getSelections());
66  }
+ Here is the call graph for this function:

◆ isActiveForSubItems()

ilADTMultiEnumFormBridge::isActiveForSubItems (   $a_parent_option = null)
protected

Definition at line 68 of file class.ilADTMultiEnumFormBridge.php.

References ilADTFormBridge\getADT().

68  : bool
69  {
70  $current = $this->getADT()->getSelections();
71  return (is_array($current) && in_array($a_parent_option, $current));
72  }
+ Here is the call graph for this function:

◆ isValidADT()

ilADTMultiEnumFormBridge::isValidADT ( ilADT  $a_adt)
protected

Definition at line 10 of file class.ilADTMultiEnumFormBridge.php.

10  : bool
11  {
12  return ($a_adt instanceof ilADTMultiEnum);
13  }

◆ setAutoSort()

ilADTMultiEnumFormBridge::setAutoSort ( bool  $a_value)

Definition at line 20 of file class.ilADTMultiEnumFormBridge.php.

20  : void
21  {
22  $this->auto_sort = $a_value;
23  }

◆ setOptionInfos()

ilADTMultiEnumFormBridge::setOptionInfos ( array  $a_info = null)

Definition at line 15 of file class.ilADTMultiEnumFormBridge.php.

15  : void
16  {
17  $this->option_infos = $a_info;
18  }

Field Documentation

◆ $auto_sort

bool ilADTMultiEnumFormBridge::$auto_sort = true
protected

Definition at line 8 of file class.ilADTMultiEnumFormBridge.php.

◆ $option_infos

array ilADTMultiEnumFormBridge::$option_infos = []
protected

Definition at line 7 of file class.ilADTMultiEnumFormBridge.php.


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