router = $router; $this->requestStack = $requestStack; } public function __invoke(MenuEvent $event): void { $factory = $event->getFactory(); $tree = $event->getTree(); $ref = $this->requestStack->getCurrentRequest()->attributes->get('_contao_referer_id'); if ('mainMenu' !== $tree->getName()) { return; } if (($contentNode = $tree->getChild('weinanlieferung')) === null) { $contentNode = $tree->addChild('weinanlieferung'); } $node = $factory ->createItem('booking-list') ->setUri($this->router->generate(WeinanlieferungBookingsController::class,['ref'=>$ref])) ->setLabel('Buchungsübersicht') ->setLinkAttribute('title', 'Übersicht aller gebuchter Anlieferungszeiten') ->setLinkAttribute('class', 'navigation wa-booking-list') ->setCurrent($this->requestStack->getCurrentRequest()->get('_controller') === WeinanlieferungBookingsController::class) ; $contentNode->addChild($node); $node = $factory ->createItem('slot-assistant') ->setUri($this->router->generate(WeinanlieferungSlotAssistantController::class,['ref'=>$ref])) ->setLabel('Slot-Assistent') ->setLinkAttribute('title', 'Assistent zur Massenalage von Zeitslots für Standorte') ->setLinkAttribute('class', 'navigation wa-slot-assistant') ->setCurrent($this->requestStack->getCurrentRequest()->get('_controller') === WeinanlieferungSlotAssistantController::class) ; $contentNode->addChild($node); $manipulator = new MenuManipulator(); $manipulator->moveToPosition($contentNode['slot-assistant'],1); } }