src/Controller/Admin/DashboardController.php line 30

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Admin;
  3. use App\Entity\ActivityConfig;
  4. use App\Entity\BetConfig;
  5. use App\Entity\Config;
  6. use App\Entity\Contest;
  7. use App\Entity\Game;
  8. use App\Entity\Player;
  9. use App\Entity\PrizeBundle;
  10. use App\Entity\PsRequest;
  11. use App\Entity\ShopItem;
  12. use App\Entity\Tournament;
  13. use App\Entity\User;
  14. use EasyCorp\Bundle\EasyAdminBundle\Config\Dashboard;
  15. use EasyCorp\Bundle\EasyAdminBundle\Config\MenuItem;
  16. use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractDashboardController;
  17. use EasyCorp\Bundle\EasyAdminBundle\Router\AdminUrlGenerator;
  18. use Symfony\Component\HttpFoundation\Response;
  19. use Symfony\Component\Routing\Annotation\Route;
  20. class DashboardController extends AbstractDashboardController
  21. {
  22.     public function __construct(private AdminUrlGenerator $adminUrlGenerator)
  23.     {
  24.     }
  25.     #[Route(name: 'admin', host: '%app.admin_domain%')]
  26.     public function index(): Response
  27.     {
  28.         return $this->redirect($this->adminUrlGenerator
  29.             ->setController(ContestCrudController::class)
  30.             ->generateUrl()
  31.         );
  32.     }
  33.     public function configureDashboard(): Dashboard
  34.     {
  35.         return Dashboard::new()
  36.             ->setTitle('<img src="/assets/img/logo.png" style="height: 50px;"> Backoffice')
  37.         ;
  38.     }
  39.     public function configureMenuItems(): iterable
  40.     {
  41.         yield MenuItem::linkToDashboard('Dashboard', 'fa fa-home');
  42.         yield MenuItem::linkToCrud('Tournois', 'fas fa-trophy', Tournament::class);
  43.         yield MenuItem::linkToCrud('Matchs', 'fas fa-futbol', Contest::class);
  44.         yield MenuItem::linkToCrud('Jeux', 'fas fa-gamepad', Game::class);
  45.         yield MenuItem::linkToCrud('Joueurs', 'fas fa-headset', Player::class);
  46.         yield MenuItem::linkToCrud('Utilisateurs', 'fas fa-user', User::class);
  47.         yield MenuItem::linkToCrud('Demandes de reversion', 'fas fa-money-check', PsRequest::class);
  48.         yield MenuItem::linkToCrud('Boutique', 'fas fa-shopping-cart', ShopItem::class);
  49.         yield MenuItem::linkToRoute('Statistiques', 'fas fa-chart-line', 'admin.show_stats');
  50.         yield MenuItem::section('Configuration', 'fas fa-cog');
  51.         yield MenuItem::linkToCrud('Config. globale', 'fa fa-sliders', Config::class);
  52.         yield MenuItem::linkToCrud('Jauge d\'activité', 'fas fa-chart-line', ActivityConfig::class);
  53.         yield MenuItem::linkToCrud('Mises & gains', 'fas fa-exchange-alt', BetConfig::class);
  54.         yield MenuItem::linkToCrud('Gains des tournois', 'fas fa-coins', PrizeBundle::class);
  55.     }
  56. }