Files
myep/src/Menu/AdminMenuBuilder.php
T

70 lines
1.9 KiB
PHP

<?php
namespace App\Menu;
use Knp\Menu\ItemInterface;
class AdminMenuBuilder extends AbstractMenuBuilder
{
/**
* @param array<string, mixed> $options
*/
public function createMainMenu(array $options): ItemInterface
{
$menu = $this->createRootElement();
$menu->addChild('Dashboard', [
'route' => 'app_admin_dashboard',
'linkAttributes' => [
'title' => 'Dashboard',
],
'extras' => [
'icon' => 'chart',
],
]);
$menu->addChild('Buchungsentwürfe', [
'route' => 'app_admin_bookingeditdraft',
'linkAttributes' => [
'title' => 'Buchungsentwürfe',
],
'extras' => [
'icon' => 'edit',
'routes' => [['pattern' => '/^app_admin_bookingeditdraft/']],
],
]);
$menu->addChild('Benutzer', [
'route' => 'app_admin_user',
'linkAttributes' => [
'title' => 'Benutzer',
],
'extras' => [
'icon' => 'users',
],
]);
$menu->addChild('Gruppenhäuser', [
'route' => 'app_admin_accommodation',
'linkAttributes' => [
'title' => 'Gruppenhäuser',
],
'extras' => [
'icon' => 'house',
'routes' => [['pattern' => '/^app_admin_accommodation/']],
],
]);
$menu->addChild('Logs', [
'route' => 'app_admin_log',
'linkAttributes' => [
'title' => 'Logs',
],
'extras' => [
'icon' => 'list',
'routes' => [['pattern' => '/^app_admin_log/']],
],
]);
$this->addLogoutItem($menu);
return $menu;
}
}