You are here

function _exif_filter_fields_on_widgets in Exif 7

1 call to _exif_filter_fields_on_widgets()
_exif_node_insert_update in ./exif.module
Main entrypoint of the module.

File

./exif.module, line 690

Code

function _exif_filter_fields_on_widgets($fields_of_bundle) {
  $result = array();
  foreach ($fields_of_bundle as $key => $value) {
    if ($value['widget']['type'] == 'exif_readonly') {
      $element = array();
      if ($value['widget']['settings']['exif_field'] == 'naming_convention') {
        $name = substr($key, 6);
      }
      else {
        $name = $value['widget']['settings']['exif_field'];
      }
      $element['metadata_field'] = $name;
      if (isset($value['widget']['settings']['exif_field_separator']) && !empty($value['widget']['settings']['exif_field_separator'])) {
        $element['metadata_field_separator'] = $value['widget']['settings']['exif_field_separator'];
      }
      if (!isset($value['widget']['settings']['image_field']) && isset($value['widget']['settings']['media_generic'])) {
        $element['image_field'] = $value['widget']['settings']['media_generic'];
      }
      else {
        $element['image_field'] = $value['widget']['settings']['image_field'];
      }
      $result[$key] = $element;
    }
  }
  return $result;
}