diff options
-rw-r--r-- | mod/admin.php | 51 | ||||
-rw-r--r-- | view/admin_plugins.tpl | 14 | ||||
-rw-r--r-- | view/theme/duepuntozero/style.css | 18 |
3 files changed, 80 insertions, 3 deletions
diff --git a/mod/admin.php b/mod/admin.php index 73da3814b..f9d248210 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 000000000..d29665a06 --- /dev/null +++ b/view/admin_plugins.tpl @@ -0,0 +1,14 @@ +<div id='adminpage'> + <h1>$title - $page</h1> + + <ul id='pluginslist'> + {{ for $plugins as $p }} + <li class='plugin $p.1'> + <a class='toggle' href='$baseurl/admin/plugins/$p.0?a=t'><span class='icon $p.1'></span></a> + <a href='$baseurl/admin/plugins/$p.0'> + <span class='name'>$p.0</span> + </a> + </li> + {{ endfor }} + </ul> +</div> diff --git a/view/theme/duepuntozero/style.css b/view/theme/duepuntozero/style.css index 294a86690..8799726c7 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; |