diff options
Diffstat (limited to 'modules/field_ui/field_ui.admin.inc')
-rw-r--r-- | modules/field_ui/field_ui.admin.inc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/modules/field_ui/field_ui.admin.inc b/modules/field_ui/field_ui.admin.inc index eb94ed6c7..4104e04cf 100644 --- a/modules/field_ui/field_ui.admin.inc +++ b/modules/field_ui/field_ui.admin.inc @@ -787,8 +787,13 @@ function field_ui_existing_field_options($obj_type, $bundle) { if (!($existing_bundle == $bundle && $existing_obj_type == $obj_type)) { foreach ($instances as $instance) { $field = field_info_field($instance['field_name']); - // Don't show locked fields or fields already in the current bundle. - if (empty($field['locked']) && !field_info_instance($obj_type, $field['field_name'], $bundle)) { + // Don't show + // - locked fields, + // - fields already in the current bundle, + // - field that cannot be added to the object type. + if (empty($field['locked']) + && !field_info_instance($obj_type, $field['field_name'], $bundle) + && (empty($field['object_types']) || in_array($obj_type, $field['object_types']))) { $text = t('@type: @field (@label)', array( '@type' => $field_types[$field['type']]['label'], '@label' => t($instance['label']), '@field' => $instance['field_name'], |