ILIAS  trunk Revision v5.2.0beta1-34115-g3a2438be29
ilAdvancedMDFieldDefinitionSelectMulti Class Reference

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V. More...

+ Inheritance diagram for ilAdvancedMDFieldDefinitionSelectMulti:
+ Collaboration diagram for ilAdvancedMDFieldDefinitionSelectMulti:

Public Member Functions

 getSearchQueryParserValue (ilADTSearchBridge $a_adt_search)
 
 getType ()
 
 importCustomDefinitionFormPostValues (ilPropertyFormGUI $a_form, string $language='')
 
 getValueForXML (ilADT $element)
 
 importValueFromXML (string $a_cdata)
 
 prepareElementForEditor (ilADTFormBridge $a_bridge)
 
- Public Member Functions inherited from ilAdvancedMDFieldDefinitionSelect
 __construct (GenericData $generic_data, string $language='')
 
 getType ()
 
 getSearchQueryParserValue (ilADTSearchBridge $a_adt_search)
 
 getOptionsInDefaultLanguageAsArray ()
 
 getFieldDefinitionForTableGUI (string $content_language)
 
 importCustomDefinitionFormPostValues (ilPropertyFormGUI $a_form, string $language='')
 
 importDefinitionFormPostValuesNeedsConfirmation ()
 
 prepareCustomDefinitionFormConfirmation (ilPropertyFormGUI $a_form)
 
 delete ()
 
 save (bool $a_keep_pos=false)
 
 update ()
 
 importXMLProperty (string $a_key, string $a_value)
 Since the XML import only allows for a key-value pair, we also rely on the order of properties to sort translations into options. More...
 
 getValueForXML (ilADT $element)
 
 importValueFromXML (string $a_cdata)
 
 prepareElementForEditor (ilADTFormBridge $a_bridge)
 
- Public Member Functions inherited from ilAdvancedMDFieldDefinition
 __construct (GenericData $generic_data, string $language='')
 
 getType ()
 Get type. More...
 
 useDefaultLanguageMode (string $language)
 Check if default language mode has to be used: no language given or language equals default language. More...
 
 getTypeTitle ()
 
 getADTDefinition ()
 Get ADT definition instance. More...
 
 getADT ()
 
 getFieldId ()
 Get field_id. More...
 
 setRecordId (int $a_id)
 Set record id. More...
 
 getRecordId ()
 Get record id. More...
 
 setImportId (string $a_id_string)
 Set import id. More...
 
 getImportId ()
 Get import id. More...
 
 setPosition (int $a_pos)
 Set position. More...
 
 getPosition ()
 Get position. More...
 
 setTitle (string $a_title)
 Get title. More...
 
 getTitle ()
 Get title. More...
 
 setDescription (string $a_desc)
 Set description. More...
 
 getDescription ()
 Get description. More...
 
 isSearchSupported ()
 Is search supported at all. More...
 
 isFilterSupported ()
 Is search by filter supported. More...
 
 setSearchable (bool $a_status)
 Toggle searchable. More...
 
 isSearchable ()
 Is searchable. More...
 
 setRequired (bool $a_status)
 Toggle required. More...
 
 isRequired ()
 Is required field. More...
 
 getFieldDefinitionForTableGUI (string $content_language)
 Parse properties for table gui. More...
 
 addToFieldDefinitionForm (ilPropertyFormGUI $a_form, ilAdvancedMDPermissionHelper $a_permissions, string $language='')
 Add input elements to definition form. More...
 
 importCustomDefinitionFormPostValues (ilPropertyFormGUI $a_form, string $language='')
 Import custom post values from definition form. More...
 
 importDefinitionFormPostValues (ilPropertyFormGUI $a_form, ilAdvancedMDPermissionHelper $a_permissions, string $active_language)
 Import post values from definition form. More...
 
 importDefinitionFormPostValuesNeedsConfirmation ()
 
 prepareCustomDefinitionFormConfirmation (ilPropertyFormGUI $a_form)
 
 prepareDefinitionFormConfirmation (ilPropertyFormGUI $a_form)
 
 generateImportId (int $a_field_id)
 Generate unique record id. More...
 
 save (bool $a_keep_pos=false)
 Create new field entry. More...
 
 update ()
 Update field entry. More...
 
 delete ()
 Delete field entry. More...
 
 toXML (ilXmlWriter $a_writer)
 To Xml. More...
 
 importXMLProperty (string $a_key, string $a_value)
 Import property from XML. More...
 
 getValueForXML (ilADT $element)
 Parse ADT value for xml (export) More...
 
 importValueFromXML (string $a_cdata)
 Import value from xml. More...
 
 importFromECS (string $a_ecs_type, $a_value, string $a_sub_id)
 Import meta data from ECS. More...
 
 prepareElementForEditor (ilADTFormBridge $a_bridge)
 Prepare editor form elements. More...
 
 getSearchQueryParserValue (ilADTSearchBridge $a_adt_search)
 Get value for search query parser. More...
 
 getSearchValueSerialized (ilADTSearchBridge $a_adt_search)
 
 setSearchValueSerialized (ilADTSearchBridge $a_adt_search, $a_value)
 Set value from search persistence. More...
 
 searchSubObjects (ilADTSearchBridge $a_adt_search, int $a_obj_id, string $sub_obj_type)
 
 searchObjects (ilADTSearchBridge $a_adt_search, ilQueryParser $a_parser, array $a_object_types, string $a_locate, string $a_search_type)
 Search objects. More...
 
 getLuceneSearchString ($a_value)
 Get search string in lucene syntax. More...
 
 prepareElementForSearch (ilADTSearchBridge $a_bridge)
 Prepare search form elements. More...
 
 _clone (int $a_new_record_id)
 Clone field definition. More...
 
 hasComplexOptions ()
 
 getComplexOptionsOverview (object $a_parent_gui, string $parent_cmd)
 

