src/Menu/LoevgaardAdminMenuBuilder.php line 22

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Menu;
  4. use Knp\Menu\ItemInterface;
  5. use Sylius\Bundle\ApiBundle\Context\UserContextInterface;
  6. use Sylius\Bundle\UiBundle\Menu\Event\MenuBuilderEvent;
  7. use Symfony\Component\Security\Core\Security;
  8. final class LoevgaardAdminMenuBuilder
  9. {
  10.     /** @var Security */
  11.     private $security;
  12.     public function __construct(Security $security)
  13.     {
  14.         $this->security $security;
  15.     }
  16.     public function addLoevgaardItem(MenuBuilderEvent $event): void
  17.     {
  18.         /** @var ItemInterface $configMenu */
  19.         $salesMenu $event->getMenu()->getChild('sales');
  20.         if (!$salesMenu) {
  21.             return;
  22.         }
  23.         if (in_array('ROLE_SUPERADMIN'$this->security->getUser()->getRoles())) {
  24.             $salesMenu
  25.                 ->addChild('brands', [
  26.                     'route' => 'loevgaard_sylius_brand_admin_brand_index',
  27.                 ])
  28.                 ->setLabel('loevgaard_sylius_brand.ui.brands')
  29.                 ->setLabelAttribute('icon''building');
  30.         }
  31.     }
  32. }