ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ilADTMultiEnum Class Reference
+ Inheritance diagram for ilADTMultiEnum:
+ Collaboration diagram for ilADTMultiEnum:

Public Member Functions

 getType ()
 Get type (from class/instance) More...
 
 reset ()
 Init property defaults. More...
 
 addSelection (int $value_index)
 
 setSelections (?array $a_values=null)
 
 getSelections ()
 
 isValidOption ($a_value)
 
 equals (ilADT $a_adt)
 Check if given ADT equals self. More...
 
 isLarger (ilADT $a_adt)
 Check if given ADT is larger than self. More...
 
 isSmaller (ilADT $a_adt)
 Check if given ADT is smaller than self. More...
 
 isNull ()
 Is currently null. More...
 
 getCheckSum ()
 Get unique checksum. More...
 
 exportStdClass ()
 Export value as stdClass. More...
 
 importStdClass (?stdClass $a_std)
 Import value from stdClass. More...
 
- Public Member Functions inherited from ilADT
 __construct (ilADTDefinition $a_def)
 
 getType ()
 Get type (from class/instance) More...
 
 reset ()
 Init property defaults. More...
 
 getCopyOfDefinition ()
 Get copy of definition. More...
 
 equals (ilADT $a_adt)
 Check if given ADT equals self. More...
 
 isLarger (ilADT $a_adt)
 Check if given ADT is larger than self. More...
 
 isLargerOrEqual (ilADT $a_adt)
 
 isSmaller (ilADT $a_adt)
 Check if given ADT is smaller than self. More...
 
 isSmallerOrEqual (ilADT $a_adt)
 Check if given ADT is smaller or equal than self. More...
 
 isInbetween (ilADT $a_adt_from, ilADT $a_adt_to)
 Check if self is inbetween given ADTs (exclusive) More...
 
 isInbetweenOrEqual (ilADT $a_adt_from, ilADT $a_adt_to)
 Check if self is inbetween given ADTs (inclusive) More...
 
 isNull ()
 Is currently null. More...
 
 isValid ()
 
 getValidationErrors ()
 Get all validation error codes. More...
 
 translateErrorCode (string $a_code)
 Translate error-code to human-readable message. More...
 
 getCheckSum ()
 Get unique checksum. More...
 
 exportStdClass ()
 Export value as stdClass. More...
 
 importStdClass (?stdClass $a_std)
 Import value from stdClass. More...
 

Protected Member Functions

 isValidDefinition (ilADTDefinition $a_def)
 Check if definition is valid for ADT. More...
 
 handleSelectionValue ($a_value)
 
- Protected Member Functions inherited from ilADT
 isValidDefinition (ilADTDefinition $a_def)
 Check if definition is valid for ADT. More...
 
 setDefinition (ilADTDefinition $a_def)
 Set definition. More...
 
 getDefinition ()
 Get definition. More...
 
 addValidationError (string $a_error_code)
 

Protected Attributes

array $values
 
- Protected Attributes inherited from ilADT
ilADTDefinition $definition
 
ilLanguage $lng
 
array $validation_errors = []
 

Additional Inherited Members

- Data Fields inherited from ilADT
const ADT_VALIDATION_ERROR_NULL_NOT_ALLOWED = "adt1"
 
const ADT_VALIDATION_ERROR_MAX_LENGTH = "adt2"
 
const ADT_VALIDATION_ERROR_MAX_SIZE = "adt3"
 
const ADT_VALIDATION_ERROR_MIN = "adt4"
 
const ADT_VALIDATION_ERROR_MAX = "adt5"
 
const ADT_VALIDATION_DATE = "adt6"
 
const ADT_VALIDATION_ERROR_INVALID_NODE = 'adt7'
 

Detailed Description

Definition at line 21 of file class.ilADTMultiEnum.php.

Member Function Documentation

◆ addSelection()

ilADTMultiEnum::addSelection ( int  $value_index)

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

51 : void
52 {
53 if (!$this->isValidOption($value_index)) {
54 return;
55 }
56 $this->values[] = $value_index;
57 }

References isValidOption().

+ Here is the call graph for this function:

◆ equals()

ilADTMultiEnum::equals ( ilADT  $a_adt)

Check if given ADT equals self.

Parameters
ilADT$a_adt
Returns
bool|null

Reimplemented from ilADT.

Definition at line 91 of file class.ilADTMultiEnum.php.

91 : ?bool
92 {
93 if ($this->getDefinition()->isComparableTo($a_adt)) {
94 return ($this->getCheckSum() === $a_adt->getCheckSum());
95 }
96 return null;
97 }
getCheckSum()
Get unique checksum.
getCheckSum()
Get unique checksum.
getDefinition()
Get definition.

References ilADT\getCheckSum(), getCheckSum(), and ilADT\getDefinition().

+ Here is the call graph for this function:

◆ exportStdClass()

ilADTMultiEnum::exportStdClass ( )

Export value as stdClass.

Returns
stdClass | null

Reimplemented from ilADT.

Definition at line 128 of file class.ilADTMultiEnum.php.

