<?php
declare(strict_types=1);
namespace App\Menu;
use Knp\Menu\ItemInterface;
use Sylius\Bundle\ApiBundle\Context\UserContextInterface;
use Sylius\Bundle\UiBundle\Menu\Event\MenuBuilderEvent;
use Symfony\Component\Security\Core\Security;
final class LoevgaardAdminMenuBuilder
{
/** @var Security */
private $security;
public function __construct(Security $security)
{
$this->security = $security;
}
public function addLoevgaardItem(MenuBuilderEvent $event): void
{
/** @var ItemInterface $configMenu */
$salesMenu = $event->getMenu()->getChild('sales');
if (!$salesMenu) {
return;
}
if (in_array('ROLE_SUPERADMIN', $this->security->getUser()->getRoles())) {
$salesMenu
->addChild('brands', [
'route' => 'loevgaard_sylius_brand_admin_brand_index',
])
->setLabel('loevgaard_sylius_brand.ui.brands')
->setLabelAttribute('icon', 'building');
}
}
}