[2384 Aufrufe]
Hook:
Hook:
5.5 Hooks: calendar
In diesem Abschnitt beschäftigen wir uns mit den Hooks für den Kalendar.
Hook: findCalendarBoundaries
Mit dem findCalendarBoundaries Hook können die Grenzen für die Anzeige im Kalender beeinflusst werden.
Registrierung
# /src/Ctocb/Example/Resources/config/services.yml
services:
# Hooks
Ctocb\Example\Classes\Contao\Hooks\ExampleHook:
public: true
tags:
- { name: contao.hook, hook: findCalendarBoundaries, method: handleHook, priority: 1024 }
Klasse
<?php
namespace Ctocb\Example\Classes\Contao\Hooks;
use Contao\Module;
class ExampleHook {
public function handleHook(int &$dateFrom, int &$dateTo, int &$repeatUntil, Module $module): void
{
// Modify $dateForm, $dateTo or $repeatUntil here
}
}
Parameter:
Parameter | Typ | Beschreibung |
---|---|---|
$dateFrom |
int |
Zeitstempel der unteren Grenze für die Anzeige |
$dateTo |
int |
Zeitstempel der obere Grenze für die Anzeige |
$repeatUntil |
int |
Maximum für tl_calendar_events.repeatEnd |
$module |
\Contao\Module |
Instanz des Frontend Moduls |
Rückgabewert:
Keiner, da die Werte per Referenz übergeben werden.
Referenz im Contao Core: \Contao\ModuleCalendar#L131
Hook: getAllEvents
Mit dem getAllEvents Hook können die angezeigten Events manipuliert werden.
Registrierung
# /src/Ctocb/Example/Resources/config/services.yml
services:
# Hooks
Ctocb\Example\Classes\Contao\Hooks\ExampleHook:
public: true
tags:
- { name: contao.hook, hook: getAllEvents, method: handleHook, priority: 1024 }
Klasse
<?php
namespace Ctocb\Example\Classes\Contao\Hooks;
use Contao\Module;
class ExampleHook {
public function handleHook(array $events, array $calendars, int $timeStart, int $timeEnd, Module $module): array
{
// Add events to $events or modify the array
return $events;
}
}
Parameter:
Parameter | Typ | Beschreibung |
---|---|---|
$events |
array |
Array mit den geladenen Events |
$calendars |
array |
Array mit den Ids der Kalender, aus denen die Events stammen |
$timeStart |
int |
Zeitstempel des Statdatums |
$timeEnd |
int |
Zeitstempel des Enddatums |
$module |
\Contao\Module |
Instanz des Frontend Moduls |
Rückgabewert:
Typ | Beschreibung |
---|---|
array |
Das überarbeitet Array mit den Events |
Referenz im Contao Core: \Contao\Events#L180-L188