src/Controller/Admin/DashboardController.php line 25

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Admin;
  3. use App\Entity\Answer;
  4. use App\Entity\Interest;
  5. use App\Entity\Langue;
  6. use App\Entity\Like;
  7. use App\Entity\MatchProfile;
  8. use App\Entity\Profile;
  9. use App\Entity\ProfileTargetSetting;
  10. use App\Entity\Question;
  11. use App\Entity\Setting;
  12. use App\Entity\User;
  13. use EasyCorp\Bundle\EasyAdminBundle\Config\Dashboard;
  14. use EasyCorp\Bundle\EasyAdminBundle\Config\MenuItem;
  15. use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractDashboardController;
  16. use EasyCorp\Bundle\EasyAdminBundle\Router\AdminUrlGenerator;
  17. use Symfony\Component\HttpFoundation\Response;
  18. use Symfony\Component\Routing\Annotation\Route;
  19. class DashboardController extends AbstractDashboardController
  20. {
  21.     #[Route('/'name'admin')]
  22.     public function index(): Response
  23.     {
  24.         //return parent::index();
  25.         // Option 1. You can make your dashboard redirect to some common page of your backend
  26.         //
  27.          $adminUrlGenerator $this->container->get(AdminUrlGenerator::class);
  28.          return $this->redirect($adminUrlGenerator->setController(ProfileCrudController::class)->generateUrl());
  29.         // Option 2. You can make your dashboard redirect to different pages depending on the user
  30.         //
  31.         // if ('jane' === $this->getUser()->getUsername()) {
  32.         //     return $this->redirect('...');
  33.         // }
  34.         // Option 3. You can render some custom template to display a proper dashboard with widgets, etc.
  35.         // (tip: it's easier if your template extends from @EasyAdmin/page/content.html.twig)
  36.         //
  37.         // return $this->render('some/path/my-dashboard.html.twig');
  38.     }
  39.     public function configureDashboard(): Dashboard
  40.     {
  41.         return Dashboard::new()
  42.             ->setTitle('KWL');
  43.     }
  44.     public function configureMenuItems(): iterable
  45.     {
  46.         yield MenuItem::linkToDashboard('Dashboard''fa fa-home');
  47.         yield MenuItem::linkToCrud('Profiles''fas fa-list'Profile::class);
  48.         yield MenuItem::linkToCrud('MatchProfiles(Likes/Dislike)''fas fa-list'MatchProfile::class);
  49.         yield MenuItem::linkToCrud('Questions''fas fa-list'Question::class)->setController(ParentQuestionCrudController::class);
  50.         //yield MenuItem::linkToCrud('SubQuestions', 'fas fa-list', Question::class)->setController(QuestionCrudController::class);
  51.         yield MenuItem::linkToCrud('Intrests''fas fa-list'Interest::class);
  52.         yield MenuItem::linkToCrud('Langues''fas fa-list'Langue::class);
  53.         yield MenuItem::linkToCrud('Answers''fas fa-list'Answer::class);
  54.         yield MenuItem::linkToCrud('Settings Targets Profiles''fas fa-list'ProfileTargetSetting::class);
  55.         yield MenuItem::linkToCrud('Users''fas fa-list'User::class);
  56.     }
  57. }