/**
  * Batch resize pictures, called by scheduler.
  *
  * @return boolean true if task run was successful
  */
 public function execute()
 {
     $configuration = $GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['image_autoresize_ff'];
     if (!empty($configuration)) {
         $configuration = unserialize($configuration);
     }
     if (!is_array($configuration)) {
         throw new \RuntimeException('No configuration found', 1384103174);
     }
     $this->imageResizer = GeneralUtility::makeInstance(\Causal\ImageAutoresize\Service\ImageResizer::class);
     $this->imageResizer->initializeRulesets($configuration);
     if (empty($this->directories)) {
         // Process watched directories
         $directories = $this->imageResizer->getAllDirectories();
     } else {
         $directories = GeneralUtility::trimExplode(LF, $this->directories, true);
     }
     $processedDirectories = array();
     $success = true;
     foreach ($directories as $directory) {
         $skip = false;
         foreach ($processedDirectories as $processedDirectory) {
             if (GeneralUtility::isFirstPartOfStr($directory, $processedDirectory)) {
                 continue 2;
             }
         }
         // Execute bach resize
         $success |= $this->batchResizePictures($directory);
         $processedDirectories[] = $directory;
     }
     return $success;
 }
Example #2
0
 /**
  * Default constructor.
  */
 public function __construct()
 {
     if (static::$imageResizer === null) {
         static::$imageResizer = GeneralUtility::makeInstance(\Causal\ImageAutoresize\Service\ImageResizer::class);
         $configuration = $GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['image_autoresize_ff'];
         if (!$configuration) {
             $this->notify($GLOBALS['LANG']->sL('LLL:EXT:image_autoresize/Resources/Private/Language/locallang.xml:message.emptyConfiguration'), \TYPO3\CMS\Core\Messaging\FlashMessage::ERROR);
         }
         $configuration = unserialize($configuration);
         if (is_array($configuration)) {
             static::$imageResizer->initializeRulesets($configuration);
         }
     }
 }