Parameters

array $fields_of_bundle:

Return value

array

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

File

./exif.module, line 823

Code

function _exif_filter_fields_on_widgets(array $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;
}