function ContactFormEditForm::validateForm

Same name and namespace in other branches
  1. 8.9.x core/modules/contact/src/ContactFormEditForm.php \Drupal\contact\ContactFormEditForm::validateForm()
  2. 10 core/modules/contact/src/ContactFormEditForm.php \Drupal\contact\ContactFormEditForm::validateForm()
  3. 11.x core/modules/contact/src/ContactFormEditForm.php \Drupal\contact\ContactFormEditForm::validateForm()

Overrides FormBase::validateForm

File

core/modules/contact/src/ContactFormEditForm.php, line 137

Class

ContactFormEditForm
Base form for contact form edit forms.

Namespace

Drupal\contact

Code

public function validateForm(array &$form, FormStateInterface $form_state) {
    parent::validateForm($form, $form_state);
    // Validate and each email recipient.
    $recipients = explode(',', $form_state->getValue('recipients'));
    foreach ($recipients as &$recipient) {
        $recipient = trim($recipient);
        if (!$this->emailValidator
            ->isValid($recipient)) {
            $form_state->setErrorByName('recipients', $this->t('%recipient is an invalid email address.', [
                '%recipient' => $recipient,
            ]));
        }
    }
    $form_state->setValue('recipients', $recipients);
    $redirect_url = $form_state->getValue('redirect');
    if ($redirect_url && $this->pathValidator
        ->isValid($redirect_url)) {
        if (mb_substr($redirect_url, 0, 1) !== '/') {
            $form_state->setErrorByName('redirect', $this->t('The path should start with /.'));
        }
    }
}

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