/** * put your comment there... * */ public function &activate() { # Getting extension class $extensionClass = CJT_Framework_Extensions_Package_Extension::getPluginExtensionClass($this->extensionPluginObject); # No activation process until the Plugin is deactivated before # It must be installed first. if (CJT_Framework_Extensions_Package_State_Extension::isInstalled($extensionClass)) { # Initialize $stateExtension = CJT_Framework_Extensions_Package_State_Extension::create($extensionClass); $statePackage = new CJT_Framework_Extensions_Package_State_Packages($stateExtension->getExtensionDeDoc()); $extBlocks = new CJT_Framework_Extensions_Package_Blocks($statePackage); # Enable all Blocks associated with extension packages $extBlocks->setState(CJT_Framework_Extensions_Package_Blocks::ACTIVE); } # Chain return $this; }
/** * Uninstaller for all Package Extension * * @param mixed $method * @param mixed $params * @return CJTWordpressEvents */ public static function __callStatic($method, $params) { # Initialize $packageModel = CJTModel::getInstance('package'); # Getting extension package class name $extensionClass = basename(str_replace('_', DIRECTORY_SEPARATOR, $method)); # Extension state $extensionState = CJT_Framework_Extensions_Package_State_Extension::create($extensionClass); $extensionPackagesState = new CJT_Framework_Extensions_Package_State_Packages($extensionState->getExtensionDeDoc()); # Delete extension packages foreach ($extensionPackagesState->getInstalledPackages() as $name => $iPack) { # Remove package $packageModel->delete($iPack['id']); } # Remove install information $extensionPackagesState->clearInstallInfo(); $extensionState->clearInstallInfo(); }