128 : ?stdClass
129 {
130 if (!$this->isNull()) {
131 $obj = new stdClass();
132 $obj->value = (array) $this->getSelections();
133 return $obj;
134 }
135 return null;
136 }
isNull()
Is currently null.

References getSelections(), and isNull().

+ Here is the call graph for this function:

◆ getCheckSum()

ilADTMultiEnum::getCheckSum ( )

Get unique checksum.

Returns
string | null

Reimplemented from ilADT.

Definition at line 116 of file class.ilADTMultiEnum.php.

116 : ?string
117 {
118 if (!$this->isNull()) {
119 $current = $this->getSelections();
120 sort($current);
121 return md5(implode(",", $current));
122 }
123 return null;
124 }

References getSelections(), isNull(), and ILIAS\UI\examples\Symbol\Glyph\Sort\sort().

Referenced by equals().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getSelections()

ilADTMultiEnum::getSelections ( )

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

74 : ?array
75 {
76 return $this->values;
77 }

References $values.

Referenced by exportStdClass(), getCheckSum(), and isNull().

+ Here is the caller graph for this function:

◆ getType()

ilADTMultiEnum::getType ( )

Get type (from class/instance)

Returns
string

Reimplemented from ilADT.

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

25 : string
26 {
27 return "MultiEnum";
28 }

◆ handleSelectionValue()

ilADTMultiEnum::handleSelectionValue (   $a_value)
abstractprotected
Parameters
string | int$a_value
Returns
string|int

Reimplemented in ilADTMultiEnumNumeric, and ilADTMultiEnumText.

Referenced by isValidOption(), and setSelections().

+ Here is the caller graph for this function:

◆ importStdClass()

ilADTMultiEnum::importStdClass ( ?stdClass  $a_std)

Import value from stdClass.

Parameters
stdClass  |  null$a_std

Reimplemented from ilADT.

Definition at line 138 of file class.ilADTMultiEnum.php.

138 : void
139 {
140 if (is_object($a_std)) {
141 $this->setSelections($a_std->value);
142 }
143 }
setSelections(?array $a_values=null)

References setSelections().

+ Here is the call graph for this function:

◆ isLarger()

ilADTMultiEnum::isLarger ( ilADT  $a_adt)

Check if given ADT is larger than self.

Parameters
ilADT$a_adt
Returns
bool

Reimplemented from ilADT.

Definition at line 99 of file class.ilADTMultiEnum.php.

99 : ?bool
100 {
101 return null;
102 }

◆ isNull()

ilADTMultiEnum::isNull ( )

Is currently null.

Returns
bool | null

Reimplemented from ilADT.

Definition at line 111 of file class.ilADTMultiEnum.php.

111 : bool
112 {
113 return $this->getSelections() === null;
114 }

References getSelections().

Referenced by exportStdClass(), and getCheckSum().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isSmaller()

ilADTMultiEnum::isSmaller ( ilADT  $a_adt)

Check if given ADT is smaller than self.

Parameters
ilADT$a_adt
Returns
bool | null

Reimplemented from ilADT.

Definition at line 104 of file class.ilADTMultiEnum.php.

104 : ?bool
105 {
106 return null;
107 }

◆ isValidDefinition()

ilADTMultiEnum::isValidDefinition ( ilADTDefinition  $a_def)
protected

Check if definition is valid for ADT.

Parameters
ilADTDefinition$a_def
Returns
bool

Reimplemented from ilADT.

Definition at line 32 of file class.ilADTMultiEnum.php.

32 : bool
33 {
34 return $a_def instanceof ilADTMultiEnumDefinition;
35 }

◆ isValidOption()

ilADTMultiEnum::isValidOption (   $a_value)
Parameters
string | int$a_value
Returns
bool

Definition at line 83 of file class.ilADTMultiEnum.php.

83 : bool
84 {
85 $a_value = $this->handleSelectionValue($a_value);
86 return array_key_exists($a_value, $this->getDefinition()->getOptions());
87 }
handleSelectionValue($a_value)

References ilADT\getDefinition(), and handleSelectionValue().

Referenced by addSelection(), and setSelections().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ reset()

ilADTMultiEnum::reset ( )

Init property defaults.

Reimplemented from ilADT.

Definition at line 37 of file class.ilADTMultiEnum.php.

37 : void
38 {
39 parent::reset();
40 $this->values = null;
41 }

◆ setSelections()

ilADTMultiEnum::setSelections ( ?array  $a_values = null)

Definition at line 59 of file class.ilADTMultiEnum.php.

59 : void
60 {
61 if ($a_values === null) {
62 return;
63 }
64 $checked_values = [];
65 foreach ($a_values as $value_index) {
66 $clean_value = $this->handleSelectionValue($value_index);
67 if ($this->isValidOption($clean_value)) {
68 $checked_values[] = (int) $clean_value;
69 }
70 }
71 $this->values = count($checked_values) ? $checked_values : null;
72 }

References handleSelectionValue(), ILIAS\Repository\int(), and isValidOption().

Referenced by importStdClass().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Field Documentation

◆ $values

array ilADTMultiEnum::$values
protected

Definition at line 23 of file class.ilADTMultiEnum.php.

Referenced by getSelections().


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