src/Controller/Admin/DashboardController.php line 24

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Admin;
  3. use EasyCorp\Bundle\EasyAdminBundle\Config\Dashboard;
  4. use EasyCorp\Bundle\EasyAdminBundle\Config\MenuItem;
  5. use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractDashboardController;
  6. use Symfony\Component\HttpFoundation\Response;
  7. use Symfony\Component\Routing\Annotation\Route;
  8. use App\Entity\User;
  9. use EasyCorp\Bundle\EasyAdminBundle\Config\Action;
  10. use EasyCorp\Bundle\EasyAdminBundle\Config\Assets;
  11. use EasyCorp\Bundle\EasyAdminBundle\Router\AdminUrlGenerator;
  12. use EasyCorp\Bundle\EasyAdminBundle\Security\AuthorizationChecker;
  13. use Sensio\Bundle\FrameworkExtraBundle\Configuration\IsGranted;
  14. class DashboardController extends AbstractDashboardController
  15. {
  16.     /**
  17.      * @Route("/admin", name="admin")
  18.      */
  19.     public function index(): Response
  20.     {
  21.         $adminUrlGenerator $this->container->get(AdminUrlGenerator::class);
  22.         $userId $this->getUser()->getId();
  23.         if (in_array("ROLE_ADMIN",$this->getUser()->getRoles())) {
  24.             return $this->redirect($adminUrlGenerator->setController(UserCrudController::class)->generateUrl());
  25.         }
  26.         else{
  27.             return $this->redirect($adminUrlGenerator->setController(UserCrudController::class)->setAction(Action::DETAIL)->setEntityId($userId)->generateUrl());
  28.         }
  29.     }
  30.     public function configureDashboard(): Dashboard
  31.     {
  32.         return Dashboard::new()
  33.             ->setTitle('Wisewave Solutions');
  34.     }
  35.     public function configureMenuItems(): iterable
  36.     {
  37.         $adminUrlGenerator $this->container->get(AdminUrlGenerator::class);
  38.         $url $adminUrlGenerator
  39.          ->setController(JobPositionCrudController::class)
  40.          ->setAction(Action::INDEX)
  41.          ->generateUrl();
  42.         if (in_array("ROLE_ADMIN",$this->getUser()->getRoles())) {
  43.             return [
  44.                 MenuItem::linkToDashboard('HR Records''fa fa-user'),
  45.                 MenuItem::linkToUrl('Job Position''fa link-icon'$url),
  46.                 MenuItem::linkToDashboard('Support''fa link-icon'),
  47.                 MenuItem::linkToDashboard('Utilities ''fa link-icon'),
  48.                 MenuItem::linkToLogout('Logout''fa fa-exit'),    
  49.             ];
  50.         }
  51.         else{
  52.             return [
  53.                 MenuItem::linkToDashboard('My Profile''fa fa-user'),
  54.                 MenuItem::linkToLogout('Logout''fa fa-exit'),    
  55.             ];
  56.         }
  57.     }
  58.     public function configureAssets(): Assets
  59.     {
  60.         return Assets::new()->addCssFile('css/admin.css');
  61.     }
  62. }