You are here

public function MigrationConfirmationForm::submitForm in Lightning Workflow 8.3

Same name and namespace in other branches
  1. 8.2 modules/lightning_scheduler/src/Form/MigrationConfirmationForm.php \Drupal\lightning_scheduler\Form\MigrationConfirmationForm::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

modules/lightning_scheduler/src/Form/MigrationConfirmationForm.php, line 144

Class

MigrationConfirmationForm
Provides a UI for migrating or purging scheduled transition data.

Namespace

Drupal\lightning_scheduler\Form

Code

public function submitForm(array &$form, FormStateInterface $form_state) {
  $operations = [];
  $callback = [
    static::class,
    'migrate',
  ];
  foreach (array_keys($this->migrator
    ->getEntityTypesToMigrate()) as $entity_type_id) {
    foreach ($this->migrator
      ->query($entity_type_id)
      ->execute() as $item) {
      $arguments = [
        $entity_type_id,
        $item,
      ];
      array_push($operations, [
        $callback,
        $arguments,
      ]);
    }
    array_push($operations, [
      [
        static::class,
        'complete',
      ],
      [
        $entity_type_id,
      ],
    ]);
  }
  batch_set([
    'operations' => $operations,
  ]);
}