function oa_core_update_field_instances in Open Atrium Core 7.2
Update file field instances when allowed file extensions variable is changed.
Parameters
$old_extensions string list of previous default extensions to update:
1 call to oa_core_update_field_instances()
- oa_core_file_entity_settings_form_submit in ./
oa_core.module - Submit handler for file_entity_settings_form.
File
- ./
oa_core.module, line 2334
Code
function oa_core_update_field_instances($old_extensions = '') {
$instances = field_info_instances();
$file_fields = array(
'fieldable_panels_pane-basic_file-field_basic_file_file',
'field_oa_media',
);
foreach ($instances as $field_instance) {
foreach ($field_instance as $bundle) {
foreach ($bundle as $fieldname => $instance) {
if (in_array($fieldname, $file_fields)) {
$current_extensions = $instance['settings']['file_extensions'];
$file_extensions = variable_get('file_entity_default_allowed_extensions', OA_FILE_EXTENSIONS_DEFAULT);
if (_oa_core_is_default_allowed_extensions($file_extensions)) {
$file_extensions = OA_FILE_EXTENSIONS_DEFAULT;
}
if ($current_extensions == $old_extensions || _oa_core_is_default_allowed_extensions($current_extensions)) {
$instance['settings']['file_extensions'] = $file_extensions;
field_update_instance($instance);
}
}
}
}
}
}