Lese Modul-Infos aus den info-Dateien der Module
bernd

bernd commited on 2012-03-08 14:33:21
Zeige 2 geänderte Dateien mit 9 Einfügungen und 24 Löschungen.


git-svn-id: https://svn.schokokeks.org/repos/tools/webinterface/trunk@2225 87cf0b9e-d624-0410-a070-f6ee81989793
... ...
@@ -32,6 +32,7 @@ $form = '<table>
32 32
 <tr><td><strong><label for="username">Benutzername:</label></td><td>'.$_SESSION['userinfo']['username'].'_<input type="text" name="username" id="username" value="'.$subuser['username'].'" /></td></tr>
33 33
 <tr><td><strong><label for="password">Passwort:</label></td><td><input type="password" name="password" id="password" value="" />'.$pwnotice.'</td></tr>
34 34
 <tr><td style="vertical-align: top;">Berechtigungen:</td><td>';
35
+$modinfo = available_modules();
35 36
 foreach ($modinfo as $key => $desc) {
36 37
   $checked = in_array($key, $subuser['modules']) ? 'checked="checked "' : '';
37 38
   $form .= '<input type="checkbox" name="modules[]" id="'.$key.'" value="'.$key.'" '.$checked.'/> <label for="'.$key.'">'.$desc.'</label><br />';
... ...
@@ -4,26 +4,6 @@ require_once("inc/base.php");
4 4
 require_once("inc/security.php");
5 5
 require_once("inc/debug.php");
6 6
 
7
-// FIXME: Das sollten die Module selbst irgendwo anbieten!
8
-$modinfo = array(
9
-	"index" => "An- und Abmelden",
10
-	"domains" => "Liste der Domains anzeigen",
11
-	"dns" => "DNS-Einträge verändern",
12
-	"mysql" => "MySQL-Datenbanken verwalten",
13
-	"jabber" => "Jabber-Accouns verwalten",
14
-	"vhosts" => "Webserver-Konfiguration verwalten",
15
-	"systemuser" => "Daten des System-Benutzeraccounts einsehen/ändern",
16
-//	"su" => "Das Webinterface unter einem beliebigen anderen Account ausführen",
17
-	"email" => "E-Mail-Adressen und/oder IMAP-Accounts verwalten",
18
-	"webapps" => "Automatische Installation von Web-Anwendungen",
19
-	"greylisting" => "Ausnahmeliste für Greylisting verwalten",
20
-	"invoice" => "Fällige und kommende Rechnungen anzeigen",
21
-	"mailman" => "Mailinglisten verwalten",
22
-	"ftpusers" => "Zugriff per FTP verwalten",
23
-	"subusers" => "Zusätzliche Admin-Zugänge verwalten");
24
-// FIXME: Dependancies der Module sollte man auch irgendwo speichern.
25
-
26
-
27 7
 
28 8
 function list_subusers()
29 9
 {
... ...
@@ -53,12 +33,16 @@ function load_subuser($id) {
53 33
 
54 34
 function available_modules()
55 35
 {
56
-  global $modinfo;
57 36
   $modules = array();
58
-  foreach (config('modules') as $mod)
37
+  $allmodules = get_modules_info();
38
+
39
+  // Das su-Modul ist hierfuer unwichtig
40
+  unset($allmodules['su']);
41
+
42
+  foreach ($allmodules as $modname => $modinfo)
59 43
   {
60
-    if (isset($modinfo[$mod]))
61
-      $modules[$mod] = $modinfo[$mod];
44
+    if (isset($modinfo['permission']))
45
+      $modules[$modname] = $modinfo['permission'];
62 46
   }
63 47
   return $modules;
64 48
 }
65 49