<?php
namespace App\Menu;
use Sylius\Bundle\UiBundle\Menu\Event\MenuBuilderEvent;
final class AdminMenuListener
{
public function addAdminMenuItems(MenuBuilderEvent $event): void
{
$menu = $event->getMenu();
$menu->getChild('sales')->addChild('forgotten_cart', [
'route' => 'app_admin_forgotten_cart_index',
])->setLabel('app.menu.admin.list_forgotten_carts')->setLabelAttribute('icon', 'cart');
$menu->getChild('sales')->addChild('order_status', [
'route' => 'app_admin_order_status_index',
])->setLabel('app.menu.admin.order_status')->setLabelAttribute('icon', 'cart');
$menu->getChild('sales')->addChild('availability_notifier', [
'route' => 'app_admin_availability_notifier_index',
])->setLabel('app.menu.admin.availability_notifier')->setLabelAttribute('icon', 'users');
// CATALOGUE
$menu->getChild('catalog')->addChild('product_files', [
'route' => 'app_admin_product_file_index',
])->setLabel('app.menu.admin.product_files')->setLabelAttribute('icon', 'file');
$menu->getChild('catalog')->addChild('supplier', [
'route' => 'app_admin_supplier_index',
])->setLabel('app.ui.suppliers')->setLabelAttribute('icon', 'users');
$menu->getChild('catalog')->addChild('brand', [
'route' => 'app_admin_brand_index',
])->setLabel('app.menu.admin.brands')->setLabelAttribute('icon', 'building');
$menu->getChild('catalog')->addChild('configuratorOption', [
'route' => 'app_admin_configurator_option_index',
])->setLabel('app.menu.admin.configurator_options')->setLabelAttribute('icon', 'options');
// CONTENU
$cms_menu = $menu->getChild('bitbag_cms');
$cms_menu->addChild('email', [
'route' => 'app_admin_email_index',
])->setLabel('app.menu.admin.emails')->setLabelAttribute('icon', 'users');
$cms_menu->addChild('contact_subject', [
'route' => 'app_admin_contact_subject_index',
])->setLabel('app.menu.admin.contact_subject')->setLabelAttribute('icon', 'users');
$cms_menu->addChild('partners', [
'route' => 'app_admin_partner_index',
])->setLabel('app.menu.admin.partners')->setLabelAttribute('icon', 'users');
$cms_menu->reorderChildren(['partners', 'contact_subject', 'email', 'blocks', 'media', 'pages', 'faq', 'sections']);
// CONFIGURATION
$menu->getChild('configuration')->addChild('parameter', [
'route' => 'app_admin_parameter_index',
])->setLabel('app.menu.admin.parameters')->setLabelAttribute('icon', 'users');
$menu->getChild('configuration')->addChild('shipping_delivery_date', [
'route' => 'app_admin_shipping_delivery_date_index',
])->setLabel('app.menu.admin.shipping_delivery_date')->setLabelAttribute('icon', 'users');
$menu->getChild('configuration')->addChild('shipping_delays', [
'route' => 'app_admin_shipping_delays_index',
])->setLabel('app.menu.admin.shipping_delays')->setLabelAttribute('icon', 'time');
// MARKETING
$menu->getChild('marketing')->addChild('activity_report', [
'route' => 'app_admin_activity_report_index',
])->setLabel('app.menu.admin.activity_report')->setLabelAttribute('icon', 'barcode');
// CLIENTS
$menu->getChild('customers')->addChild('project_simulation', [
'route' => 'app_admin_project_simulation_index',
])->setLabel('app.menu.admin.project_simulations')->setLabelAttribute('icon', 'options');
}
}