3require_once
"Services/ADT/classes/Bridges/class.ilADTSearchBridgeMulti.php";
17 $this->search_mode = (int) $a_mode;
34 if ($a_adt_def->
getType() ==
"Enum") {
35 $this->multi_source =
false;
37 $def->setNumeric($a_adt_def->isNumeric());
38 $def->setOptions($a_adt_def->getOptions());
41 $this->multi_source =
true;
49 if ($value !==
null) {
50 $this->
getADT()->setSelections($value);
63 $def = $this->
getADT()->getCopyOfDefinition();
65 $options = $def->getOptions();
69 $cbox->setValue($this->
getADT()->getSelections());
71 foreach ($options as $value => $caption) {
73 $cbox->addOption($option);
86 $item->setValue($post);
87 } elseif (array_key_exists($this->
getElementId(), $this->table_filter_fields)) {
88 $this->table_filter_fields[$this->
getElementId()]->setValue($post);
92 if (is_array($post)) {
93 $this->
getADT()->setSelections($post);
96 $this->
getADT()->setSelections();
112 $this->
getADT()->getSelections(),
123 $current = $this->
getADT()->getSelections();
124 if (is_array($current) &&
127 if ($this->search_mode == self::SEARCH_MODE_ANY) {
128 foreach ((array) $a_adt->getSelections() as $value) {
129 if (in_array($value, $current)) {
135 return !(bool)
sizeof(array_diff($current, (array) $a_adt->getSelections()));
147 return serialize($this->
getADT()->getSelections());
153 $a_value = unserialize($a_value);
154 if (is_array($a_value)) {
155 $this->
getADT()->setSelections($a_value);
An exception for terminatinating execution or to throw for unit testing.
ADT definition base class.
getType()
Get type (from class/instance)
isInCondition(ilADT $a_adt)
Compare directly against ADT.
getSerializedValue()
Get current value(s) in serialized form (for easy persisting)
addToForm()
Add ADT-specific fields to form.
getSQLCondition($a_element_id)
Get SQL condition for current value(s)
setSerializedValue($a_value)
Set current value(s) in serialized form (for easy persisting)
convertADTDefinitionToMulti(ilADTDefinition $a_adt_def)
Convert definition to multi version.
isValidADTDefinition(ilADTDefinition $a_adt_def)
Check if given ADT definition is valid.
importFromPost(array $a_post=null)
Import values from (search) form request POST data.
loadFilter()
Load filter value(s) into ADT.
static getInstance()
Get singleton.
readFilter()
Load value(s) from filter store (in session)
extractPostValues(array $a_post=null)
Extract data from (post) values.
addToParentElement(ilFormPropertyGUI $a_field)
Add form field to parent element.
getElementId()
Get element id.
shouldBeImportedFromPost($a_post)
Check if incoming values should be imported at all.
writeFilter($a_value=null)
Write value(s) to filter store (in session)
This class represents an option in a checkbox group.