function LanguageAddForm::save

Same name and namespace 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. 11.x 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.