<?php
/**
* Created by PhpStorm.
* User: grego
* Date: 18/10/2022
* Time: 16:23
*/
namespace App\EventListener;
use Sonata\AdminBundle\Event\ConfigureMenuEvent;
use Symfony\Component\Security\Core\Security;
class MenuBuilderListener
{
private $security;
public function __construct(Security $security)
{
$this->security = $security;
}
public function addMenuItems(ConfigureMenuEvent $event)
{
$user = $this->security->getUser();
$menu = $event->getMenu();
if ($this->security->isGranted('ROLE_SUPER_ADMIN') || $this->security->isGranted('ROLE_SBM')) {
$menu->getChild('Users')->addChild('import_users', [
'label' => 'Import Utilisateurs',
'route' => 'client_admin_import_users',
])->setExtras([
'icon' => '<i class="fa fa-exchange"></i>',
'routes' => [
[
'route' => 'client_admin_import_users',
]
]
]);
$menu->getChild('Users')->addChild('delete_users', [
'label' => 'Suppression Utilisateurs',
'route' => 'client_admin_delete_users',
])->setExtras([
'icon' => '<i class="fa fa-trash"></i>',
'routes' => [
[
'route' => 'client_admin_delete_users',
]
]
]);
$menu->getChild('COSS')->addChild('validate_recipients', [
'label' => 'Validation répondants',
'route' => 'recipients_list_all_users',
])->setExtras([
'icon' => '<i class="fa fa-check"></i>',
'routes' => [
[
'route' => 'recipients_list_all_users',
]
]
]);
$menu->getChild('COSS')->addChild('list_users', [
'label' => 'Admin client',
'route' => 'client_admin_list_users',
])->setExtras([
'icon' => '<i class="fa fa-check"></i>',
'routes' => [
[
'route' => 'client_admin_list_users',
]
]
]);
}
$menu->removeChild('sonata_user');
}
}