/**
  * @Route("/taches/ajout")
  * @Template()
  */
 public function ajoutAction(Request $request)
 {
     $session = $request->getSession();
     //0 valeur par defaut si vide
     $id_user = $session->get('user', 0);
     if ($id_user == 0) {
         $request->getSession()->getFlashBag()->add('error', 'OULAH ! Il s\'est passé un truc pas net O.o. Tu t\'es déco ?');
         return $this->redirect($this->generateUrl('corvee_taches_homepage', array()));
     }
     $tache = new Tache();
     $tache->setDatePrevu(new \Datetime());
     $em = $this->getDoctrine()->getManager();
     //A soi par defaut
     $user = $em->getRepository('Corvees\\TachesBundle\\Entity\\User')->find($id_user);
     $tache->setFkAuteur($user);
     $tache->setFkAssigne($user);
     $form = $this->get('form.factory')->create(new TacheType(), $tache);
     if ($form->handleRequest($request)->isValid()) {
         $em->persist($tache);
         $em->flush();
         $request->getSession()->getFlashBag()->add('notice', 'Tache bien enregistrée.');
         return $this->redirect($this->generateUrl('corvee_taches_homepage', array()));
     }
     return array('form' => $form->createView(), 'route' => 'formulaire_tache_ajout');
 }
Exemple #2
0
 public function load(ObjectManager $manager)
 {
     // Liste des noms de famille à ajouter avec leur couleur (blanc par defaut)
     $liste = array(array('titre' => 'Création de taches tests', 'auteur' => 'Lucie', 'famille' => 'Extérieur', 'difficulte' => 'Ennuyeux', 'date_prevu' => '2015-07-08 15:00:00'), array('titre' => 'Apprendre symfony', 'auteur' => 'Florian', 'difficulte' => 'Ereintant', 'famille' => 'Extérieur', 'commentaire' => 'Y a qu\'à s\'y mettre'));
     foreach ($liste as $tab_info) {
         //On récupère les objets
         $famille = $manager->getRepository('Corvees\\TachesBundle\\Entity\\Famille')->findOneByTitre($tab_info["famille"]);
         $auteur = $manager->getRepository('Corvees\\TachesBundle\\Entity\\User')->findOneByPrenom($tab_info["auteur"]);
         $difficulte = $manager->getRepository('Corvees\\TachesBundle\\Entity\\Difficulte')->findOneByTitre($tab_info["difficulte"]);
         $tache = new Tache();
         $tache->setFkDifficulte($difficulte);
         $tache->setFkFamille($famille);
         $tache->setFkAuteur($auteur);
         $tache->setTitre($tab_info["titre"]);
         if (isset($tab_info["commentaire"])) {
             $tache->setCommentaire($tab_info["commentaire"]);
         }
         if (isset($tab_info["date_prevu"])) {
             $tache->setDatePrevu(new \DateTime($tab_info["date_prevu"]));
         }
         if (isset($tab_info["assigne"])) {
             $assigne = $manager->getRepository('Corvees\\TachesBundle\\Entity\\User')->findOneByPrenom($tab_info["assigne"]);
             $tache->setFkAssigne($assigne);
         } else {
             $tache->setFkAssigne($auteur);
         }
         // On la persiste
         $manager->persist($tache);
     }
     // On déclenche l'enregistrement de toutes les famille
     $manager->flush();
 }