示例#1
0
 public function vueAction(Saison $saison)
 {
     $em = $this->getDoctrine()->getManager();
     $session = $this->getRequest()->getSession();
     $request = $this->getRequest();
     $hotel = $saison->getHotel();
     foreach ($hotel->getVues() as $vue) {
         $verif = $em->getRepository("BackHotelTunisieBundle:SaisonVue")->findBy(array('saison' => $saison, 'vue' => $vue));
         if (count($verif) == 0) {
             $saisonVue = new SaisonVue();
             $saisonVue->setVue($vue);
             $saison->addVue($saisonVue);
         }
     }
     $form = $this->createForm(new SaisonVType(), $saison);
     $form->add('vues', 'collection', array('type' => new SaisonVueType($saison->getHotel()->getId())));
     if ($request->isMethod("POST")) {
         $form->bind($request);
         if ($form->isValid()) {
             $saison = $form->getData();
             foreach ($saison->getVues() as $Vue) {
                 $em->persist($Vue->setSaison($saison));
             }
             $em->flush();
             $session->getFlashBag()->add('success', " Votre saison de base a été modifié avec succées ");
             return $this->redirect($this->generateUrl("VuesSaison", array('id' => $saison->getId())));
         }
     }
     return $this->render('BackHotelTunisieBundle:Saisons:vue.html.twig', array('hotel' => $hotel, 'saison' => $saison, 'form' => $form->createView()));
 }