src/Controller/Admin/DashboardController.php line 26

  1. <?php
  2. namespace App\Controller\Admin;
  3. use App\Entity\FormerStudent;
  4. use App\Entity\FormerStudentContribution;
  5. use App\Entity\ClassRoom;
  6. use App\Entity\Contribution;
  7. use App\Entity\ContributionType;
  8. use App\Entity\Photo;
  9. use App\Entity\User;
  10. use EasyCorp\Bundle\EasyAdminBundle\Config\Dashboard;
  11. use EasyCorp\Bundle\EasyAdminBundle\Config\MenuItem;
  12. use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractDashboardController;
  13. use Symfony\Component\HttpFoundation\Response;
  14. use Symfony\Component\Routing\Annotation\Route;
  15. use Symfony\Component\Security\Core\Authorization\AuthorizationCheckerInterface;
  16. class DashboardController extends AbstractDashboardController
  17. {
  18.     public function __construct(AuthorizationCheckerInterface $authorizationChecker)
  19.     {
  20.         $this->authorizationChecker $authorizationChecker;
  21.     }
  22.     public function index(): Response
  23.     {
  24. //        return parent::index();
  25.         return $this->render('admin/index.html.twig', [
  26.             'dashboard_controller_filepath' => (new \ReflectionClass(static::class))->getFileName(),
  27.             'dashboard_controller_class' => (new \ReflectionClass(static::class))->getShortName(),
  28.         ]);
  29.     }
  30.     public function configureDashboard(): Dashboard
  31.     {
  32.         return Dashboard::new()
  33.             ->setTitle('Smgl Anciens');
  34.     }
  35.     public function configureMenuItems(): iterable
  36.     {
  37.         yield MenuItem::linkToDashboard('Dashboard''fa fa-home');
  38. /*        yield MenuItem::linkToUrl('Vers le site', 'fa fa-door-open', '/')->setLinkTarget('_blank');*/
  39.         yield MenuItem::linkToCrud('Anciens élèves''fa fa-users'FormerStudent::class);
  40.         yield MenuItem::linkToCrud('Classe''fa fa-door-open'ClassRoom::class);
  41.         yield MenuItem::linkToCrud('Contributions''fa fa-money'Contribution::class)
  42.             ->setController(ContributionCrudController::class);
  43.         yield MenuItem::linkToCrud('Événements''fas fa-calendar'Contribution::class)
  44.             ->setController(EventCrudController::class);
  45.         yield MenuItem::linkToCrud('Cotisations d\'élèves''fa fa-money'FormerStudentContribution::class);
  46.         yield MenuItem::linkToCrud('Photos''fa fa-photo'Photo::class);
  47.         if ($this->authorizationChecker->isGranted('ROLE_ADMIN')) {
  48.             yield MenuItem::linkToCrud('Utilisateurs''fa fa-user'User::class);
  49.         }
  50.     }
  51. }