ILIAS
release_8 Revision v8.19
◀ ilDoc Overview
Main Page
Related Pages
Modules
+
Namespaces
Namespace List
+
Namespace Members
+
All
$
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
x
+
Functions
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
+
Variables
$
a
b
c
d
e
f
g
h
j
l
m
p
s
t
u
+
Data Structures
Data Structures
Data Structure Index
Class Hierarchy
+
Data Fields
+
All
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Ö
+
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Variables
$
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Ö
+
Files
File List
+
Globals
+
All
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
z
+
Functions
_
a
b
c
d
e
g
h
i
m
n
p
r
s
t
u
v
x
+
Variables
$
a
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
z
Examples
•
All
Data Structures
Namespaces
Files
Functions
Variables
Modules
Pages
class.ilADTMultiText.php
Go to the documentation of this file.
1
<?php
2
3
declare(strict_types=1);
4
5
class
ilADTMultiText
extends
ilADT
6
{
7
protected
?array
$values
;
8
9
protected
function
isValidDefinition
(
ilADTDefinition
$a_def): bool
10
{
11
return
$a_def instanceof
ilADTMultiTextDefinition
;
12
}
13
14
public
function
reset
(): void
15
{
16
parent::reset();
17
$this->values = null;
18
}
19
20
// properties
21
22
public
function
setTextElements
(?array $a_values = null): void
23
{
24
if
(is_array($a_values)) {
25
if
(count($a_values)) {
26
foreach
($a_values as $idx => $element) {
27
$a_values[$idx] = trim($element);
28
if
(!$a_values[$idx]) {
29
unset($a_values[$idx]);
30
}
31
}
32
$a_values = array_unique($a_values);
33
}
34
if
(!count($a_values)) {
35
$a_values = null;
36
}
37
}
38
$this->values = $a_values;
39
}
40
41
public
function
getTextElements
(): ?array
42
{
43
return
$this->values
;
44
}
45
46
// comparison
47
48
public
function
equals
(
ilADT
$a_adt): ?bool
49
{
50
if
($this->
getDefinition
()->isComparableTo($a_adt)) {
51
return
($this->
getCheckSum
() == $a_adt->
getCheckSum
());
52
}
53
return
null;
54
}
55
56
public
function
isLarger
(
ilADT
$a_adt): ?bool
57
{
58
return
null;
59
}
60
61
public
function
isSmaller
(
ilADT
$a_adt): ?bool
62
{
63
return
null;
64
}
65
66
67
// null
68
72
public
function
isNull
(): bool
73
{
74
$all = $this->
getTextElements
();
75
return
(!is_array($all) || !count($all));
76
}
77
78
// validation
79
80
public
function
isValid
(): bool
81
{
82
$valid
= parent::isValid();
83
if
(!$this->
isNull
()) {
84
$max_size = $this->
getDefinition
()->getMaxSize();
85
if
($max_size && $max_size < count((array) $this->
getTextElements
())) {
86
$valid
=
false
;
87
$this->
addValidationError
(self::ADT_VALIDATION_ERROR_MAX_SIZE);
88
}
89
90
$max_len = $this->
getDefinition
()->getMaxLength();
91
if
($max_len) {
92
foreach
((array) $this->
getTextElements
() as $element) {
93
if
($max_len < strlen($element)) {
94
$valid
=
false
;
95
$this->
addValidationError
(self::ADT_VALIDATION_ERROR_MAX_LENGTH);
96
}
97
}
98
}
99
}
100
return
$valid
;
101
}
102
103
public
function
getCheckSum
(): ?string
104
{
105
if
(!$this->
isNull
()) {
106
$elements = $this->
getTextElements
();
107
sort($elements);
108
return
md5(implode(
""
, $elements));
109
}
110
return
null;
111
}
112
113
// stdClass
114
115
public
function
exportStdClass
(): ?
stdClass
116
{
117
if
(!$this->
isNull
()) {
118
$obj =
new
stdClass
();
119
$obj->value = $this->
getTextElements
();
120
return
$obj;
121
}
122
return
null;
123
}
124
125
public
function
importStdClass
(?
stdClass
$a_std): void
126
{
127
if
(is_object($a_std)) {
128
$this->
setTextElements
($a_std->value);
129
}
130
}
131
}
ilADTMultiText\$values
array $values
Definition:
class.ilADTMultiText.php:7
ilADT\addValidationError
addValidationError(string $a_error_code)
Definition:
class.ilADT.php:223
ilADTMultiText\exportStdClass
exportStdClass()
Definition:
class.ilADTMultiText.php:115
stdClass
ilADTMultiText\isValidDefinition
isValidDefinition(ilADTDefinition $a_def)
Definition:
class.ilADTMultiText.php:9
ilADTMultiText\isSmaller
isSmaller(ilADT $a_adt)
Definition:
class.ilADTMultiText.php:61
$valid
$valid
Definition:
dummy_client.php:57
ilADTMultiText\isNull
isNull()
Definition:
class.ilADTMultiText.php:72
ilADT
ADT base class.
Definition:
class.ilADT.php:11
ilADTMultiText
Definition:
class.ilADTMultiText.php:5
ilADTMultiText\getCheckSum
getCheckSum()
Definition:
class.ilADTMultiText.php:103
ilADTMultiText\getTextElements
getTextElements()
Definition:
class.ilADTMultiText.php:41
ilADTMultiText\reset
reset()
Definition:
class.ilADTMultiText.php:14
ilADTMultiText\isValid
isValid()
Definition:
class.ilADTMultiText.php:80
ilADTMultiText\isLarger
isLarger(ilADT $a_adt)
Definition:
class.ilADTMultiText.php:56
ilADTMultiText\equals
equals(ilADT $a_adt)
Definition:
class.ilADTMultiText.php:48
ilADT\getCheckSum
getCheckSum()
Get unique checksum.
ilADTDefinition
ADT definition base class.
Definition:
class.ilADTDefinition.php:11
ilADTMultiText\importStdClass
importStdClass(?stdClass $a_std)
Definition:
class.ilADTMultiText.php:125
ilADTMultiTextDefinition
Definition:
class.ilADTMultiTextDefinition.php:21
ilADTMultiText\setTextElements
setTextElements(?array $a_values=null)
Definition:
class.ilADTMultiText.php:22
ilADT\getDefinition
getDefinition()
Get definition.
Definition:
class.ilADT.php:92
Services
ADT
classes
Types
MultiText
class.ilADTMultiText.php
Generated on Tue Apr 1 2025 22:01:45 for ILIAS by
1.8.13 (using
Doxyfile
)