CreateImagesStyles.php 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <?php
  2. namespace Drupal\images_styles_gen;
  3. // use Drupal\node\Entity\Node;
  4. class CreateImagesStyles {
  5. public static function createStyles($item, &$context){
  6. $context['sandbox']['progress']++;
  7. $context['sandbox']['current_file'] = $item->uri;
  8. // $message = 'Creating Styles ...';
  9. $results = array();
  10. // foreach ($items as $item) {
  11. $results[] = $item->style->createDerivative($item->uri, $item->destination);
  12. // }
  13. // $styles_storage = \Drupal::entityTypeManager()->getStorage('image_style');
  14. // $styles = $styles_storage->loadMultiple();
  15. //
  16. // foreach ($fids as $fid) {
  17. // /** @var \Drupal\file\FileInterface|null $file*/
  18. // $file_entity = \Drupal::entityTypeManager()->getStorage('file')->load($fid);
  19. // $file_uri = $file_entity->getFileUri();
  20. // $image = \Drupal::service('image.factory')->get($file_uri);
  21. // // \Drupal::logger('images_styles_gen')->notice("file_uri is $file_uri");
  22. //
  23. // if ($image->isValid()) {
  24. // /** @var \Drupal\image\Entity\ImageStyle $style */
  25. // foreach ($styles as $style) {
  26. // $destination = $style->buildUri($file_uri);
  27. // // if destination exists skip
  28. // if (file_exists($destination)) continue; // skip existing files
  29. //
  30. // $results[] = $style->createDerivative($file_uri, $destination);
  31. // // \Drupal::logger('images_styles_gen')->notice("Generated style $file_uri to $destination");
  32. // }
  33. //
  34. // }
  35. //
  36. //
  37. // }
  38. // $context['message'] = $message;
  39. // $context['results'] = $results;
  40. $context['message'] = $item->uri . ' processed.';
  41. $context['results'][] = $item->destination;
  42. }
  43. public static function createStylesFinishedCallback($success, $results, $operations) {
  44. // The 'success' parameter means no fatal PHP errors were detected. All
  45. // other error management should be handled using 'results'.
  46. if ($success) {
  47. $message = \Drupal::translation()->formatPlural(
  48. count($results),
  49. 'One image processed.', '@count image processed.'
  50. );
  51. }
  52. else {
  53. $message = t('Finished with an error.');
  54. }
  55. drupal_set_message($message);
  56. }
  57. }