5b160d086d6d87aefab9a3daec981de08c4bdba8
bernd webinterface => /webinterface

bernd authored 17 years ago

1) <?php
2) 
3) if (! defined("TOP_INCLUDED"))
4) {
5) 
6) define("TOP_INCLUDED", true);
7) 
bernd Menü-Includes sinnvoller /...

bernd authored 16 years ago

8) include("config.php");
bernd webinterface => /webinterface

bernd authored 17 years ago

9) require_once("inc/error.php");
10) global $prefix;
11) 
12) $menuitem = array();
13) $weighted_menuitem = array();
14) 
bernd Ermögliche submenüs

bernd authored 16 years ago

15) $submenu = array();
16) 
bernd webinterface => /webinterface

bernd authored 17 years ago

17) foreach ($config['modules'] as $module)
18) {
bernd Ermögliche submenüs

bernd authored 16 years ago

19)   $menu = false;
20)   if (file_exists("modules/{$module}/menu.php"))
21)     include("modules/{$module}/menu.php");
bernd Menü-Includes sinnvoller /...

bernd authored 16 years ago

22)   if ($menu === false)
23)   {
24)     DEBUG("Modul {$module} hat keine Menüeinträge");
25)     continue;
26)   }
27)   DEBUG("<h4>$module</h4>");
28)   DEBUG($menu);
bernd webinterface => /webinterface

bernd authored 17 years ago

29)   // $menu["foo"]["file"] enthält den Link
30)   foreach (array_keys($menu) as $key)
31)   {
32)     $menu[$key]["file"] = $prefix."go/".$module."/".$menu[$key]["file"];
33)     $weight = $menu[$key]["weight"];
bernd Ermögliche submenüs

bernd authored 16 years ago

34)     if (isset($menu[$key]['submenu']))
35)     {
bernd Auch submenüs sollten gewic...

bernd authored 16 years ago

36)       if (isset($submenu[$menu[$key]['submenu']][$weight]))
37)         $submenu[$menu[$key]['submenu']][$weight] = array_merge($submenu[$menu[$key]['submenu']][$weight], array($key => $menu[$key]));
bernd Ermögliche submenüs

bernd authored 16 years ago

38)       else
bernd Auch submenüs sollten gewic...

bernd authored 16 years ago

39)         $submenu[$menu[$key]['submenu']][$weight] = array($key => $menu[$key]);
bernd Ermögliche submenüs

bernd authored 16 years ago

40)     }
bernd webinterface => /webinterface

bernd authored 17 years ago

41)     else
bernd Ermögliche submenüs

bernd authored 16 years ago

42)     {
43)       if (array_key_exists($weight, $weighted_menuitem))
44)         $weighted_menuitem[$weight] = array_merge($weighted_menuitem[$weight], array($key => $menu[$key]));
45)       else
46)         $weighted_menuitem[$weight] = array($key => $menu[$key]);
47)     }
bernd webinterface => /webinterface

bernd authored 17 years ago

48)   }
49)   $menuitem = array_merge($menuitem, $menu);
50) }
51) 
52) ksort($weighted_menuitem);
bernd Ermögliche submenüs

bernd authored 16 years ago

53) DEBUG($weighted_menuitem);
bernd Auch submenüs sollten gewic...

bernd authored 16 years ago

54) 
55) foreach ($submenu AS $weight => $data) {
56)   ksort($submenu[$weight]);
57) }
58) 
bernd Ermögliche submenüs

bernd authored 16 years ago

59) DEBUG($submenu);
bernd webinterface => /webinterface

bernd authored 17 years ago

60) 
61) 
bernd MIME-Type konfigurierbar

bernd authored 16 years ago

62) header("Content-Type: {$config['mime_type']}");
bernd webinterface => /webinterface

bernd authored 17 years ago

63) ?>
bernd Neues Modul für "Kunde werden"

bernd authored 16 years ago

64) <?php echo '<?xml version="1.0" encoding="utf-8"?>'."\n"; ?>
bernd webinterface => /webinterface

bernd authored 17 years ago

65) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
66)     "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
67) 
68) <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
69) <head>
70) 
71) <?php
72) if ($title != "")
73)         echo '<title>Administration - '.$title.'</title>';
74) else
75)         echo '<title>Administration</title>';
76) 
77) echo '
78) <link rel="stylesheet" href="'.$prefix.'css/admin.css" type="text/css" media="screen" title="Normal" />'
79) ?>
80) 
81) </head>
82) <body>
83) 
bernd Skip-Links für Menü

bernd authored 16 years ago

