src/EventSubscriber/RequestSubscriber.php line 14

Open in your IDE?
  1. <?php
  2. namespace App\EventSubscriber;
  3. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  4. use Symfony\Component\HttpKernel\Event\RequestEvent;
  5. use Symfony\Component\HttpKernel\KernelEvents;
  6. use Symfony\Component\Security\Http\Util\TargetPathTrait;
  7. class RequestSubscriber implements EventSubscriberInterface
  8. {
  9.     use TargetPathTrait;
  10.     public function onKernelRequest(RequestEvent $event): void
  11.     {
  12.         $request $event->getRequest();
  13.         //on va ici faire en sorte de ne pas garder en mémoire certaines routes
  14.         if (
  15.             !$event->isMainRequest()
  16.             || $request->isXmlHttpRequest()
  17.             || 'app_login' === $request->attributes->get('_route')
  18.             || 'app_logout' === $request->attributes->get('_route')
  19.             || 'registration' === $request->attributes->get('_route')
  20.             || 'app_forgot_password_request' === $request->attributes->get('_route')
  21.             || 'app_check_email' === $request->attributes->get('_route')
  22.             || 'app_reset_password' === $request->attributes->get('_route')
  23.         ) {
  24.             return;
  25.         } else {
  26.             $this->saveTargetPath($request->getSession(), 'main'$request->getUri());
  27.         }
  28.     }
  29.     public static function getSubscribedEvents(): array
  30.     {
  31.         return [
  32.             KernelEvents::REQUEST => ['onKernelRequest']
  33.         ];
  34.     }
  35. }