From 013f84480439747ce59f16d99d50879e86deb7fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BCrgen=20Mummert?= Date: Mon, 22 Dec 2025 21:08:36 +0100 Subject: [PATCH] Add Index Listener --- .../MeilisearchEventMarkerListener.php | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/EventListener/MeilisearchEventMarkerListener.php b/src/EventListener/MeilisearchEventMarkerListener.php index 9fd6f6e..59c78a5 100644 --- a/src/EventListener/MeilisearchEventMarkerListener.php +++ b/src/EventListener/MeilisearchEventMarkerListener.php @@ -9,26 +9,32 @@ class MeilisearchEventMarkerListener { public function onParseTemplate(Template $template): void { + // ✅ Nur Event-Reader if ($template->getName() !== 'mod_eventreader') { return; } + // ✅ Event kommt DIREKT aus dem Template if ( - !isset($GLOBALS['objEvent']) || - !$GLOBALS['objEvent'] instanceof CalendarEventsModel + !isset($template->event) || + !$template->event instanceof CalendarEventsModel ) { return; } - $event = CalendarEventsModel::findByPk($GLOBALS['objEvent']->id); + $event = $template->event; - if ($event === null) { + $priority = (int) ($event->priority ?? 0); + $keywords = trim((string) ($event->keywords ?? '')); + + if ($priority <= 0 && $keywords === '') { return; } + // ✅ In globale Marker schreiben (merge-fähig) $GLOBALS['MEILISEARCH_MARKERS']['event'] = [ - 'priority' => (int) ($event->priority ?? 0), - 'keywords' => trim((string) ($event->keywords ?? '')), + 'priority' => $priority > 0 ? $priority : null, + 'keywords' => $keywords !== '' ? $keywords : null, ]; } } \ No newline at end of file