diff -r 806e57d67020 -r e54dfe4d0b2b vendor/bundles/FOS/UserBundle/Controller/SecurityController.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/bundles/FOS/UserBundle/Controller/SecurityController.php Fri Sep 30 11:24:53 2011 +0200 @@ -0,0 +1,59 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace FOS\UserBundle\Controller; + +use Symfony\Component\DependencyInjection\ContainerAware; +use Symfony\Component\Security\Core\SecurityContext; +use Symfony\Component\Security\Core\Exception\AuthenticationException; + +class SecurityController extends ContainerAware +{ + public function loginAction() + { + $request = $this->container->get('request'); + /* @var $request \Symfony\Component\HttpFoundation\Request */ + $session = $request->getSession(); + /* @var $session \Symfony\Component\HttpFoundation\Session */ + + // get the error if any (works with forward and redirect -- see below) + if ($request->attributes->has(SecurityContext::AUTHENTICATION_ERROR)) { + $error = $request->attributes->get(SecurityContext::AUTHENTICATION_ERROR); + } elseif (null !== $session && $session->has(SecurityContext::AUTHENTICATION_ERROR)) { + $error = $session->get(SecurityContext::AUTHENTICATION_ERROR); + $session->remove(SecurityContext::AUTHENTICATION_ERROR); + } else { + $error = ''; + } + + if ($error) { + // TODO: this is a potential security risk (see http://trac.symfony-project.org/ticket/9523) + $error = $error->getMessage(); + } + // last username entered by the user + $lastUsername = (null === $session) ? '' : $session->get(SecurityContext::LAST_USERNAME); + + return $this->container->get('templating')->renderResponse('FOSUserBundle:Security:login.html.'.$this->container->getParameter('fos_user.template.engine'), array( + 'last_username' => $lastUsername, + 'error' => $error, + )); + } + + public function checkAction() + { + throw new \RuntimeException('You must configure the check path to be handled by the firewall using form_login in your security firewall configuration.'); + } + + public function logoutAction() + { + throw new \RuntimeException('You must activate the logout in your security firewall configuration.'); + } +}