19 declare(strict_types=1);
33 'create_date' =>
'DateTimeImmutable',
34 'update_date' =>
'DateTimeImmutable',
35 'import_id' =>
'text',
51 private Online $property_is_online,
52 private PropertyTileImage $property_tile_image,
101 return $this->import_id ??
'';
106 $clone = clone $this;
113 return $this->property_title_and_description;
118 $clone = clone $this;
119 $clone->property_title_and_description = $property_title_and_description;
125 return $this->property_is_online;
130 $clone = clone $this;
131 $clone->property_is_online = $property_is_online;
137 return $this->property_tile_image;
142 $clone = clone $this;
143 $clone->property_tile_image = $property_tile_image;
154 if ($data ===
null) {
158 if (array_diff_key(self::FIELDS, $data)
159 || array_diff_key($data, self::FIELDS)) {
163 if ($data[
'object_id'] ===
null || $data[
'owner'] ===
null) {
167 if (!is_int($data[
'object_id']) || !is_int($data[
'owner'])) {
180 foreach ($data as $key => $value) {
181 $this->$key = $value;
187 foreach (self::FIELDS as $key => $value) {
188 if ($data[$key] ===
null) {
191 if ($value ===
'int' && !is_int($data[$key])) {
194 if ($value ===
'text' && !is_string($data[$key])) {
197 if ($value ===
'bool' && !is_bool($data[$key])) {
200 if ($value ===
'DateTimeImmutable' && !$data[$key] instanceof \
DateTimeImmutable) {
DateTimeImmutable $update_date
DateTimeImmutable $create_date
getPropertyTitleAndDescription()
checkTypesOfDataArray(array $data)
withPropertyIsOnline(Online $property_is_online)
withImportId(string $import_id)
setValuesByArray(array $data)
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
withPropertyTileImage(PropertyTileImage $property_tile_image)
__construct(private TitleAndDescription $property_title_and_description, private Online $property_is_online, private PropertyTileImage $property_tile_image, ?array $data=null)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
checkDataArray(?array $data)
withPropertyTitleAndDescription(TitleAndDescription $property_title_and_description)