Protected Member Functions

 initADTDefinition ()
 
- Protected Member Functions inherited from ilAdvancedMDFieldDefinitionSelect
 initADTDefinition ()
 
 options ()
 
 getOptionsInLanguageAsArray (string $language, bool $default_as_fallback=true)
 
 importFieldDefinition (array $a_def)
 
 getFieldDefinition ()
 
 addCustomFieldToDefinitionForm (ilPropertyFormGUI $a_form, bool $a_disabled=false, string $language='')
 
 addCreateOptionsFieldsToDefinitionForm (ilPropertyFormGUI $a_form, bool $a_disabled)
 
 addEditOptionsFieldsToDefinitionForm (SelectSpecificData $options, ilPropertyFormGUI $a_form, bool $a_disabled)
 
 addRadioToEntriesGroup (ilRadioGroupInputGUI $entries, array $position_select_options, ?int $position_value, string $label, string $value, string $id, bool $with_delete_checkbox, bool $disabled)
 Returns hidden inputs if a disabled checkbox is in the radio, such that we can use the workaround for having disabled checkboxes still write to post. More...
 
 addCustomFieldToDefinitionFormInTranslationMode (ilPropertyFormGUI $form, bool $disabled, string $language='')
 
 buildConfirmedObjects (ilPropertyFormGUI $a_form)
 Process custom post values from definition form. More...
 
 importNewSelectOptions (bool $multi, ilPropertyFormGUI $a_form, string $language='')
 
 findBySingleValue (ilADTSearchBridge $a_search, $a_value)
 
 importTranslatedFormPostValues (ilPropertyFormGUI $form, string $language)
 
 deleteOptions ()
 
 updateOptions ()
 
 saveOptions ()
 
 addPropertiesToXML (ilXmlWriter $a_writer)
 
 readOptions ()
 
- Protected Member Functions inherited from ilAdvancedMDFieldDefinition
 initADTDefinition ()
 Init adt instance. More...
 
 setADT (ilADT $a_adt)
 Set ADT instance. More...
 
 importFieldDefinition (array $a_def)
 Import (type-specific) field definition from DB. More...
 
 getFieldDefinition ()
 Get (type-specific) field definition. More...
 
 addCustomFieldToDefinitionForm (ilPropertyFormGUI $a_form, bool $a_disabled=false, string $language='')
 Add custom input elements to definition form. More...
 
 addPropertiesToXML (ilXmlWriter $a_writer)
 Add (type-specific) properties to xml export. More...
 
 parseSearchObjects (array $a_records, array $a_object_types)
 Add object-data needed for global search to AMD search results. More...
 

Protected Attributes

const XML_SEPARATOR = "~|~"
 
- Protected Attributes inherited from ilAdvancedMDFieldDefinitionSelect
array $confirm_objects = []
 
array $confirm_objects_values = []
 
array $confirmed_objects = null
 
array $old_options_array = null
 
SelectSpecificData $options
 
string $default_language
 
- Protected Attributes inherited from ilAdvancedMDFieldDefinition
GenericData $generic_data
 
ilADTDefinition $adt_def = null
 
ilADT $adt = null
 
string $language = ''
 
ilDBInterface $db
 
ilLanguage $lng
 
ilLogger $logger
 
GlobalHttpState $http
 
RefineryFactory $refinery
 

Additional Inherited Members

- Static Public Member Functions inherited from ilAdvancedMDFieldDefinition
static getInstance (?int $a_field_id, ?int $a_type=null, string $language='')
 
static exists (int $a_field_id)
 
static getInstanceByTypeString (string $a_type)
 Get instance by type string (used by import) More...
 
static getInstancesByRecordId ( $a_record_id, $a_only_searchable=false, string $language='')
 Get definitions by record id. More...
 
static getInstancesByObjType ($a_obj_type, $a_active_only=true)
 
static getInstanceByImportId (string $a_import_id)
 
static getSearchableDefinitionIds ()
 Get searchable definition ids (performance is key) More...
 
static getADTGroupForDefinitions (array $a_defs)
 Init ADTGroup for definitions. More...
 
static getValidTypes ()
 Get all valid types. More...
 
static isValidType (int $a_type)
 
