예제 #1
0
파일: Main.php 프로젝트: kingsj/core
 /**
  * Execute certain hook handler
  *
  * @return void
  */
 public function executeHookHandler()
 {
     // To cache data
     \Includes\Utils\ModulesManager::getActiveModules();
     // Walk through the "XLite/Module" directory
     foreach ($this->getModuleMainFileIterator()->getIterator() as $path => $data) {
         $dir = $path;
         $name = basename($dir = dirname($dir));
         $author = basename($dir = dirname($dir));
         $class = \Includes\Utils\ModulesManager::getClassNameByAuthorAndName($author, $name);
         if (!\Includes\Utils\Operator::checkIfClassExists($class)) {
             require_once $path;
         }
         \Includes\Utils\ModulesManager::switchModule($author, $name);
     }
     \Includes\Utils\ModulesManager::removeFile();
 }