public function modalAction(Request $request) { $image = null; if (null !== ($filename = $request->get('filename', null))) { $image = $this->imageManager->findByFilename($filename); } return $this->templating->renderResponse('SilvestraMediaBundle:Form:modal.html.twig', array('image' => $image)); }
/** * {@inheritdoc} */ public function findByFilename($filename) { foreach ($this->images as $image) { if ($filename === $image->getFilename()) { return $image; } } return $this->defaultManager->findByFilename($filename); }
/** * Generate unique filename. * * @param string $originalFilename * * @return string */ public function generateUniqueFilename($originalFilename) { $index = 0; $filename = pathinfo($originalFilename, PATHINFO_FILENAME); $extension = pathinfo($originalFilename, PATHINFO_EXTENSION); while ($this->imageManager->findByFilename($originalFilename)) { $index++; $originalFilename = $filename . '-' . $index . '.' . $extension; } return $originalFilename; }
public function cropAction(Request $request) { $coordinates = $request->get('coordinates', null); $filename = $request->get('filename', null); if (!$filename || null === $coordinates) { throw new NotFoundHttpException('Invalid coordinates or filename request parameters!'); } $image = $this->imageManager->findByFilename($filename); if (null === $image) { throw new NotFoundImageException('Image not found!'); } $data = $this->imageCropHandler->process($coordinates, $image); $data['thumbnail_path'] = $this->imageResizer->resize($image->getPath(), array(150, 150), ImageResizerInterface::INSET); return new JsonResponse($data); }
/** * Reverse transform. * * @param ImageInterface $image * * @return ImageInterface * * @throws TransformationFailedException */ public function reverseTransform($image) { if (null === $image) { return null; } $filename = $image->getFilename(); if (empty($filename)) { return null; } if ($this->preFilename && $this->preFilename !== $filename) { $this->imageManager->remove($image); } $image = $this->imageManager->findByFilename($filename); if (null === $image) { throw new TransformationFailedException(); } $image->setTemporary(false); return $image; }