function defaultconfig_disable_fields in Default config 7
1 string reference to 'defaultconfig_disable_fields'
- defaultconfig_defaultconfig_components in ./
defaultconfig.module - Implements hook_defaultconfig_components().
File
- ./
defaultconfig.module, line 223 - main module file.
Code
function defaultconfig_disable_fields($component, $default_fields, $module = FALSE) {
field_info_cache_clear();
// We need to know what fields are defined by features.
module_load_include('inc', 'features', 'features.export');
features_include();
features_include_defaults(array(
'field',
));
$features_fields = features_get_default('field');
if (isset($default_fields)) {
foreach ($default_fields as $name => $field) {
// Do not interfere with fields exported by features.
if (!isset($features_fields[$name])) {
// We only care about fields that are already created.
$field_config = $field['field_config'];
if ($existing_field = field_info_field($field_config['field_name'])) {
// Only a field can be marked as inactive, so we can't do anything
// about the instances unfortunately.
$field_config['active'] = 0;
field_update_field($field_config);
}
variable_set('menu_rebuild_needed', TRUE);
}
}
}
}