src/EventListener/LocaleListener.php line 16

Open in your IDE?
  1. <?php
  2. namespace App\EventListener;
  3. use Symfony\Component\HttpKernel\Event\RequestEvent;
  4. class LocaleListener
  5. {
  6.     private $defaultLocale;
  7.     public function __construct($defaultLocale 'fr')
  8.     {
  9.         $this->defaultLocale $defaultLocale;
  10.     }
  11.     public function onKernelRequest(RequestEvent $event)
  12.     {
  13.         $request $event->getRequest();
  14.         if (!$request->hasPreviousSession()) {
  15.             return;
  16.         }
  17.         $locale $request->getSession()->get('_locale'$this->defaultLocale);
  18.         $request->setLocale($locale);
  19.     }
  20. }