function FieldItemList::defaultValuesFormValidate

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Field/FieldItemList.php \Drupal\Core\Field\FieldItemList::defaultValuesFormValidate()
  2. 8.9.x core/lib/Drupal/Core/Field/FieldItemList.php \Drupal\Core\Field\FieldItemList::defaultValuesFormValidate()
  3. 11.x core/lib/Drupal/Core/Field/FieldItemList.php \Drupal\Core\Field\FieldItemList::defaultValuesFormValidate()

Validates the submitted default value.

Invoked from \Drupal\field_ui\Form\FieldConfigEditForm to allow administrators to configure instance-level default value.

Parameters

array $element: The default value form element.

array $form: The form where the settings form is being included in.

\Drupal\Core\Form\FormStateInterface $form_state: The form state of the (entire) configuration form.

Overrides FieldItemListInterface::defaultValuesFormValidate

1 call to FieldItemList::defaultValuesFormValidate()
TextFieldItemList::defaultValuesFormValidate in core/modules/text/src/Plugin/Field/FieldType/TextFieldItemList.php
Validates the submitted default value.
2 methods override FieldItemList::defaultValuesFormValidate()
DateTimeFieldItemList::defaultValuesFormValidate in core/modules/datetime/src/Plugin/Field/FieldType/DateTimeFieldItemList.php
Validates the submitted default value.
TextFieldItemList::defaultValuesFormValidate in core/modules/text/src/Plugin/Field/FieldType/TextFieldItemList.php
Validates the submitted default value.

File

core/lib/Drupal/Core/Field/FieldItemList.php, line 300

Class

FieldItemList
Represents an entity field; that is, a list of field item objects.

Namespace

Drupal\Core\Field

Code

public function defaultValuesFormValidate(array $element, array &$form, FormStateInterface $form_state) {
  // Extract the submitted value, and validate it.
  if ($widget = $this->defaultValueWidget($form_state)) {
    $widget->extractFormValues($this, $element, $form_state);
    // Force a non-required field definition.
    // @see self::defaultValueWidget().
    $this->getFieldDefinition()
      ->setRequired(FALSE);
    $violations = $this->validate();
    // Assign reported errors to the correct form element.
    if (count($violations)) {
      $widget->flagErrors($this, $violations, $element, $form_state);
    }
  }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.