public function MediaPdfThumbnailService::regenerateAllThumbnails in Media PDF Thumbnail 8.4
Throws
\Drupal\Component\Plugin\Exception\InvalidPluginDefinitionException
\Drupal\Component\Plugin\Exception\PluginNotFoundException
File
- src/
Service/ MediaPdfThumbnailService.php, line 198
Class
- MediaPdfThumbnailService
- Class MediaPdfThumbnailService
Namespace
Drupal\media_pdf_thumbnail\ServiceCode
public function regenerateAllThumbnails() {
$mediaStorage = $this->entityTypeManager
->getStorage('media');
$operations = [];
foreach ($mediaStorage
->loadMultiple() as $media) {
$languageManager = \Drupal::service('language_manager');
$languages = $languageManager
->getLanguages();
foreach ($languages as $language) {
$translation = $media
->hasTranslation($language
->getId()) ? $media
->getTranslation($language
->getId()) : NULL;
if ($translation) {
$translation
->bundle();
$fieldName = $this->mediaPdfThumbnailConfig
->get($translation
->bundle() . '_field');
$thumbnailType = $this->mediaPdfThumbnailConfig
->get($translation
->bundle() . '_enable') ? 'pdf' : 'generic';
if (empty($fieldName) || empty($thumbnailType)) {
continue;
}
$operations[] = [
'Drupal\\media_pdf_thumbnail\\Service\\MediaPdfThumbnailService::generateThumbnail',
[
$translation,
$fieldName,
$thumbnailType,
TRUE,
],
];
}
}
}
$batch = [
'title' => t('Media PDF Thumbnail'),
'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\\Service\\MediaPdfThumbnailService::finishedCallback',
];
batch_set($batch);
}