Soanta Admin Bundle Locale
Tengo un problema con la traducción. yo suelo
symfony 2.7sonata admin-bundle 2.3He creado el oyente de inicio de sesión interactivo, cuando el usuario inicia sesión en la aplicación, obtengo la configuración regional del usuario y configuro la sesión _locale, pero esto se ignora en sonata.
El oyente es
class UserLocaleListener {
/**
* @var Session
*/
private $container;
public function __construct(Session $session)
{
$this->session = $session;
}
public function onInteractiveLogin(InteractiveLoginEvent $event)
{
$request = $event->getRequest();
$user = $event->getAuthenticationToken()->getUser();
if (null !== $user->getLocale()) {
$this->session->set('_locale', $user->getLocale());
//$request->setLocale($user->getLocale());
var_dump($request->getSession()->get('_locale'));
}
}
}
en service.yml agregar
app.user_locale_listener:
class: xxxxxx\xxxxxxxx\EventListener\UserLocaleListener
arguments: ["@session"]
tags:
- { name: kernel.event_listener, event: security.interactive_login, method: onInteractiveLogin }
¿Dónde está mi error?