예제 #1
0
파일: Main.php 프로젝트: kingsj/core
 /**
  * Execute certain hook handler
  *
  * @return void
  */
 public function executeHookHandler()
 {
     foreach (\Includes\Utils\ModulesManager::getActiveModules() as $name => $data) {
         $class = \Includes\Utils\ModulesManager::getClassNameByModuleName($name);
         $class::runBuildCacheHandler();
     }
 }
예제 #2
0
파일: Main.php 프로젝트: kirkbauer2/kirkxc
 /**
  * Execute certain hook handler
  *
  * @return void
  */
 public function executeHookHandler()
 {
     $modulesNames = array_keys(\Includes\Utils\ModulesManager::getActiveModules());
     $classes = array_map(function ($name) {
         return \Includes\Utils\ModulesManager::getClassNameByModuleName($name);
     }, $modulesNames);
     foreach ($classes as $class) {
         $this->runBuildCacheHandler($class);
     }
 }
예제 #3
0
 /**
  * Check if module will be disabled after upgrade
  *
  * :TRICKY: check if the "getMajorVersion" is not declared in the main module class
  *
  * @param \XLite\Model\Module $module Module to check
  *
  * @return boolean
  */
 protected function isModuleToDisable(\XLite\Model\Module $module)
 {
     $versionCore = \XLite\Upgrade\Cell::getInstance()->getCoreMajorVersion();
     $versionModule = $module->getMajorVersion();
     $classModule = \Includes\Utils\ModulesManager::getClassNameByModuleName($module->getActualName());
     $reflection = new \ReflectionMethod($classModule, 'getMajorVersion');
     $classModule = \Includes\Utils\Converter::prepareClassName($classModule);
     $classActual = \Includes\Utils\Converter::prepareClassName($reflection->getDeclaringClass()->getName());
     return version_compare($versionModule, $versionCore, '<') || $classModule !== $classActual;
 }
예제 #4
0
 /**
  * Get module
  *
  * @return string
  */
 public function getValidModule()
 {
     $result = null;
     $module = $this->getModule();
     if (!empty($module) && preg_match('/\\w+\\\\\\w+/', $module)) {
         $class = \Includes\Utils\ModulesManager::getClassNameByModuleName($module);
         if (class_exists($class)) {
             $result = $module;
         }
     }
     return $result;
 }
예제 #5
0
 /**
  * Get specific language help message
  *
  * @param \XLite\Model\AEntity $entity Language object
  *
  * @return string
  */
 protected function getLanguageHelpMessage(\XLite\Model\AEntity $entity)
 {
     $message = null;
     if ($entity->getValidModule()) {
         $moduleClass = \Includes\Utils\ModulesManager::getClassNameByModuleName($entity->getModule());
         $moduleName = sprintf('%s (%s)', $moduleClass::getModuleName(), $moduleClass::getAuthorName());
         $message = static::t('This language is added by module and cannot be removed.', array('module' => $moduleName));
     } elseif ('en' == $entity->getCode()) {
         $message = 'English language cannot be removed as it is primary language for all texts.';
     }
     return $message;
 }