diff --git a/core/modules/translation_entity/translation_entity.admin.inc b/core/modules/translation_entity/translation_entity.admin.inc index b4e1c5b..ee24828 100644 --- a/core/modules/translation_entity/translation_entity.admin.inc +++ b/core/modules/translation_entity/translation_entity.admin.inc @@ -96,6 +96,19 @@ function _translation_entity_form_language_content_settings_form_alter(array &$f ); $column_element = translation_entity_field_sync_widget($field, $instance); if ($column_element) { + // Hide column items that are disabled for this field instance. + foreach (array_keys($column_element['#options']) as $column_item) { + if (isset($instance->definition['settings'][$column_item])) { + if (!$instance->definition['settings'][$column_item]) { + unset($column_element['#options'][$column_item]); + } + } + else if (isset($instance->definition['settings'][$column_item . '_field'])) { + if (!$instance->definition['settings'][$column_item . '_field']) { + unset($column_element['#options'][$column_item]); + } + } + } $form['settings'][$entity_type][$bundle]['columns'][$field_name] = $column_element; } }