Same name in other branches
- 8.x-1.x src/ExifContent.php \Drupal\exif\ExifContent::getImageFieldsMetadata()
List fields that contains exif metadata.
Paramètres
\Drupal\Core\Entity\FieldableEntityInterface $entity:
$ar_exif_fields:
$image_fields:
Return value
array|bool Returns a boolean.
Throws
\Drupal\Core\TypedData\Exception\MissingDataException
1 call to ExifContent::getImageFieldsMetadata()
- ExifContent::entity_insert_update dans src/
ExifContent.php - Main entry of the module.
Fichier
-
src/
ExifContent.php, line 303
Classe
- ExifContent
- Class ExifContent make link between drupal content and file content.
Namespace
Drupal\exifCode
private function getImageFieldsMetadata(FieldableEntityInterface $entity, &$ar_exif_fields, $image_fields) {
$result = [];
if (empty($ar_exif_fields)) {
return TRUE;
}
if (empty($image_fields)) {
return FALSE;
}
foreach ($ar_exif_fields as $drupal_field => $metadata_settings) {
$field_image_name = $metadata_settings['image_field'];
if (empty($image_fields[$field_image_name])) {
$result[$field_image_name] = [];
}
else {
$images_descriptor = $this->getFileUriAndLanguage($entity, $field_image_name);
$fullmetadata = [];
$language = NULL;
if (!empty($images_descriptor)) {
foreach ($images_descriptor as $index => $image_descriptor) {
$fullmetadata[$index] = $this->getDataFromFileUri($image_descriptor['uri']);
$language = $image_descriptor['language'];
}
}
$result[$field_image_name] = $fullmetadata;
$ar_exif_fields[$drupal_field]['language'] = $language;
}
}
return $result;
}