Reiter erstellen
Sie können einen Reiter erstellen, welcher Ihnen in einem Kalender alle Unterseiten (oder auch andere Datensätze) auflistet. Um so einen Reiter zu erstellen, müssen Sie in der navigation.ini Ihres Seitentyps folgende Einstellung mit der URL calendar.php setzen:
[calendar]
url="calendar.php"
title="Kalender"

Standardmäßig zeigt die Kalender-Ansicht alle Unterseiten an. Dabei wird jede Seite mit dem jeweiligen Titel und dem Erstellungsdatum angezeigt.
Einstellungen
Standardmäßig zeigt der Kalender den Zeitraum von 00:00 Uhr bis 23:59 Uhr an. Dieser Zeitraum kann über die Parameter calendar_start
und calendar_end
wie folgt eingestellt werden:
[calendar]
url="calendar.php?calendar_start=7&calendar_end=17"
title="Kalender"
Die angezeigten Unterseiten können mithilfe einer PageExtension angepasst werden. Dafür muss die Methode getCalendarItems
überschrieben werden. Die überschriebene Methode muss ein array
mit Einträgen in der folgenden Struktur liefern:
[
'id' => "ID der Unterseite",
'summary' => "Text, der für diese Unterseite angezeigt werden soll",
'startTime' => "Uhrzeit, von der ab diese Unterseite angezeigt werden soll als UNIX Timestamp",
'endTime' => "Uhrzeit, bis zu der diese Unterseite angezeigt werden soll als UNIX Timestamp",
'class' => "egotec-entry-inactive" // wenn diese Klassen gesetzt ist, dann wird die Unterseite als inaktiv angezeigt
]
Die Standard-Funktion als Beispiel:
public function getCalendarItems(): array {
$items = [];
foreach ($this->getChildren() as $entry) {
$items[] = [
'id' => $entry->field['id'],
'summary' => $entry->field['title'],
'startTime' => strtotime($entry->field['a_date']),
'endTime' => strtotime('+1 hour', strtotime($entry->field['a_date'])),
'class' => !$entry->isActive() ? 'egotec-entry-inactive' : ''
];
}
return $items;
}