diff --git a/core/config/schema/core.data_types.schema.yml b/core/config/schema/core.data_types.schema.yml
index 41332e3eea0..e51115de0b9 100644
--- a/core/config/schema/core.data_types.schema.yml
+++ b/core/config/schema/core.data_types.schema.yml
@@ -582,9 +582,9 @@ field.value.entity_reference:
# Schema for the configuration of the Boolean field type.
-field.storage_settings.boolean:
- type: mapping
+field.field_settings.boolean:
label: 'Boolean settings'
+ type: mapping
mapping:
on_label:
type: string
@@ -593,10 +593,6 @@ field.storage_settings.boolean:
type: string
label: 'Off label'
-field.field_settings.boolean:
- label: 'Boolean settings'
- type: mapping
-
field.value.boolean:
type: mapping
mapping:
diff --git a/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/BooleanItem.php b/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/BooleanItem.php
index 1baf7bdd391..563da20a87f 100644
--- a/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/BooleanItem.php
+++ b/core/lib/Drupal/Core/Field/Plugin/Field/FieldType/BooleanItem.php
@@ -31,11 +31,11 @@ class BooleanItem extends FieldItemBase implements OptionsProviderInterface {
/**
* {@inheritdoc}
*/
- public static function defaultStorageSettings() {
+ public static function defaultFieldSettings() {
return array(
'on_label' => t('On'),
'off_label' => t('Off'),
- ) + parent::defaultStorageSettings();
+ ) + parent::defaultFieldSettings();
}
/**
@@ -66,7 +66,9 @@ class BooleanItem extends FieldItemBase implements OptionsProviderInterface {
/**
* {@inheritdoc}
*/
- public function storageSettingsForm(array &$form, FormStateInterface $form_state, $has_data) {
+ public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
+ $element = array();
+
$element['on_label'] = array(
'#type' => 'textfield',
'#title' => $this->t('"On" label'),
diff --git a/core/modules/field/src/Tests/Boolean/BooleanFieldTest.php b/core/modules/field/src/Tests/Boolean/BooleanFieldTest.php
index 50477f55a87..3e3492d4ca8 100644
--- a/core/modules/field/src/Tests/Boolean/BooleanFieldTest.php
+++ b/core/modules/field/src/Tests/Boolean/BooleanFieldTest.php
@@ -69,10 +69,6 @@ class BooleanFieldTest extends WebTestBase {
'field_name' => $field_name,
'entity_type' => 'entity_test',
'type' => 'boolean',
- 'settings' => array(
- 'on_label' => $on,
- 'off_label' => $off,
- ),
));
$this->field_storage->save();
$this->field = FieldConfig::create(array(
@@ -81,6 +77,10 @@ class BooleanFieldTest extends WebTestBase {
'bundle' => 'entity_test',
'label' => $label,
'required' => TRUE,
+ 'settings' => array(
+ 'on_label' => $on,
+ 'off_label' => $off,
+ ),
));
$this->field->save();
@@ -118,6 +118,16 @@ class BooleanFieldTest extends WebTestBase {
$this->setRawContent(drupal_render($content));
$this->assertRaw('
' . $on . '
');
+ // Test if we can change the on label.
+ $on = $this->randomMachineName();
+ $edit = array(
+ 'field[settings][on_label]' => $on,
+ );
+ $this->drupalPostForm('entity_test/structure/entity_test/fields/entity_test.entity_test.' . $field_name, $edit, t('Save settings'));
+ // Check if we see the updated labels in the creation form.
+ $this->drupalGet('entity_test/add');
+ $this->assertRaw($on);
+
// Test the display_label option.
entity_get_form_display('entity_test', 'entity_test', 'default')
->setComponent($field_name, array(
@@ -168,9 +178,9 @@ class BooleanFieldTest extends WebTestBase {
);
// Test the boolean field settings.
- $this->drupalGet('entity_test/structure/entity_test/fields/entity_test.entity_test.' . $field_name . '/storage');
- $this->assertFieldById('edit-field-storage-settings-on-label', $on);
- $this->assertFieldById('edit-field-storage-settings-off-label', $off);
+ $this->drupalGet('entity_test/structure/entity_test/fields/entity_test.entity_test.' . $field_name);
+ $this->assertFieldById('edit-field-settings-on-label', $on);
+ $this->assertFieldById('edit-field-settings-off-label', $off);
}
}
diff --git a/core/modules/field/src/Tests/Boolean/BooleanFormatterSettingsTest.php b/core/modules/field/src/Tests/Boolean/BooleanFormatterSettingsTest.php
index 2f0ca0efb74..5152a185ef6 100644
--- a/core/modules/field/src/Tests/Boolean/BooleanFormatterSettingsTest.php
+++ b/core/modules/field/src/Tests/Boolean/BooleanFormatterSettingsTest.php
@@ -111,11 +111,11 @@ class BooleanFormatterSettingsTest extends WebTestBase {
foreach ($settings as $values) {
// Set up the field settings.
- $this->drupalGet('admin/structure/types/manage/' . $this->bundle . '/fields/node.' . $this->bundle . '.' . $this->fieldName . '/storage');
+ $this->drupalGet('admin/structure/types/manage/' . $this->bundle . '/fields/node.' . $this->bundle . '.' . $this->fieldName);
$this->drupalPostForm(NULL, array(
- 'field_storage[settings][on_label]' => $values[0],
- 'field_storage[settings][off_label]' => $values[1],
- ), 'Save field settings');
+ 'field[settings][on_label]' => $values[0],
+ 'field[settings][off_label]' => $values[1],
+ ), 'Save settings');
// Open the Manage Display page and trigger the field settings form.
$this->drupalGet('admin/structure/types/manage/' . $this->bundle . '/display');
diff --git a/core/modules/forum/config/install/field.field.taxonomy_term.forums.forum_container.yml b/core/modules/forum/config/install/field.field.taxonomy_term.forums.forum_container.yml
index 3aeedc1d22c..8565083cc8e 100644
--- a/core/modules/forum/config/install/field.field.taxonomy_term.forums.forum_container.yml
+++ b/core/modules/forum/config/install/field.field.taxonomy_term.forums.forum_container.yml
@@ -16,6 +16,8 @@ default_value:
-
value: 0
default_value_callback: ''
-settings: { }
+settings:
+ on_label: Yes
+ off_label: No
third_party_settings: { }
field_type: boolean
diff --git a/core/modules/forum/config/install/field.storage.taxonomy_term.forum_container.yml b/core/modules/forum/config/install/field.storage.taxonomy_term.forum_container.yml
index d57b575df60..3427c466c64 100644
--- a/core/modules/forum/config/install/field.storage.taxonomy_term.forum_container.yml
+++ b/core/modules/forum/config/install/field.storage.taxonomy_term.forum_container.yml
@@ -7,9 +7,7 @@ id: taxonomy_term.forum_container
field_name: forum_container
entity_type: taxonomy_term
type: boolean
-settings:
- on_label: Yes
- off_label: No
+settings: { }
module: core
locked: true
cardinality: 1
diff --git a/core/modules/node/src/Tests/NodeAccessLanguageAwareCombinationTest.php b/core/modules/node/src/Tests/NodeAccessLanguageAwareCombinationTest.php
index 9fcbca546ae..c5ed0fefb57 100644
--- a/core/modules/node/src/Tests/NodeAccessLanguageAwareCombinationTest.php
+++ b/core/modules/node/src/Tests/NodeAccessLanguageAwareCombinationTest.php
@@ -58,10 +58,6 @@ class NodeAccessLanguageAwareCombinationTest extends NodeTestBase {
'entity_type' => 'node',
'type' => 'boolean',
'cardinality' => 1,
- 'settings' => array(
- 'on_label' => 'Private',
- 'off_label' => 'Not private',
- ),
));
$field_storage->save();
@@ -71,6 +67,10 @@ class NodeAccessLanguageAwareCombinationTest extends NodeTestBase {
'widget' => array(
'type' => 'options_buttons',
),
+ 'settings' => array(
+ 'on_label' => 'Private',
+ 'off_label' => 'Not private',
+ ),
))->save();
// After enabling a node access module, the access table has to be rebuild.
diff --git a/core/modules/node/src/Tests/NodeAccessLanguageAwareTest.php b/core/modules/node/src/Tests/NodeAccessLanguageAwareTest.php
index 77d8ce9aa75..a9ee922dd46 100644
--- a/core/modules/node/src/Tests/NodeAccessLanguageAwareTest.php
+++ b/core/modules/node/src/Tests/NodeAccessLanguageAwareTest.php
@@ -56,10 +56,6 @@ class NodeAccessLanguageAwareTest extends NodeTestBase {
'entity_type' => 'node',
'type' => 'boolean',
'cardinality' => 1,
- 'settings' => array(
- 'on_label' => 'Private',
- 'off_label' => 'Not private',
- ),
));
$field_storage->save();
@@ -69,6 +65,10 @@ class NodeAccessLanguageAwareTest extends NodeTestBase {
'widget' => array(
'type' => 'options_buttons',
),
+ 'settings' => array(
+ 'on_label' => 'Private',
+ 'off_label' => 'Not private',
+ ),
))->save();
// After enabling a node access module, the access table has to be rebuild.