src/Controller/Admin/DashboardController.php line 31

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Admin;
  3. use EasyCorp\Bundle\EasyAdminBundle\Attribute\AdminDashboard;
  4. use EasyCorp\Bundle\EasyAdminBundle\Config\Dashboard;
  5. use EasyCorp\Bundle\EasyAdminBundle\Config\MenuItem;
  6. use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractDashboardController;
  7. use Symfony\Component\HttpFoundation\Response;
  8. use EasyCorp\Bundle\EasyAdminBundle\Config\Assets;
  9. use App\Repository\UserRepository;
  10. use App\Entity\User;
  11. #[AdminDashboard(routePath'/admin'routeName'admin')]
  12. class DashboardController extends AbstractDashboardController
  13. {
  14.     private UserRepository $userRepository;
  15.     public function __construct(UserRepository $userRepository)
  16.     {
  17.         $this->userRepository $userRepository;
  18.     }
  19.     #[Route('/'name'dashboard_admin')]
  20.     public function index(): Response
  21.     {
  22.         $users $this->userRepository->findAll();
  23.         return $this->render('admin/my-dashboard.html.twig', [
  24.           //  'users' => $users,
  25.         ]);
  26.     
  27.        // return parent::index();
  28.         // Option 1. You can make your dashboard redirect to some common page of your backend
  29.         //
  30.         // 1.1) If you have enabled the "pretty URLs" feature:
  31.         // return $this->redirectToRoute('admin_user_index');
  32.         //
  33.         // 1.2) Same example but using the "ugly URLs" that were used in previous EasyAdmin versions:
  34.         // $adminUrlGenerator = $this->container->get(AdminUrlGenerator::class);
  35.         // return $this->redirect($adminUrlGenerator->setController(OneOfYourCrudController::class)->generateUrl());
  36.         // Option 2. You can make your dashboard redirect to different pages depending on the user
  37.         //
  38.         // if ('jane' === $this->getUser()->getUsername()) {
  39.         //     return $this->redirectToRoute('...');
  40.         // }
  41.         // Option 3. You can render some custom template to display a proper dashboard with widgets, etc.
  42.         // (tip: it's easier if your template extends from @EasyAdmin/page/content.html.twig)
  43.         //
  44.         // return $this->render('some/path/my-dashboard.html.twig');
  45.     }
  46.     public function configureDashboard(): Dashboard
  47.     {
  48.         return Dashboard::new()
  49.             ->setTitle('Pointage');
  50.     }
  51.     public function configureMenuItems(): iterable
  52.     {
  53.         yield MenuItem::linkToDashboard('Dashboard''fa fa-home');
  54.         // yield MenuItem::linkToCrud('The Label', 'fas fa-list', EntityClass::class);
  55.     }
  56.     public function configureAssets(): Assets
  57.     {
  58.         return parent::configureAssets()
  59.             ->addCssFile('build/admin.css')
  60.             ->addJsFile('build/admin.js');
  61.     }
  62. }