src/Menu/AdminMenuListener.php line 16

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Menu;
  4. use Sylius\Bundle\UiBundle\Menu\Event\MenuBuilderEvent;
  5. use Symfony\Component\Routing\RouterInterface;
  6. final class AdminMenuListener
  7. {
  8.     public function __construct(private RouterInterface $router)
  9.     {
  10.     }
  11.     public function addAdminMenuItems(MenuBuilderEvent $event): void
  12.     {
  13.         $menu $event->getMenu();
  14.         $menu->getChildren()['sales']->addChild('stats')
  15.             ->setLabel('Statistiques')
  16.             ->setLabelAttribute('icon''chart bar')
  17.             ->setUri('/admin/orders/stats')
  18.             ->setExtra('routes', [
  19.                 ['route' => 'admin_order_stats'],
  20.             ]);
  21.         $menu->getChildren()['customers']->addChild('firmware')
  22.             ->setLabel('Firmware')
  23.             ->setLabelAttribute('icon''info')
  24.             ->setUri('/admin/customers-firmware')
  25.             ->setExtra('routes', [
  26.                 ['route' => 'admin_customers_firmware'],
  27.             ]);
  28.         $menu->getChildren()['catalog']->addChild('universe_card')
  29.             ->setLabel('app.ui.universe_cards')
  30.             ->setLabelAttribute('icon''credit card')
  31.             ->setUri($this->router->generate('app_admin_universe_card_index'));
  32.         $newSubmenu $menu
  33.             ->addChild('new')
  34.             ->setLabel('customStrings.menu.sub_heading_firmware');
  35.         $newSubmenu
  36.             ->addChild('new-subitem', ['route' => 'app_admin_firmware_index'])
  37.             ->setLabel('customStrings.menu.menu_item_firmwares');
  38.         $menu->getChild('marketing')
  39.             ?->removeChild('bonus_points_strategies');
  40.     }
  41. }