Example #1
0
 /**
  * Returns the image variation object for $field/$versionInfo.
  *
  * @param \eZ\Publish\API\Repository\Values\Content\Field $field
  * @param \eZ\Publish\API\Repository\Values\Content\VersionInfo $versionInfo
  * @param string $variationName
  *
  * @return \eZ\Publish\SPI\Variation\Values\Variation
  */
 public function getImageVariation(Field $field, VersionInfo $versionInfo, $variationName)
 {
     try {
         return $this->imageVariationService->getVariation($field, $versionInfo, $variationName);
     } catch (InvalidVariationException $e) {
         if (isset($this->logger)) {
             $this->logger->error("Couldn't get variation '{$variationName}' for image with id {$field->value->id}");
         }
     } catch (SourceImageNotFoundException $e) {
         if (isset($this->logger)) {
             $this->logger->error("Couldn't create variation '{$variationName}' for image with id {$field->value->id} because source image can't be found");
         }
     }
 }
 /**
  * Get the Variation of the Image ( medium )
  *
  * @param mixed  $value
  * @param string $identifier
  * @param string $languageCode
  * @param string $variationName
  *
  * @return string
  */
 protected function getVariation($value, $identifier, $languageCode, $variationName)
 {
     // @todo: I don't know how to do differently here...
     $field = new Field(['value' => $value, 'fieldDefIdentifier' => $identifier, 'languageCode' => $languageCode]);
     $variation = $this->imageVariationService->getVariation($field, new VersionInfo(), $variationName);
     return $variation->uri;
 }
 /**
  * Returns the image variation object for $field/$versionInfo.
  *
  * @param \Netgen\EzPlatformSiteApi\API\Values\Field $field
  * @param string $variationName
  *
  * @return \eZ\Publish\SPI\Variation\Values\Variation
  */
 public function getImageVariation(Field $field, $variationName)
 {
     try {
         return $this->imageVariationService->getVariation($field->innerField, $field->content->versionInfo, $variationName);
     } catch (InvalidVariationException $e) {
         if (isset($this->logger)) {
             $this->logger->error("Couldn't get variation '{$variationName}' for image with id {$field->value->id}");
         }
     } catch (SourceImageNotFoundException $e) {
         if (isset($this->logger)) {
             $this->logger->error("Couldn't create variation '{$variationName}' for image with id {$field->value->id} because source image can't be found");
         }
     } catch (InvalidArgumentException $e) {
         if (isset($this->logger)) {
             $this->logger->error("Couldn't create variation '{$variationName}' for image with id {$field->value->id} because an image could not be created from the given input");
         }
     }
 }
 protected function getVariation($content, $variationName)
 {
     foreach ($content->getFields() as $field) {
         if ($field->fieldDefIdentifier === self::$imageFieldIdentifier) {
             $imageField = $field;
         }
     }
     if (!isset($field)) {
         throw new Exception("Image field not found");
     }
     return $this->imageVariationHandler->getVariation($imageField, $content->versionInfo, $variationName);
 }