summaryrefslogtreecommitdiff
path: root/actions/pluginenable.php
diff options
context:
space:
mode:
authorLuke Shumaker <LukeShu@sbcglobal.net>2010-11-20 22:02:31 -0500
committerLuke Shumaker <LukeShu@sbcglobal.net>2010-11-20 22:02:31 -0500
commit3a336843e1cdd340dd3630747b3e6265b6effa39 (patch)
tree77643c2438808bae2ac5f6f6742f548108044c5c /actions/pluginenable.php
parent0d4588e4b62ecd3ec22d2928dce5e036e3322b77 (diff)
Add more robust (but backward-compatible) plugin config system.
util.php: add common_config_section($main), as a companion to common_config($main,sub) statusnet.php: * add public static getPlugins(), which returns array_merge(common_config('plugins','default'),common_config_section('plugin-list')) * use self::getPlugins(), instead of common_config('plugins,'default') * handle plugins that have a type other than "array" or "null" for parameters pluginenable: * use StatusNet::getPlugins() instead of common_config('plugins,'default') * set $config['plugin-list'][$plugin_name] = 1 pluginsadminpanel: use StatusNet::getPlugins() instead of common_config('plugins,'default')
Diffstat (limited to 'actions/pluginenable.php')
-rw-r--r--actions/pluginenable.php5
1 files changed, 3 insertions, 2 deletions
diff --git a/actions/pluginenable.php b/actions/pluginenable.php
index 2dbb3e395..826874ae5 100644
--- a/actions/pluginenable.php
+++ b/actions/pluginenable.php
@@ -104,8 +104,8 @@ class PluginEnableAction extends Action
}
$this->plugin = $this->arg('plugin');
- $defaultPlugins = common_config('plugins', 'default');
- if (!array_key_exists($this->plugin, $defaultPlugins)) {
+ $pluginList = StatusNet::getPlugins();
+ if (!array_key_exists($this->plugin, $pluginList)) {
$this->clientError(_('No such plugin.'));
return false;
}
@@ -127,6 +127,7 @@ class PluginEnableAction extends Action
{
$key = 'disable-' . $this->plugin;
Config::save('plugins', $key, $this->overrideValue());
+ Config::save('plugin-list', $this->plugin, 1);
// @fixme this is a pretty common pattern and should be refactored down
if ($this->boolean('ajax')) {