From 5882d8d022c14a12ba7b314c96289061bd195ed4 Mon Sep 17 00:00:00 2001 From: Fabio Comuni Date: Tue, 14 Jun 2011 10:35:56 +0200 Subject: [PATCH] Initial plugins admin page --- mod/admin.php | 51 +++++++++++++++++++++++++++++-- view/admin_plugins.tpl | 14 +++++++++ view/theme/duepuntozero/style.css | 18 ++++++++++- 3 files changed, 80 insertions(+), 3 deletions(-) create mode 100644 view/admin_plugins.tpl diff --git a/mod/admin.php b/mod/admin.php index 73da3814ba..f9d248210d 100644 --- a/mod/admin.php +++ b/mod/admin.php @@ -74,10 +74,15 @@ function admin_content(&$a) { // urls if ($a->argc > 1){ switch ($a->argv[1]){ - case 'site': { + case 'site': $o = admin_page_site($a); break; - } + case 'users': + $o = admin_page_users($a); + break; + case 'plugins': + $o = admin_page_plugins($a); + break; default: notice( t("Item not found.") ); } @@ -288,3 +293,45 @@ function admin_page_site(&$a) { )); } + + +/** + * Users admin page + */ + +function admin_page_users(&$a){ + return ":)"; +} + + +/* + * Plugins admin page + */ + +function admin_page_plugins(&$a){ + + /* all plugins */ + $plugins = array(); + $files = glob("addon/*/"); + if($files) { + foreach($files as $file) { + if (is_dir($file)){ + list($tmp, $id)=array_map("trim", explode("/",$file)); + // TODO: plugins info + $name=$author=$description=$homepage=""; + $plugins[] = array( $id, (in_array($id, $a->plugins)?"on":"off") , $name, $author, $description, $homepage); + } + } + } + + $t = get_markup_template("admin_plugins.tpl"); + return replace_macros($t, array( + '$title' => t('Administration'), + '$page' => t('Plugins'), + '$submit' => t('Submit'), + '$baseurl' => $a->get_baseurl(), + + '$plugins' => $plugins + )); +} + diff --git a/view/admin_plugins.tpl b/view/admin_plugins.tpl new file mode 100644 index 0000000000..d29665a064 --- /dev/null +++ b/view/admin_plugins.tpl @@ -0,0 +1,14 @@ +
+

$title - $page

+ + +
diff --git a/view/theme/duepuntozero/style.css b/view/theme/duepuntozero/style.css index 294a86690a..8799726c7b 100644 --- a/view/theme/duepuntozero/style.css +++ b/view/theme/duepuntozero/style.css @@ -2520,6 +2520,21 @@ a.mail-list-link { text-align: right; } +#adminpage #pluginslist { + margin: 0px; padding: 0px; +} +#adminpage .plugin { + list-style: none; + display: block; + border: 1px solid #888888; + padding: 1em; + margin-bottom: 5px; + clear: left; +} +#adminpage .plugin .toggle { + float:left; + margin-right: 1em; +} /** * ICONS @@ -2557,7 +2572,8 @@ a.mail-list-link { .youtube { background-position: -64px -32px;} .attach { background-position: -80px -32px; } .language { background-position: -96px -32px; } - +.on { background-position: -112px -32px; } +.off { background-position: -128px -32px; } .attachtype { display: block; width: 20px; height: 23px;