You are here

protected function BlockEntitySettingTrayForm::successfulAjaxSubmit in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/settings_tray/src/Block/BlockEntitySettingTrayForm.php \Drupal\settings_tray\Block\BlockEntitySettingTrayForm::successfulAjaxSubmit()

Allows the form to respond to a successful AJAX submission.

Parameters

array $form: An associative array containing the structure of the form.

\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.

Return value

\Drupal\Core\Ajax\AjaxResponse An AJAX response.

Overrides AjaxFormHelperTrait::successfulAjaxSubmit

File

core/modules/settings_tray/src/Block/BlockEntitySettingTrayForm.php, line 148

Class

BlockEntitySettingTrayForm
Provides form for block instance forms when used in the off-canvas dialog.

Namespace

Drupal\settings_tray\Block

Code

protected function successfulAjaxSubmit(array $form, FormStateInterface $form_state) {
  if ($redirect_url = $this
    ->getRedirectUrl()) {
    $command = new RedirectCommand($redirect_url
      ->setAbsolute()
      ->toString());
  }
  else {

    // Settings Tray always provides a destination.
    throw new \Exception("No destination provided by Settings Tray form");
  }
  $response = new AjaxResponse();
  return $response
    ->addCommand($command);
}