You are here

public function PageReorderVariantsForm::submitForm in Page Manager 8

Same name and namespace in other branches
  1. 8.4 page_manager_ui/src/Form/PageReorderVariantsForm.php \Drupal\page_manager_ui\Form\PageReorderVariantsForm::submitForm()

Form submission handler.

Parameters

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

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

Overrides FormInterface::submitForm

File

page_manager_ui/src/Form/PageReorderVariantsForm.php, line 129
Contains Drupal\page_manager_ui\Form\PageReorderVariantsForm.

Class

PageReorderVariantsForm
Provides a form for adding a variant.

Namespace

Drupal\page_manager_ui\Form

Code

public function submitForm(array &$form, FormStateInterface $form_state) {
  $cached_values = $form_state
    ->getTemporaryValue('wizard');

  /** @var \Drupal\page_manager\Entity\Page $page */
  $page = $cached_values['page'];
  foreach ($form_state
    ->getValue('variants') as $id => $values) {
    if ($page_variant = $page
      ->getVariant($id)) {
      $page_variant
        ->setWeight($values['weight']);
    }
  }
  $form_state
    ->setRedirect('entity.page.edit_form', [
    'machine_name' => $page
      ->id(),
    'step' => 'general',
  ]);
  $this->tempstore
    ->get($this
    ->getTempstoreId())
    ->set($page
    ->id(), $cached_values);
}