/** * Upgrade a plugin * @return bool true */ public function upgradePlugin() { $csrftoken = FormUtil::getPassedValue('csrftoken'); $this->checkCsrfToken($csrftoken); // Security and sanity checks if (!SecurityUtil::checkPermission('Extensions::', '::', ACCESS_ADMIN)) { return LogUtil::registerPermissionError(); } // Get parameters from whatever input we need $plugin = FormUtil::getPassedValue('plugin', null); $state = FormUtil::getPassedValue('state', -1); $sort = FormUtil::getPassedValue('sort', null); $module = FormUtil::getPassedValue('bymodule', null); $systemplugins = FormUtil::getPassedValue('systemplugins', false)? true : null; if (empty($plugin)) { return LogUtil::registerError($this->__('Error! No plugin class provided.'), 404, ModUtil::url('Extensions', 'admin', 'viewPlugins')); } PluginUtil::loadAllPlugins(); if (PluginUtil::upgrade($plugin)) { LogUtil::registerStatus($this->__('Done! Upgraded plugin.')); } $this->redirect(ModUtil::url('Extensions', 'admin', 'viewPlugins', array('state' => $state, 'sort' => $sort, 'bymodule' => $module, 'systemplugins' => $systemplugins))); }