From 09dfe32eb6b538225686fd6ed0220240010bc574 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Mon, 1 Aug 2011 01:22:36 -0400 Subject: initial commit. Partway through a rewrite. I have some old files I didn't want to entirely delete. --- src/views/pages/plugins.php | 61 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 src/views/pages/plugins.php (limited to 'src/views/pages/plugins.php') diff --git a/src/views/pages/plugins.php b/src/views/pages/plugins.php new file mode 100644 index 0000000..a526871 --- /dev/null +++ b/src/views/pages/plugins.php @@ -0,0 +1,61 @@ +isLoggedIn(); +$auth = ($uid!==false) && ($m->getStatus($uid)>=2); + +if (!$auth) { + $m->status('401 Unauthorized'); + $m->header('Unauthorized'); + $t = $m->template(); + $t->tag('h1',array(),"401: Unauthorized"); + $t->paragraph('You need to be logged in as an admin (at least user '. + 'level 2) to edit global plugin settings. :('); + $m->footer(); + exit(); +} + +$m->header('Administrator Plugin Management'); + +$t = $m->template(); + +$t->openTag('form',array('method'=>'post','action'=>$m->baseUrl().plugins)); + +global $BASE; +set_include_path(get_include_path().PATH_SEPARATOR."$BASE/src/plugins"); + +$plugin_list = $m->getSysConf('plugins'); +$plugins = explode(',', $plugin_list); +foreach ($plugins as $plugin) { + $t->openFieldSet($plugin); + + require_once("$plugin.class.php"); + $description = call_user_func("$plugin::description"); + $params = call_user_func("$plugin::configList"); + + $t->inputP($description); + + foreach ($params as $param => $type) { + $name = $plugin.'_'.$param; + if (isset($_POST[$name])) { + $m->setPluginConf($plugin, $param, $_POST[$name]); + } + $value = $m->getPluginConf($plugin, $param); + $hint = "Type: $type"; + switch ($type) { + case 'text': + case 'int': + $t->inputText( $name, $param, $hint, $value); break; + case 'password': + $t->inputPassword($name, $param, $hint, $value); break; + } + } + $t->closeFieldSet(); +} + +$t->tag('input', array('type'=>'submit', 'value'=>'Save')); +$t->closeTag('form'); +$m->footer(); \ No newline at end of file -- cgit v1.2.3-2-g168b