src/Controller/Admin/DashboardController.php line 26

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Admin;
  3. use App\Entity\Log;
  4. use App\Entity\PhoneNumberUnsubscribes;
  5. use App\Entity\Unsubscribes;
  6. use App\Entity\User;
  7. use EasyCorp\Bundle\EasyAdminBundle\Config\Action;
  8. use EasyCorp\Bundle\EasyAdminBundle\Config\Actions;
  9. use EasyCorp\Bundle\EasyAdminBundle\Config\Crud;
  10. use EasyCorp\Bundle\EasyAdminBundle\Config\Dashboard;
  11. use EasyCorp\Bundle\EasyAdminBundle\Config\MenuItem;
  12. use EasyCorp\Bundle\EasyAdminBundle\Config\UserMenu;
  13. use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractDashboardController;
  14. use EasyCorp\Bundle\EasyAdminBundle\Router\AdminUrlGenerator;
  15. use Symfony\Component\HttpFoundation\Response;
  16. use Symfony\Component\Routing\Annotation\Route;
  17. use Symfony\Component\Security\Core\User\UserInterface;
  18. class DashboardController extends AbstractDashboardController
  19. {
  20.     /**
  21.      * @Route("/", name="admin")
  22.      */
  23.     public function index(AdminUrlGenerator $adminUrlGenerator null): Response
  24.     {
  25.         $url $adminUrlGenerator
  26.             ->setController(\App\Controller\Admin\UnsubscribesCrudController::class)
  27.             ->setAction(Crud::PAGE_INDEX)
  28.             ->generateUrl();
  29.         return $this->redirect($url);
  30. //        return $this->render('dashboard/index.html.twig');
  31. //        return parent::index();
  32.     }
  33.     public function configureDashboard(): Dashboard
  34.     {
  35.         return Dashboard::new()
  36.             ->setTitle('Hírlevél leiratkozások')
  37.             ->disableUrlSignatures();
  38.     }
  39.     public function configureMenuItems(): iterable
  40.     {
  41. //        yield MenuItem::linkToDashboard('Admin főoldal', 'fa fa-dashboard');
  42.         yield MenuItem::linkToCrud('E-mail leiratkozók''fa fa-list'Unsubscribes::class)
  43.             ->setQueryParameter('filters[Deleted]''null')->setPermission('ROLE_MAIL');
  44.         yield MenuItem::linkToCrud('Telefonszám leiratkozók''fa fa-list'PhoneNumberUnsubscribes::class)
  45.             ->setQueryParameter('filters[deleted]''null')->setPermission('ROLE_PHONE');
  46.         yield MenuItem::linkToCrud('Tömeges feltöltés (E-mail)''fa fa-upload'Unsubscribes::class)
  47.             ->setAction('batchupload')->setPermission('ROLE_MAIL');
  48.         yield MenuItem::linkToCrud('Tömeges feltöltés (Telefonszám)''fa fa-upload'PhoneNumberUnsubscribes::class)
  49.             ->setAction('batchupload')->setPermission('ROLE_PHONE');
  50.         yield MenuItem::linkToCrud('Log''fa fa-list'Log::class);
  51.         yield MenuItem::linkToCrud('Felhasználók''fa fa-users'User::class)
  52.             ->setPermission('ROLE_ADMIN');
  53.         // yield MenuItem::linkToCrud('The Label', 'fas fa-list', EntityClass::class);
  54.     }
  55.     public function configureActions(): Actions
  56.     {
  57.         return parent::configureActions()
  58.             ->add(Crud::PAGE_INDEXAction::DETAIL);
  59.     }
  60.     public function configureUserMenu(UserInterface $user): UserMenu
  61.     {
  62.         return parent::configureUserMenu($user)
  63.             ->setMenuItems([
  64.                 MenuItem::linkToUrl('Jelszó változtatás''fa-solid fa-key'$this->generateUrl('app_change_password')),
  65.                 MenuItem::linkToUrl('Kijelentkezés''fa fa-fw fa-sign-out'$this->generateUrl('app_logout'))
  66.             ]);
  67.     }
  68. }