src/Controller/Admin/DashboardController.php line 26

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Admin;
  3. use App\Entity\AppCustomer;
  4. use App\Entity\CustomerGroupModul;
  5. use App\Entity\History;
  6. use App\Entity\User;
  7. use App\Entity\App;
  8. use App\Entity\Customer;
  9. use App\Entity\CustomerGroup;
  10. use App\Entity\CustomerGroupConfig;
  11. use App\Entity\CustomerGroupConfigKey;
  12. use App\Entity\CustomerGroupModuleCategory;
  13. use App\Entity\CustomerGroupModule;
  14. use EasyCorp\Bundle\EasyAdminBundle\Config\Dashboard;
  15. use EasyCorp\Bundle\EasyAdminBundle\Config\MenuItem;
  16. use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractDashboardController;
  17. use Symfony\Component\HttpFoundation\Response;
  18. use Symfony\Component\Routing\Annotation\Route;
  19. use App\Form\CustomerGroupCloneForm;
  20. class DashboardController extends AbstractDashboardController
  21. {
  22.     #[Route('/adm'name'admin')]
  23.     public function index(): Response
  24.     {
  25.         $form     $this->createForm(CustomerGroupCloneForm::class);
  26.         return $this->render('admin/dashboard.html.twig', ['form' => $form->createView()]);
  27.     }
  28.     public function configureDashboard(): Dashboard
  29.     {
  30.         return Dashboard::new()
  31.             ->setTitle('App Admin');
  32.     }
  33.     public function configureMenuItems(): iterable
  34.     {
  35.         yield MenuItem::linkToDashboard('Dashboard''fa fa-home');
  36.         foreach ($this->getUser()->getRoles() as $role) {
  37.             if ($role === "ROLE_ADMIN") {
  38.                 yield MenuItem::subMenu('Account''fas fa-tags')->setSubItems([
  39.                     MenuItem::linkToCrud('User''fas fa-tags'User::class)
  40.                 ]);
  41.             }
  42.         }
  43.         yield MenuItem::subMenu('Customer''fas fa-tags')->setSubItems([
  44.               MenuItem::linkToCrud('Apps''fas fa-tags'App::class),
  45.               MenuItem::linkToCrud('Kunden''fas fa-tags'Customer::class),
  46.               MenuItem::linkToCrud('Apps Kunden''fas fa-tags'AppCustomer::class),
  47.               MenuItem::linkToCrud('Gruppen''fas fa-tags'CustomerGroup::class),
  48.               MenuItem::linkToCrud('Gruppenkonfigurationen''fas fa-tags'CustomerGroupConfig::class),
  49.               MenuItem::linkToCrud('Konfigurationsschlüssel''fas fa-tags'CustomerGroupConfigKey::class),
  50.               MenuItem::linkToCrud('Gruppenmodule''fas fa-tags'CustomerGroupModul::class),
  51.               MenuItem::linkToCrud('Module''fas fa-tags'CustomerGroupModule::class),
  52.               MenuItem::linkToCrud('Modul Kategorien''fas fa-tags'CustomerGroupModuleCategory::class),
  53.         ]);
  54.         foreach ($this->getUser()->getRoles() as $role) {
  55.             if ($role === "ROLE_ADMIN") {
  56.                 yield MenuItem::linkToCrud('Historie''fas fa-tags'History::class);
  57.             }
  58.         }
  59.     }
  60. }