function LanguageAddForm::save

Same name in other branches
  1. 9 core/modules/language/src/Form/LanguageAddForm.php \Drupal\language\Form\LanguageAddForm::save()
  2. 8.9.x core/modules/language/src/Form/LanguageAddForm.php \Drupal\language\Form\LanguageAddForm::save()
  3. 10 core/modules/language/src/Form/LanguageAddForm.php \Drupal\language\Form\LanguageAddForm::save()

Overrides EntityForm::save

File

core/modules/language/src/Form/LanguageAddForm.php, line 87

Class

LanguageAddForm
Controller for language addition forms.

Namespace

Drupal\language\Form

Code

public function save(array $form, FormStateInterface $form_state) {
    parent::save($form, $form_state);
    $t_args = [
        '%language' => $this->entity
            ->label(),
        '%langcode' => $this->entity
            ->id(),
    ];
    $this->logger('language')
        ->notice('The %language (%langcode) language has been created.', $t_args);
    $this->messenger()
        ->addStatus($this->t('The language %language has been created and can now be used.', $t_args));
    if ($this->moduleHandler
        ->moduleExists('block')) {
        // Tell the user they have the option to add a language switcher block
        // to their theme so they can switch between the languages.
        $this->messenger()
            ->addStatus($this->t('Use one of the language switcher blocks to allow site visitors to switch between languages. You can enable these blocks on the <a href=":block-admin">block administration page</a>.', [
            ':block-admin' => Url::fromRoute('block.admin_display')->toString(),
        ]));
    }
    $form_state->setRedirectUrl($this->entity
        ->toUrl('collection'));
}

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