/**
  * Maps Repository Content to the Site Content.
  *
  * @param \eZ\Publish\API\Repository\Values\Content\Content $content
  * @param string $languageCode
  *
  * @return \Netgen\EzPlatformSiteApi\Core\Site\Values\Content
  */
 public function mapContent(APIContent $content, $languageCode)
 {
     $contentType = $this->contentTypeService->loadContentType($content->contentInfo->contentTypeId);
     $fields = $content->getFieldsByLanguage($languageCode);
     $fieldsData = [];
     foreach ($fields as $field) {
         $fieldsData[] = $this->mapFieldData($field, $contentType);
     }
     return new Content(['_fields_data' => $fieldsData, 'contentInfo' => $this->mapContentInfo($content->versionInfo, $languageCode, $contentType), 'innerContent' => $content]);
 }
 /**
  * Method for parsing ezobjectrelation field.
  * For now related fields refer to images.
  *
  * @param \eZ\Publish\API\Repository\Values\Content\Field $field
  * @param \eZ\Publish\API\Repository\Values\Content\Content $content
  * @param string $language
  * @param string $imageFieldIdentifier
  *
  * @return string
  */
 public function ezobjectrelation(Field $field, Content $content, $language, $imageFieldIdentifier)
 {
     $fields = $content->getFieldsByLanguage($language);
     foreach ($fields as $type => $field) {
         if ($type == $imageFieldIdentifier) {
             return $this->ezimage($field, $content);
         }
     }
     return '';
 }
 /**
  * This method returns the fields for a given language and non translatable fields
  *
  * If note set the initialLanguage of the content version is used.
  *
  * @param string $languageCode
  *
  * @return \eZ\Publish\API\Repository\Values\Content\Field[] With field identifier as keys
  */
 public function getFieldsByLanguage($languageCode = null)
 {
     return $this->content->getFieldsByLanguage($languageCode);
 }
 public function getFirstFilledImageFieldIdentifier(Content $content)
 {
     foreach ($content->getFieldsByLanguage() as $field) {
         $fieldTypeIdentifier = $this->fieldHelper->getFieldDefinition($content->contentInfo, $field->fieldDefIdentifier)->fieldTypeIdentifier;
         if ($fieldTypeIdentifier !== 'ezimage') {
             continue;
         }
         if ($this->fieldHelper->isFieldEmpty($content, $field->fieldDefIdentifier)) {
             continue;
         }
         return $field->fieldDefIdentifier;
     }
     return null;
 }