// 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.") );
}
));
}
+
+
+/**
+ * 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
+ ));
+}
+
--- /dev/null
+<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>
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
.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;