Przekieruj, jeśli użytkownik jest zalogowany
Buduję aplikację internetową z Symfony 2, używając pakietu FOSUserBundle.
Użytkownicy tworzą konto, logują się i zaczynają korzystać z aplikacji.
Chcę teraz, aby użytkownik został przekierowany na swoje konto z dowolnej strony, na której się znajduje, jeśli jest zalogowany.
To zawiera:
Zasadniczo kod byłby następujący:
<code>$container = $this->container; $accountRouteName = "DanyukiWebappBundle_account"; if( $container->get('security.context')->isGranted('IS_AUTHENTICATED_FULLY') ){ // authenticated (NON anonymous) $routeName = $container->get('request')->get('_route'); if ($routeName != $accountRouteName) { return $this->redirect($this->generateUrl($accountRouteName)); } } </code>
Problem polega na tym, że nie wiem, gdzie powinien iść ten kod.
Powinien być wykonany na każde żądanie. W Symfony 1 użyłbym filtra.