- Data Fields inherited from ilAdvancedMDFieldDefinition
const TYPE_SELECT = 1
 TODO: put this in when minimum php version is set to 8.2. More...
 
const TYPE_TEXT = 2
 
const TYPE_DATE = 3
 
const TYPE_DATETIME = 4
 
const TYPE_INTEGER = 5
 
const TYPE_FLOAT = 6
 
const TYPE_LOCATION = 7
 
const TYPE_SELECT_MULTI = 8
 
const TYPE_ADDRESS = 99
 
const TYPE_EXTERNAL_LINK = 9
 
const TYPE_INTERNAL_LINK = 10
 
- Static Protected Member Functions inherited from ilAdvancedMDFieldDefinition
static getInstanceWithData (GenericData $generic_data, string $language='')
 
static getTypeString (int $a_type)
 Get type as string. More...
 

Detailed Description

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V.

ILIAS is licensed with the GPL-3.0, see https://www.gnu.org/licenses/gpl-3.0.en.html You should have received a copy of said license along with the source code, too.

If this is not the case or you just want to try ILIAS, you'll find us at: https://www.ilias.de https://github.com/ILIAS-eLearning AMD field type select

Author
Jörg Lützenkirchen luetz.nosp@m.enki.nosp@m.rchen.nosp@m.@lei.nosp@m.fos.c.nosp@m.om

Definition at line 26 of file class.ilAdvancedMDFieldDefinitionSelectMulti.php.

Member Function Documentation

◆ getSearchQueryParserValue()

ilAdvancedMDFieldDefinitionSelectMulti::getSearchQueryParserValue ( ilADTSearchBridge  $a_adt_search)

Definition at line 30 of file class.ilAdvancedMDFieldDefinitionSelectMulti.php.

30  : string
31  {
32  return (string) $a_adt_search->getADT()->getSelections()[0];
33  }

◆ getType()

ilAdvancedMDFieldDefinitionSelectMulti::getType ( )

Definition at line 35 of file class.ilAdvancedMDFieldDefinitionSelectMulti.php.

35  : int
36  {
37  return self::TYPE_SELECT_MULTI;
38  }

◆ getValueForXML()

ilAdvancedMDFieldDefinitionSelectMulti::getValueForXML ( ilADT  $element)

Definition at line 54 of file class.ilAdvancedMDFieldDefinitionSelectMulti.php.

54  : string
55  {
56  return self::XML_SEPARATOR .
57  implode(self::XML_SEPARATOR, (array) $element->getSelections()) .
58  self::XML_SEPARATOR;
59  }

◆ importCustomDefinitionFormPostValues()

ilAdvancedMDFieldDefinitionSelectMulti::importCustomDefinitionFormPostValues ( ilPropertyFormGUI  $a_form,
string  $language = '' 
)

Definition at line 49 of file class.ilAdvancedMDFieldDefinitionSelectMulti.php.

References ilAdvancedMDFieldDefinition\$language, and ilAdvancedMDFieldDefinitionSelect\importNewSelectOptions().

49  : void
50  {
51  $this->importNewSelectOptions(true, $a_form, $language);
52  }
importNewSelectOptions(bool $multi, ilPropertyFormGUI $a_form, string $language='')
+ Here is the call graph for this function:

◆ importValueFromXML()

ilAdvancedMDFieldDefinitionSelectMulti::importValueFromXML ( string  $a_cdata)

Definition at line 61 of file class.ilAdvancedMDFieldDefinitionSelectMulti.php.

References ilAdvancedMDFieldDefinition\getADT().

61  : void
62  {
63  $this->getADT()->setSelections(explode(self::XML_SEPARATOR, $a_cdata));
64  }
+ Here is the call graph for this function:

◆ initADTDefinition()

ilAdvancedMDFieldDefinitionSelectMulti::initADTDefinition ( )
protected

Definition at line 40 of file class.ilAdvancedMDFieldDefinitionSelectMulti.php.

References ilADTFactory\getInstance(), ilAdvancedMDFieldDefinitionSelect\getOptionsInLanguageAsArray(), and ILIAS\UI\examples\Symbol\Glyph\Language\language().

41  {
42  $def = ilADTFactory::getInstance()->getDefinitionInstanceByType("MultiEnum");
43  $def->setNumeric(false);
44 
45  $def->setOptions($this->getOptionsInLanguageAsArray($this->language));
46  return $def;
47  }
getOptionsInLanguageAsArray(string $language, bool $default_as_fallback=true)
ADT definition base class.
+ Here is the call graph for this function:

◆ prepareElementForEditor()

ilAdvancedMDFieldDefinitionSelectMulti::prepareElementForEditor ( ilADTFormBridge  $a_bridge)

Definition at line 66 of file class.ilAdvancedMDFieldDefinitionSelectMulti.php.

66  : void
67  {
68  assert($a_bridge instanceof ilADTMultiEnumFormBridge);
69 
70  $a_bridge->setAutoSort(false);
71  }

Field Documentation

◆ XML_SEPARATOR

const ilAdvancedMDFieldDefinitionSelectMulti::XML_SEPARATOR = "~|~"
protected

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