. * * For more information, contact Colosa Inc, 2566 Le Jeune Rd., * Coral Gables, FL, 33134, USA, or email info@colosa.com. */ // lets display the items $pluginFile = $_GET['id']; $pluginStatus = $_GET['status']; $items = array (); G::LoadClass( 'plugin' ); //here we are enabling or disabling the plugin and all related options registered. G::LoadSystem('inputfilter'); $filter = new InputFilter(); $path = PATH_PLUGINS . $pluginFile; $path = $filter->validateInput($path, 'path'); $oPluginRegistry = & PMPluginRegistry::getSingleton(); if ($handle = opendir( PATH_PLUGINS )) { while (false !== ($file = readdir( $handle ))) { if (strpos( $file, '.php', 1 ) && $file == $pluginFile) { if ($pluginStatus == '1') { //print "change to disable"; $details = $oPluginRegistry->getPluginDetails( $pluginFile ); $oPluginRegistry->disablePlugin( $details->sNamespace ); $size = file_put_contents( PATH_DATA_SITE . 'plugin.singleton', $oPluginRegistry->serializeInstance() ); G::auditLog("DisablePlugin", "Plugin Name: ".$details->sNamespace); //print "size saved : $size
"; } else { $pluginName = str_replace(".php", "", $pluginFile); if (is_file(PATH_PLUGINS . $pluginName . ".php") && is_dir(PATH_PLUGINS . $pluginName)) { /*----------------------------------********---------------------------------*/ if (!$oPluginRegistry->isEnterprisePlugin($pluginName) && PMLicensedFeatures::getSingleton()->verifyfeature('B0oWlBLY3hHdWY0YUNpZEtFQm5CeTJhQlIwN3IxMEkwaG4=') ) { //Check disabled code G::LoadClass("codeScanner"); $cs = new CodeScanner(SYS_SYS); $arrayFoundDisabledCode = array_merge($cs->checkDisabledCode("FILE", PATH_PLUGINS . $pluginName . ".php"), $cs->checkDisabledCode("PATH", PATH_PLUGINS . $pluginName)); if (!empty($arrayFoundDisabledCode)) { $response = array(); $response["status"] = "DISABLED-CODE"; $response["message"] = G::LoadTranslation("ID_DISABLED_CODE_PLUGIN"); echo G::json_encode($response); exit(0); } } /*----------------------------------********---------------------------------*/ //print "change to ENABLED"; require_once($path); $details = $oPluginRegistry->getPluginDetails($pluginFile); $oPluginRegistry->enablePlugin($details->sNamespace); $oPluginRegistry->setupPlugins(); //get and setup enabled plugins $size = file_put_contents(PATH_DATA_SITE . "plugin.singleton", $oPluginRegistry->serializeInstance()); G::auditLog("EnablePlugin", "Plugin Name: " . $details->sNamespace); //print "size saved : $size
"; } } } } closedir( $handle ); } //$oPluginRegistry->showArrays(); //G::Header('location: pluginsList');