Ejemplo n.º 1
0
 /**
  * Add new video
  * @param Request $request
  * @param Accommodation $accommodation
  * @return \Symfony\Component\HttpFoundation\RedirectResponse
  */
 public function videoNewAction(Request $request, Accommodation $accommodation)
 {
     $session = $request->getSession();
     if ($accommodation->getVideos()->count() >= 5) {
         $session->getFlashBag()->add('msgError', $this->get('translator')->trans('video_limit_reached'));
         if ($request->get('_route') == 'app_video_step6_new') {
             return $this->redirect($this->generateUrl('app_profile_step_6', array('id' => $accommodation->getId())));
         } else {
             return $this->redirect($this->generateUrl('app_accommodation_edit', array('id' => $accommodation->getId())));
         }
     }
     $em = $this->getDoctrine()->getManager();
     $video = new Video();
     $form = $this->createForm(new VideoType(), $video);
     $form->handleRequest($request);
     if ($form->isValid()) {
         $video->setAccommodation($accommodation);
         $em->persist($video);
         $em->flush();
         $session->getFlashBag()->add('msgSuccess', $this->get('translator')->trans('create_success'));
         return $this->redirect($this->generateUrl('admin_accommodation_edit', array('id' => $accommodation->getId())));
     }
     $session->getFlashBag()->add('msgError', $this->get('translator')->trans('create_error'));
     return $this->redirect($this->generateUrl('admin_accommodation_edit', array('id' => $accommodation->getId())));
 }