Example #1
0
 private function loadHelpers(Job $job)
 {
     $helperConfiguration = $job->configuration->getSubConfiguration('helpers');
     $helperFolders = $helperConfiguration->get('folders');
     if ($helperFolders) {
         $helperFolders = Tools::singleOrMultipleValuesToArray($helperFolders);
         foreach ($helperFolders as $helperFolder) {
             AutoLoader::registerNamespace('', $this->basePath . $helperFolder);
         }
     }
     foreach ($helperConfiguration->configuration as $helperId => $helper) {
         if ($helperId == 'folders') {
             continue;
         }
         $helperConfig = new Configuration($helper);
         $helperClass = $helperConfig->getString('type');
         if (!$helperClass || !$helperConfig->getBool('enabled', true)) {
             continue;
         }
         /** @var Helper $helper */
         $helper = new $helperClass($this, $helperConfig, $job, $helperId);
         $helper->init();
         $job->helpers[$helperId] = $helper;
     }
     $job->events->trigger(self::E_HELPERS_LOADED);
 }