Add Index Listener
This commit is contained in:
@@ -2,27 +2,33 @@
|
|||||||
|
|
||||||
namespace MummertMedia\ContaoMeilisearchBundle\EventListener;
|
namespace MummertMedia\ContaoMeilisearchBundle\EventListener;
|
||||||
|
|
||||||
use Contao\NewsModel;
|
use Contao\CalendarEventsModel;
|
||||||
use Contao\Template;
|
|
||||||
|
|
||||||
$GLOBALS['MEILISEARCH_MARKERS']['event']['debug'] = 'event_listener_called';
|
class MeilisearchEventMarkerListener
|
||||||
class MeilisearchNewsMarkerListener
|
|
||||||
{
|
{
|
||||||
public function onParseFrontendTemplate(string $buffer, string $template): string
|
public function onParseFrontendTemplate(string $buffer, string $template): string
|
||||||
{
|
{
|
||||||
if ($template !== 'mod_newsreader') {
|
if ($template !== 'mod_eventreader') {
|
||||||
return $buffer;
|
return $buffer;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!isset($GLOBALS['news']) || !$GLOBALS['news'] instanceof NewsModel) {
|
if (
|
||||||
|
!isset($GLOBALS['objEvent']) ||
|
||||||
|
!$GLOBALS['objEvent'] instanceof CalendarEventsModel
|
||||||
|
) {
|
||||||
return $buffer;
|
return $buffer;
|
||||||
}
|
}
|
||||||
|
|
||||||
$news = $GLOBALS['news'];
|
// 🔥 Event vollständig aus DB laden
|
||||||
|
$event = CalendarEventsModel::findByPk($GLOBALS['objEvent']->id);
|
||||||
|
|
||||||
$GLOBALS['MEILISEARCH_MARKERS']['news'] = [
|
if ($event === null) {
|
||||||
'priority' => (int) ($news->priority ?? 0),
|
return $buffer;
|
||||||
'keywords' => trim((string) ($news->keywords ?? '')),
|
}
|
||||||
|
|
||||||
|
$GLOBALS['MEILISEARCH_MARKERS']['event'] = [
|
||||||
|
'priority' => (int) ($event->priority ?? 0),
|
||||||
|
'keywords' => trim((string) ($event->keywords ?? '')),
|
||||||
];
|
];
|
||||||
|
|
||||||
return $buffer;
|
return $buffer;
|
||||||
|
|||||||
Reference in New Issue
Block a user