You are here

public function ThumbnailGenerationSettingsForm::submitForm in Media PDF Thumbnail 8.3

Same name and namespace in other branches
  1. 8.4 src/Form/ThumbnailGenerationSettingsForm.php \Drupal\media_pdf_thumbnail\Form\ThumbnailGenerationSettingsForm::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

src/Form/ThumbnailGenerationSettingsForm.php, line 128

Class

ThumbnailGenerationSettingsForm
Class ThumbnailGenerationSettingsForm

Namespace

Drupal\media_pdf_thumbnail\Form

Code

public function submitForm(array &$form, FormStateInterface $form_state) {
  $data = $this->configFactory
    ->get('media_pdf_thumbnail.bundles.settings')
    ->getRawData();
  $bundles = [];
  foreach ($data as $name => $item) {
    $bundle = substr($name, 0, strpos($name, '_field'));
    if (!empty($data[$bundle . '_enable'])) {
      $bundles[] = $bundle;
    }
  }
  if (empty($bundles)) {
    return;
  }
  $mids = $this->entityTypeManager
    ->getStorage('media')
    ->getQuery()
    ->condition('bundle', $bundles, 'IN')
    ->execute();
  $operations = [];
  foreach ($mids as $mid) {
    $operations[] = [
      'Drupal\\media_pdf_thumbnail\\Form\\settingsForm::regenerateThumbnail',
      [
        $mid,
      ],
    ];
  }
  $batch = [
    'title' => t('Regenerates media thumbnails'),
    'operations' => $operations,
    'init_message' => t('Thumbnail creating process is starting.'),
    'progress_message' => t('Processed @current out of @total. Estimated time: @estimate.'),
    'error_message' => t('An error occurred during processing'),
    'finished' => '\\Drupal\\media_pdf_thumbnail\\Form\\settingsForm::finishedCallback',
  ];
  $batch['operations'] = batch_set($batch);
}