/** * 插件激活 * * @param $f3 */ public function ActivatePlugin($f3) { // 权限检查 $this->requirePrivilege('manage_plugin_plugin_activateplugin'); // 参数验证 $validator = new Validator($f3->get('GET')); $pluginDirName = $validator->required()->validate('pluginDirName'); if (!$this->validate($validator)) { goto out; } $pluginInstance = PluginHelper::loadPluginInstance($pluginDirName); if (!$pluginInstance) { $this->addFlashMessage('插件[' . $pluginDirName . ']无效'); goto out; } // 调用插件操作 $ret = $pluginInstance->pluginActivate(PluginHelper::SYSTEM_ALL); if (true !== $ret) { $this->addFlashMessage('插件[' . $pluginDirName . ']启用失败:' . $ret); goto out; } PluginHelper::addActivePlugin($pluginDirName); $this->addFlashMessage('插件启用成功'); out: RouteHelper::reRoute($this, RouteHelper::getRefer(), false); }