diff --git a/src/Mmi/Bundle/EnigmaBundle/Controller/DefaultController.php b/src/Mmi/Bundle/EnigmaBundle/Controller/DefaultController.php index 1718128..3b7f676 100644 --- a/src/Mmi/Bundle/EnigmaBundle/Controller/DefaultController.php +++ b/src/Mmi/Bundle/EnigmaBundle/Controller/DefaultController.php @@ -13,15 +13,21 @@ use Symfony\Component\Form\Extension\Core\Type\PasswordType; class DefaultController extends Controller { /** - * @Route("/enigma/?", name="enigma") + * @Route("/enigma/{enigma}", name="enigma", requirements={"enigma": "\w{32}"}) * @Template() */ - public function indexAction() + public function indexAction($enigma = null) { if (!$this->get('session')->get('user')) { + $this->get('session')->set( + 'redirect_to', + $this->generateUrl('enigma', ['enigma' => null !== $enigma ? $enigma : null]) + ); + return $this->redirectToRoute('enigma_login'); } + return []; } @@ -31,8 +37,11 @@ class DefaultController extends Controller */ public function loginAction(Request $request) { + $redirectTo = $this->get('session')->get('redirect_to'); + $redirect = $redirectTo ? $this->redirect($redirectTo) : $this->redirectToRoute('enigma'); + if ($this->get('session')->get('user')) { - return $this->redirectToRoute('enigma'); + return $redirect; } $form = $this->createFormBuilder() @@ -57,7 +66,7 @@ class DefaultController extends Controller } else { $this->get('session')->set('user', $user); - return $this->redirectToRoute('enigma'); + return $redirect; } } } diff --git a/src/Mmi/Bundle/EnigmaBundle/Resources/views/Default/index.html.twig b/src/Mmi/Bundle/EnigmaBundle/Resources/views/Default/index.html.twig index 5525bfa..503f6b3 100644 --- a/src/Mmi/Bundle/EnigmaBundle/Resources/views/Default/index.html.twig +++ b/src/Mmi/Bundle/EnigmaBundle/Resources/views/Default/index.html.twig @@ -1 +1,17 @@ -{% extends "MmiEnigmaBundle:Default:base.html.twig" %} + + + + + EnigMMI + + + + + + + + +

Il faut flasher un qrcode ;)

+ + +