src/EventSubscriber/EstablishmentSelectionSubscriber.php line 25

  1. <?php
  2. namespace App\EventSubscriber;
  3. use Symfony\Bundle\SecurityBundle\Security;
  4. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  5. use Symfony\Component\HttpFoundation\RedirectResponse;
  6. use Symfony\Component\HttpFoundation\Request;
  7. use Symfony\Component\HttpKernel\Event\RequestEvent;
  8. use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
  9. use Symfony\Component\Security\Http\Event\LoginSuccessEvent;
  10. class EstablishmentSelectionSubscriber implements EventSubscriberInterface
  11. {
  12.     public function __construct(private UrlGeneratorInterface $urlGenerator, private Security $security) {}
  13.     public static function getSubscribedEvents(): array
  14.     {
  15.         return [
  16.             RequestEvent::class => 'onKernelRequest',
  17.         ];
  18.     }
  19.     public function onKernelRequest(RequestEvent $event)
  20.     {
  21.         $request $event->getRequest();
  22.         $session $request->getSession();
  23.         /*if (!$session->has('establishment_id') && !$this->isAutorisedRoute($request) && $this->security->getUser()) {
  24.             $url = $this->urlGenerator->generate('app_establishment_select');
  25.             $response = new RedirectResponse($url);
  26.             $event->setResponse($response);
  27.         }*/
  28.     }
  29.     private function isAutorisedRoute(Request $request): bool
  30.     {
  31.         $currentRouteName $request->attributes->get('_route');
  32.         return in_array($currentRouteName, ['site_landing''app_self''app_establishment_new''app_invitation_show']);
  33.     }
  34. }