Same name and namespace in other branches
  1. 8.9.x core/lib/Drupal/Core/Render/Element/Email.php \Drupal\Core\Render\Element\Email::validateEmail()
  2. 9 core/lib/Drupal/Core/Render/Element/Email.php \Drupal\Core\Render\Element\Email::validateEmail()

Form element validation handler for #type 'email'.

Note that #maxlength and #required is validated by _form_validate() already.

File

core/lib/Drupal/Core/Render/Element/Email.php, line 74

Class

Email

Namespace

Drupal\Core\Render\Element

Code

public static function validateEmail(&$element, FormStateInterface $form_state, &$complete_form) {
  $value = trim($element['#value']);
  $form_state
    ->setValueForElement($element, $value);
  if ($value !== '' && !\Drupal::service('email.validator')
    ->isValid($value)) {
    $form_state
      ->setError($element, t('The email address %mail is not valid. Use the format user@example.com.', [
      '%mail' => $value,
    ]));
  }
}