/**
  * @param Request       $request
  * @param Attachment    $attachment
  * @param ImageInstance $imageInstance
  *
  * @return JsonResponse|\Symfony\Component\HttpFoundation\Response
  */
 public function editAction(Request $request, Attachment $attachment, ImageInstance $imageInstance)
 {
     $em = $this->getDoctrine()->getManager();
     $findCurrentDimensions = $em->getRepository('BigfishMediaBundle:Attachment')->findDimensions($attachment->getId(), $imageInstance->getId());
     $form = $this->createForm(new ImageCollectionType($findCurrentDimensions));
     $form->handleRequest($request);
     if ($form->isValid()) {
         foreach ($findCurrentDimensions as $cropping) {
             $exists = $em->getRepository('BigfishMediaBundle:ImageCropping')->findOneBy(array('attachment' => $attachment, 'instance' => $imageInstance->getId(), 'id' => $cropping->getId()));
             $generatedCropping = $this->container->get('bigfish.media.cropping.handler')->initialize($attachment, $cropping, $exists)->execute();
             $em->persist($generatedCropping);
         }
         $em->flush();
         return new JsonResponse(array('success' => true, 'currentUrl' => $this->generateUrl('media_form', array('value' => $imageInstance->getId()))));
     }
     return $this->render('BigfishMediaBundle:Default:edit.html.twig', array('attachment' => $attachment, 'selected' => $request->get('selected'), 'form' => $form->createView(), 'dimensions' => $findCurrentDimensions, 'actionUrl' => $this->generateUrl('media_edit', array('attachment' => $attachment->getId(), 'imageInstance' => $imageInstance->getId()))));
 }
 public function buildForm(FormBuilderInterface $builder, array $options)
 {
     $builder->add('instance_id', 'hidden', array('data' => $this->instance->getId(), 'constraints' => array(new EqualTo(array('value' => $this->instance->getId())))));
 }