/** * Set featured image Accommodation * @param Request $request * @param Gallery $photo * @param $accommodationId * @return \Symfony\Component\HttpFoundation\RedirectResponse */ public function setFeaturedImageAction(Request $request, Gallery $photo) { $em = $this->getDoctrine()->getManager(); $session = $request->getSession(); $galleryRep = $em->getRepository('AppBundle:Gallery'); $accommodationId = $photo->getAccommodation()->getId(); try { $gallery = $galleryRep->getGallery($accommodationId); foreach ($gallery as $galleryPhoto) { $galleryPhoto->setFeaturedImage(0); } $photo->setFeaturedImage(1); $em->persist($photo); $em->flush(); $session->getFlashBag()->add('msgSuccess', $this->get('translator')->trans('featured_image_success')); if ($request->get('_route') == 'app_featuredImage_steps_accommodation') { return $this->redirect($this->generateUrl('app_profile_step_6', array('id' => $accommodationId))); } else { return $this->redirect($this->generateUrl('app_accommodation_edit', array('id' => $accommodationId))); } } catch (\Exception $e) { $session->getFlashBag()->add('msgError', $e->getMessage()); if ($request->get('_route') == 'app_featuredImage_steps_accommodation') { return $this->redirect($this->generateUrl('app_profile_step_6', array('id' => $accommodationId))); } else { return $this->redirect($this->generateUrl('app_accommodation_edit', array('id' => $accommodationId))); } } }
/** * Delete Accommodation photo * @param Request $request * @param Gallery $photo * @return \Symfony\Component\HttpFoundation\RedirectResponse */ public function deleteAccommodationPhotoAction(Request $request, Gallery $photo) { $em = $this->getDoctrine()->getManager(); $accommodation = $photo->getAccommodation(); $session = $request->getSession(); try { $em->remove($photo); $em->flush(); $session->getFlashBag()->add('msgSuccess', $this->get('translator')->trans('delete_success')); } catch (\Exception $e) { $session->getFlashBag()->add('msgError', $e->getMessage()); } return $this->redirect($this->generateUrl('app_profile_step_6', array('id' => $accommodation->getId()))); }