<?php 
 
namespace App\Controller\Admin; 
 
use App\Entity\User; 
use App\Entity\Carrier; 
use App\Entity\Product; 
use App\Entity\Category; 
use App\Entity\Order; 
use Symfony\Component\HttpFoundation\Response; 
use Symfony\Component\Routing\Annotation\Route; 
use EasyCorp\Bundle\EasyAdminBundle\Config\MenuItem; 
use EasyCorp\Bundle\EasyAdminBundle\Config\Dashboard; 
use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractDashboardController; 
use EasyCorp\Bundle\EasyAdminBundle\Router\AdminUrlGenerator; 
 
class DashboardController extends AbstractDashboardController 
{ 
    /** 
     * @Route("/admin", name="admin") 
     */ 
    public function index(): Response 
    { 
        // redirect to some CRUD controller 
        $routeBuilder = $this->get(AdminUrlGenerator::class); 
 
        return $this->redirect($routeBuilder->setController(OrderCrudController::class)->generateUrl()); 
    } 
 
    public function configureDashboard(): Dashboard 
    { 
        return Dashboard::new() 
            ->setTitle('Laboutiquebelge'); 
    } 
 
    public function configureMenuItems(): iterable 
    { 
        yield MenuItem::linkToDashboard('Dashboard', 'fa fa-home'); 
        yield MenuItem::linkToCrud('Utilisateur', 'fas fa-user', User::class); 
        yield MenuItem::linkToCrud('Commandes', 'fas fa-shopping-cart', Order::class); 
        yield MenuItem::linkToCrud('Catégories', 'fas fa-list', Category::class); 
        yield MenuItem::linkToCrud('Produits', 'fas fa-tag', Product::class); 
        yield MenuItem::linkToCrud('Carriers', 'fas fa-truck', Carrier::class); 
    } 
}