BatchTestChainedForm.php

Same filename in other branches
  1. 8.9.x core/modules/system/tests/modules/batch_test/src/Form/BatchTestChainedForm.php
  2. 10 core/modules/system/tests/modules/batch_test/src/Form/BatchTestChainedForm.php
  3. 11.x core/modules/system/tests/modules/batch_test/src/Form/BatchTestChainedForm.php

Namespace

Drupal\batch_test\Form

File

core/modules/system/tests/modules/batch_test/src/Form/BatchTestChainedForm.php

View source
<?php

namespace Drupal\batch_test\Form;

use Drupal\Core\Form\FormBase;
use Drupal\Core\Form\FormStateInterface;

/**
 * Generate form of id batch_test_chained_form.
 *
 * @internal
 */
class BatchTestChainedForm extends FormBase {
    
    /**
     * {@inheritdoc}
     */
    public function getFormId() {
        return 'batch_test_chained_form';
    }
    
    /**
     * {@inheritdoc}
     */
    public function buildForm(array $form, FormStateInterface $form_state) {
        // This value is used to test that $form_state persists through batched
        // submit handlers.
        $form['value'] = [
            '#type' => 'textfield',
            '#title' => 'Value',
            '#default_value' => 1,
        ];
        $form['submit'] = [
            '#type' => 'submit',
            '#value' => 'Submit',
        ];
        $form['#submit'] = [
            'Drupal\\batch_test\\Form\\BatchTestChainedForm::batchTestChainedFormSubmit1',
            'Drupal\\batch_test\\Form\\BatchTestChainedForm::batchTestChainedFormSubmit2',
            'Drupal\\batch_test\\Form\\BatchTestChainedForm::batchTestChainedFormSubmit3',
            'Drupal\\batch_test\\Form\\BatchTestChainedForm::batchTestChainedFormSubmit4',
        ];
        return $form;
    }
    
    /**
     * {@inheritdoc}
     */
    public function submitForm(array &$form, FormStateInterface $form_state) {
    }
    
    /**
     * Form submission handler #1 for batch_test_chained_form.
     */
    public static function batchTestChainedFormSubmit1($form, FormStateInterface $form_state) {
        batch_test_stack(NULL, TRUE);
        batch_test_stack('submit handler 1');
        batch_test_stack('value = ' . $form_state->getValue('value'));
        $value =& $form_state->getValue('value');
        $value++;
        batch_set(_batch_test_batch_1());
        $form_state->setRedirect('batch_test.redirect');
    }
    
    /**
     * Form submission handler #2 for batch_test_chained_form.
     */
    public static function batchTestChainedFormSubmit2($form, FormStateInterface $form_state) {
        batch_test_stack('submit handler 2');
        batch_test_stack('value = ' . $form_state->getValue('value'));
        $value =& $form_state->getValue('value');
        $value++;
        batch_set(_batch_test_batch_2());
        $form_state->setRedirect('batch_test.redirect');
    }
    
    /**
     * Form submission handler #3 for batch_test_chained_form.
     */
    public static function batchTestChainedFormSubmit3($form, FormStateInterface $form_state) {
        batch_test_stack('submit handler 3');
        batch_test_stack('value = ' . $form_state->getValue('value'));
        $value =& $form_state->getValue('value');
        $value++;
        $form_state->setRedirect('batch_test.redirect');
    }
    
    /**
     * Form submission handler #4 for batch_test_chained_form.
     */
    public static function batchTestChainedFormSubmit4($form, FormStateInterface $form_state) {
        batch_test_stack('submit handler 4');
        batch_test_stack('value = ' . $form_state->getValue('value'));
        $value =& $form_state->getValue('value');
        $value++;
        batch_set(_batch_test_batch_3());
        $form_state->setRedirect('batch_test.redirect');
    }

}

Classes

Title Deprecated Summary
BatchTestChainedForm Generate form of id batch_test_chained_form.

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