84) <a href="#content" style="display: none;">Zum Inhalt</a>
bernd webinterface => /webinterface

bernd authored 17 years ago

85) 
86) <div class="menu">
bernd Logo-Höhe

bernd authored 16 years ago

87) <img src="<?php echo $prefix; ?>images/schokokeks.png" width="190" height="141" alt="schokokeks.org" />
bernd webinterface => /webinterface

bernd authored 17 years ago

88) 
bernd Usability: User sieht immer...

bernd authored 16 years ago

89) 
bernd webinterface => /webinterface

bernd authored 17 years ago

90) <?php
bernd Usability: User sieht immer...

bernd authored 16 years ago

91) $role = $_SESSION['role'];
92) 
bernd submenu-items korrekt zuordnen

bernd authored 16 years ago

93) function array_key_exists_r($needle, $haystack)
94) {
95)     $result = array_key_exists($needle, $haystack);
96)     if ($result) return $result;
97)     foreach ($haystack as $v) {
98)         if (is_array($v)) {
99)             $result = array_key_exists_r($needle, $v);
100)         }
101)         if ($result) return $result;
102)     }
103)     return $result;
104) }
105) 
106) 
bernd webinterface => /webinterface

bernd authored 17 years ago

107) 
108)   foreach ($weighted_menuitem as $key => $menuitem)
109)         foreach ($menuitem as $key => $item)
110)         {
111)                 if ($key == $section)
112)                         echo '<a href="'.$item['file'].'" class="menuitem active">'.$item['label'].'</a>'."\n";
bernd Ermögliche submenüs

bernd authored 16 years ago

113)                 else
114)                         echo '<a href="'.$item['file'].'" class="menuitem">'.$item['label'].'</a>'."\n";
bernd submenu-items korrekt zuordnen

bernd authored 16 years ago

115)                 if ($key == $section || (array_key_exists($key, $submenu) && array_key_exists_r($section, $submenu[$key])))
bernd Ermögliche submenüs

bernd authored 16 years ago

116)                 {
bernd webinterface => /webinterface

bernd authored 17 years ago

117)                         if (isset($submenu[$key]))
118)                         {
119)                                 echo "\n";
bernd Auch submenüs sollten gewic...

bernd authored 16 years ago

120) 				foreach ($submenu[$key] as $weight => $mysub) 
121) 				{
122)                                   foreach ($mysub as $sec => $item)
123)                                   {
124)                                           if ($sec == $section)
125)                                                   echo '<a href="'.$item['file'].'" class="submenuitem menuitem active">'.$item['label'].'</a>'."\n";
126)                                           else
127)                                                   echo '<a href="'.$item['file'].'" class="submenuitem menuitem">'.$item['label'].'</a>'."\n";
128)                                   }
129) 				}
bernd webinterface => /webinterface

bernd authored 17 years ago

130)                                 echo "\n";
131)                         }
bernd Ermögliche submenüs

bernd authored 16 years ago

132) 		}
bernd webinterface => /webinterface

bernd authored 17 years ago

133) 
134)         }
135) 
bernd Hanno mag mein tolles Bildc...

bernd authored 16 years ago

136) if ($role != ROLE_ANONYMOUS) {
137) echo '<p class="userinfo">Angemeldet als:<br />';
138)   if ($role & ROLE_SYSTEMUSER) {
139)     echo '<strong>'.$_SESSION['userinfo']['username'].'</strong>';
140)     echo '<br />'.$_SESSION['userinfo']['name'];
141)     echo '<br />(Benutzer'.(($role & ROLE_CUSTOMER) ? ', Kunde' : '').')';
142)   }
143)   elseif ($role & ROLE_CUSTOMER) {
144)     echo '<strong>'.$_SESSION['customerinfo']['customerno'].'</strong>';
145)     echo '<br />'.$_SESSION['customerinfo']['name'];
146)     echo '<br />(Kunde)';
147)   }
bernd VMail-accounts können sich...

bernd authored 16 years ago

148)   elseif ($role & (ROLE_MAILACCOUNT | ROLE_VMAIL_ACCOUNT)) {
bernd Hanno mag mein tolles Bildc...

bernd authored 16 years ago

149)     echo '<strong>'.$_SESSION['mailaccount'].'</strong><br />(E-Mail-Account)';
150)   }
151)   echo '</p>';
152) }
bernd webinterface => /webinterface

bernd authored 17 years ago

153) ?>
154) 
155) </div>
156) 
157) <div class="content">
bernd Skip-Links für Menü

bernd authored 16 years ago

158) <a name="content" style="display: none"> </a>