git.schokokeks.org
Repositories
Help
Report an Issue
webinterface.git
Code
Commits
Branches
Tags
Suche
Strukturansicht:
ff0f9b9
Branches
Tags
master
ticket
webinterface.git
inc
top.php
Erlaube subusers, die nur Zugriff auf bestimmte Module haben
bernd
commited
ff0f9b9
at 2010-10-01 10:45:34
top.php
Blame
History
Raw
<?php if (! defined("TOP_INCLUDED")) { define("TOP_INCLUDED", true); require_once("inc/error.php"); require_once("inc/debug.php"); global $prefix, $section; $menuitem = array(); $weighted_menuitem = array(); $submenu = array(); foreach (config('modules') as $module) { $menu = false; if (file_exists("modules/{$module}/menu.php")) include("modules/{$module}/menu.php"); if ($menu === false) { DEBUG("Modul {$module} hat keine Menüeinträge"); continue; } DEBUG("<h4>$module</h4>"); DEBUG($menu); // $menu["foo"]["file"] enthält den Link foreach (array_keys($menu) as $key) { $menu[$key]["file"] = $prefix."go/".$module."/".$menu[$key]["file"]; $weight = $menu[$key]["weight"]; if (isset($menu[$key]['submenu'])) { if (isset($submenu[$menu[$key]['submenu']][$weight])) $submenu[$menu[$key]['submenu']][$weight] = array_merge($submenu[$menu[$key]['submenu']][$weight], array($key => $menu[$key])); else $submenu[$menu[$key]['submenu']][$weight] = array($key => $menu[$key]); } else { if (array_key_exists($weight, $weighted_menuitem)) $weighted_menuitem[$weight] = array_merge($weighted_menuitem[$weight], array($key => $menu[$key])); else $weighted_menuitem[$weight] = array($key => $menu[$key]); } } $menuitem = array_merge($menuitem, $menu); } ksort($weighted_menuitem); DEBUG($weighted_menuitem); foreach ($submenu AS $weight => $data) { ksort($submenu[$weight]); } DEBUG($submenu); // Verbiete das Laden in jeglichem Frameset header("X-FRAME-OPTIONS: DENY"); header("Content-Type: ".config('mime_type')); if (!isset($html_header)) $html_header = ''; function array_key_exists_r($needle, $haystack) { $result = array_key_exists($needle, $haystack); if ($result) return $result; foreach ($haystack as $v) { if (is_array($v)) { $result = array_key_exists_r($needle, $v); } if ($result) return $result; } return $result; } $menu = ''; foreach ($weighted_menuitem as $key => $menuitem) foreach ($menuitem as $key => $item) { if ($key == $section) $menu .= '<a href="'.$item['file'].'" class="menuitem active">'.$item['label'].'</a>'."\n"; else $menu .= '<a href="'.$item['file'].'" class="menuitem">'.$item['label'].'</a>'."\n"; if ($key == $section || (array_key_exists($key, $submenu) && array_key_exists_r($section, $submenu[$key]))) { if (isset($submenu[$key])) { $menu .= "\n"; foreach ($submenu[$key] as $weight => $mysub) { foreach ($mysub as $sec => $item) { if ($sec == $section) $menu .= '<a href="'.$item['file'].'" class="submenuitem menuitem active">'.$item['label'].'</a>'."\n"; else $menu .= '<a href="'.$item['file'].'" class="submenuitem menuitem">'.$item['label'].'</a>'."\n"; } } $menu .= "\n"; } } } $userinfo = ''; $role = $_SESSION['role']; if ($role != ROLE_ANONYMOUS) { $userinfo .= '<p class="userinfo">Angemeldet als:<br />'; if ($role & ROLE_SYSTEMUSER && isset($_SESSION['subuser'])) { $userinfo .= '<strong>'.$_SESSION['subuser'].'</strong>'; $userinfo .= '<br />Mitbenutzer von '.$_SESSION['userinfo']['username']; } elseif ($role & ROLE_SYSTEMUSER) { $userinfo .= '<strong>'.$_SESSION['userinfo']['username'].'</strong>'; $userinfo .= '<br />'.$_SESSION['userinfo']['name']; $userinfo .= '<br />(Benutzer'.(($role & ROLE_CUSTOMER) ? ', Kunde' : '').')'; } elseif ($role & ROLE_CUSTOMER) { $userinfo .= '<strong>'.$_SESSION['customerinfo']['customerno'].'</strong>'; $userinfo .= '<br />'.$_SESSION['customerinfo']['name']; $userinfo .= '<br />(Kunde)'; } elseif ($role & (ROLE_MAILACCOUNT | ROLE_VMAIL_ACCOUNT)) { $userinfo .= '<strong>'.$_SESSION['mailaccount'].'</strong><br />(E-Mail-Account)'; } $userinfo .= '</p>'; } if (isset($_SESSION['admin_user'])) { $userinfo .= '<p class="admininfo">'; $userinfo .= '<a href="'.$prefix.'go/su/back_to_admin">Zurück zu »'.$_SESSION['admin_user'].'«</a>'; $userinfo .= '</p>'; } $messages = get_messages(); $BASE_PATH = $prefix; $THEME_PATH = $prefix."themes/".config('theme')."/"; } ?>