19declare(strict_types=1);
30 private readonly
int $obj_id,
31 private string $title,
32 private string $description,
35 private array $additional_data = []
44 final public function setType(
string $type): void
64 final public function setTitle(
string $title): void
66 $this->title = $title;
71 return $this->description;
76 $this->description = $description;
81 return $this->start_date;
86 $this->start_date = $start_date;
91 return $this->end_date;
96 $this->end_date = $end_date;
101 return $this->start_date && $this->start_date->get(
IL_CAL_UNIX) > time();
106 return $this->end_date && $this->end_date->get(
IL_CAL_UNIX) < time();
116 return $this->start_date || $this->end_date;
121 return $this->additional_data;
126 $this->additional_data = $additional_data;
132 'type' => $this->type,
134 'obj_id' => $this->obj_id,
135 'title' => $this->title,
136 'description' => $this->description,
139 'additional_data' => $this->additional_data
__construct(private string $type, private readonly int $ref_id, private readonly int $obj_id, private string $title, private string $description, private ?ilDateTime $start_date=null, private ?ilDateTime $end_date=null, private array $additional_data=[])
setStartDate(?ilDateTime $start_date)
setDescription(string $description)
setAdditionalData(array $additional_data)
setEndDate(?ilDateTime $end_date)
@classDescription Date and time handling