/** * 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; }
/** * {@inheritDoc} */ public function getMajorVersion() { $this->__initializer__ && $this->__initializer__->__invoke($this, 'getMajorVersion', array()); return parent::getMajorVersion(); }
/** * Compare module version with the core one * * @param \XLite\Model\Module $module Module to check * @param string $operator Comparison operator * * @return boolean */ protected function checkModuleMajorVersion(\XLite\Model\Module $module, $operator) { return \XLite::getInstance()->checkVersion($module->getMajorVersion(), $operator); }