public function disablePlugin($pluginName, $filter = 'all')
{
if (!Gdn::request()->isAuthenticatedPostBack(true)) {
throw new Exception('Requires POST', 405);
}
$this->permission('Garden.Settings.Manage');
$action = 'none';
if ($filter == 'enabled') {
$action = 'SlideUp';
}
$addon = Gdn::addonManager()->lookupAddon($pluginName);
try {
Gdn::pluginManager()->disablePlugin($pluginName);
Gdn_LibraryMap::clearCache();
$this->informMessage(sprintf(t('%s Disabled.'), val('name', $addon->getInfo(), t('Plugin'))));
$this->EventArguments['PluginName'] = $pluginName;
$this->fireEvent('AfterDisablePlugin');
} catch (Exception $e) {
$this->Form->addError($e);
}
$this->handleAddonToggle($pluginName, $addon->getInfo(), 'plugins', false, $filter, $action);
}