From 88ccba0cf990e8b7ec6bca62e20a19653b987c7f Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Wed, 13 Jan 2016 22:55:59 +0100 Subject: [PATCH 1/3] cycle complet de jeu --- .../Controller/DefaultController.php | 45 ++++++++++++++----- .../Resources/views/Default/ok.html.twig | 1 + 2 files changed, 36 insertions(+), 10 deletions(-) create mode 100644 src/Mmi/Bundle/EnigmaBundle/Resources/views/Default/ok.html.twig diff --git a/src/Mmi/Bundle/EnigmaBundle/Controller/DefaultController.php b/src/Mmi/Bundle/EnigmaBundle/Controller/DefaultController.php index 06d21b3..1a008fd 100644 --- a/src/Mmi/Bundle/EnigmaBundle/Controller/DefaultController.php +++ b/src/Mmi/Bundle/EnigmaBundle/Controller/DefaultController.php @@ -12,6 +12,8 @@ use Symfony\Component\Form\Extension\Core\Type\PasswordType; use DateTime; use Symfony\Component\Form\Extension\Core\Type\TextareaType; use Symfony\Component\Validator\Constraints\NotBlank; +use Mmi\Bundle\EnigmaBundle\Entity\Timer; +use Mmi\Bundle\EnigmaBundle\Entity\Awnser; class DefaultController extends Controller { @@ -64,14 +66,15 @@ class DefaultController extends Controller } $timer = $this + ->getDoctrine() ->getRepository('MmiEnigmaBundle:Timer') ->findOneBy([ - 'team_id' => $this->getUser()->getId(), - 'enigma_id' => $enigma->getId(), + 'team' => $this->getUser(), + 'enigma' => $enigma, ]); if ($timer !== null) { - if (time() - $timer->getDate()->getTimestamp() < 60 * 30) { + if (time() - $timer->getDate()->getTimestamp() >= 60 * 30) { return $this->redirectToRoute('enigma_too_late'); } } else { @@ -79,23 +82,26 @@ class DefaultController extends Controller $timer ->setTeam($this->getUser()) ->setEnigma($enigma) - ->setDate(new DateTime('now')) - ->save(); + ->setDate(new DateTime('now')); + + $em = $this->getDoctrine()->getManager(); + $em->merge($timer); + $em->flush(); } $answer = $this ->getDoctrine() ->getRepository('MmiEnigmaBundle:Awnser') ->findOneBy([ - 'team_id' => $this->getUser()->getId(), - 'enigma_id' => $enigma->getId(), + 'team' => $this->getUser(), + 'enigma' => $enigma, ]); if ($answer !== null) { return $this->redirectToRoute('enigma_answered'); } - $form = $this->createFormBuilder() + $form = $this->createFormBuilder($answer = new Awnser()) ->add('content', TextareaType::class, [ 'required' => true, 'constraints' => [ @@ -109,16 +115,35 @@ class DefaultController extends Controller $form->handleRequest($request); if ($form->isValid()) { - $form->getData()->save(); + // $answer = $form->getData(); + $answer + ->setTeam($this->getUser()) + ->setDate(new DateTime('now')) + ->setEnigma($enigma); + + $em = $this->getDoctrine()->getManager(); + $em->merge($answer); + $em->flush(); } + + return $this->redirectToRoute('enigma_ok'); } - + return [ 'form' => $form->createView(), 'enigma' => $enigma, ]; } + /** + * @Route("/enigma/ok", name="enigma_ok") + * @Template() + */ + public function okAction() + { + return []; + } + /** * @Route("/enigma/oklm", name="enigma_too_late") * @Template() diff --git a/src/Mmi/Bundle/EnigmaBundle/Resources/views/Default/ok.html.twig b/src/Mmi/Bundle/EnigmaBundle/Resources/views/Default/ok.html.twig new file mode 100644 index 0000000..5960abd --- /dev/null +++ b/src/Mmi/Bundle/EnigmaBundle/Resources/views/Default/ok.html.twig @@ -0,0 +1 @@ +Enregistré ! From fdd05bac4cb92ad7ae724e025854fec1e354e00e Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Wed, 13 Jan 2016 23:05:18 +0100 Subject: [PATCH 2/3] Sync --- .gitignore | 1 - .mage/config/environment/.gitignore | 0 .mage/config/environment/production.yml | 19 +++++++++++++++++++ .mage/config/general.yml | 7 +++++++ .mage/logs/.gitignore | 2 ++ .mage/tasks/.gitignore | 0 6 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 .mage/config/environment/.gitignore create mode 100644 .mage/config/environment/production.yml create mode 100644 .mage/config/general.yml create mode 100644 .mage/logs/.gitignore create mode 100644 .mage/tasks/.gitignore diff --git a/.gitignore b/.gitignore index 8b151bd..f616c94 100644 --- a/.gitignore +++ b/.gitignore @@ -14,4 +14,3 @@ /web/bundles/ /tags *.swp -.mage diff --git a/.mage/config/environment/.gitignore b/.mage/config/environment/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/.mage/config/environment/production.yml b/.mage/config/environment/production.yml new file mode 100644 index 0000000..2b55f6d --- /dev/null +++ b/.mage/config/environment/production.yml @@ -0,0 +1,19 @@ +deployment: + user: webdefis48 + from: ./ + to: /services/web/www/defis48.deblan.org/website/ + excludes: + - .git + - var + - app/config/parameters.yml + +releases: + enabled: false + +hosts: + - deblan.org +tasks: + pre-deploy: [] + on-deploy: [] + +verbose_logging: true diff --git a/.mage/config/general.yml b/.mage/config/general.yml new file mode 100644 index 0000000..9aad7ba --- /dev/null +++ b/.mage/config/general.yml @@ -0,0 +1,7 @@ +# global settings +name: +email: +notifications: false +logging: true +maxlogs: 30 +ssh_needs_tty: false diff --git a/.mage/logs/.gitignore b/.mage/logs/.gitignore new file mode 100644 index 0000000..c96a04f --- /dev/null +++ b/.mage/logs/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore \ No newline at end of file diff --git a/.mage/tasks/.gitignore b/.mage/tasks/.gitignore new file mode 100644 index 0000000..e69de29 From ae58c5c0e703524c5e7f6e759e5e0d05d7e1c6aa Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Wed, 13 Jan 2016 23:10:06 +0100 Subject: [PATCH 3/3] Readme --- README.md | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index a9e2eae..633190c 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,8 @@ +Défis 48h +========= + Installation -============ +------------ L'installation est standard à celle d'une application symfony classique. Elle implique cependant la génération de la base de données qui se réalise en 2 étapes : @@ -18,7 +21,7 @@ $ bin/console doctrine:schema:update --force ``` Mise à jour -=========== +----------- ```bash $ git pull origin master @@ -29,10 +32,20 @@ $ bin/console doctrine:schema:update --force ``` Exécution -========= +--------- Serveur de développement : ``` $ bin/console server:run & ``` + +Déploiement +----------- + +Utilisation de mate (`/.mate`) + +``` +$ vendor/bin/mage deploy to:production +``` +