X-Git-Url: https://git.rapsys.eu/.gitweb.cgi/airbundle/blobdiff_plain/2b20e23015b4b6a82ce6951179cd7308692f0134..a30db533bd26b383f50042b9fc95da10fad3f926:/EventSubscriber/LocaleSubscriber.php?ds=sidebyside diff --git a/EventSubscriber/LocaleSubscriber.php b/EventSubscriber/LocaleSubscriber.php index 7941a80..29417a7 100644 --- a/EventSubscriber/LocaleSubscriber.php +++ b/EventSubscriber/LocaleSubscriber.php @@ -33,9 +33,27 @@ class LocaleSubscriber implements EventSubscriberInterface { //Save preferred locale in session $request->getSession()->set('_locale', $preferred); + //Send vary header as current page locale depend on it + header('Vary: accept-language'); + + //Set locale + $request->setLocale($preferred); + + //Set default locale + $request->setDefaultLocale($preferred); + + //Get router context + $context = $this->router->getContext(); + + //Set context locale + $context->setParameter('_locale', $preferred); + + //Set back router context + $this->router->setContext($context); + //Generate current route with preferred language //XXX: may trigger a Symfony\Component\Routing\Exception\RouteNotFoundException if route is not found for preferred locale - $uri = $this->router->generate( + /*$uri = $this->router->generate( //Current route $request->get('_route'), //Force preferred locale @@ -43,7 +61,7 @@ class LocaleSubscriber implements EventSubscriberInterface { ); //Regenerate route with preferred locale - $event->setResponse(new RedirectResponse($uri, 302)); + $event->setResponse(new RedirectResponse($uri, 302));*/ //End process return;