SettingsController::disablePlugin PHP 메소드

disablePlugin() 공개 메소드

public disablePlugin ( $pluginName, $filter = 'all' )
    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);
    }