engelsystem/includes/sys_menu.php

100 lines
2.7 KiB
PHP
Raw Normal View History

2011-06-02 00:48:29 +02:00
<?php
2013-10-13 00:52:44 +02:00
2011-06-02 00:48:29 +02:00
function page_link_to($page) {
2013-10-13 00:52:44 +02:00
return '?p=' . $page;
2011-06-02 00:48:29 +02:00
}
2011-10-11 22:18:36 +02:00
function page_link_to_absolute($page) {
2013-10-13 00:52:44 +02:00
return (isset($_SERVER['HTTPS']) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . preg_replace("/\?.*$/", '', $_SERVER['REQUEST_URI']) . page_link_to($page);
}
/**
* Renders the header toolbar containing search, login/logout, user and settings links.
*/
function header_toolbar() {
global $p, $privileges, $user;
2013-11-25 19:12:19 +01:00
2013-10-13 00:52:44 +02:00
$toolbar_items = array();
2013-11-25 19:12:19 +01:00
if (in_array('register', $privileges))
2013-10-13 00:52:44 +02:00
$toolbar_items[] = toolbar_item_link(page_link_to('register'), 'register', "Register", $p == 'register');
2013-11-25 19:12:19 +01:00
if (in_array('user_myshifts', $privileges))
2013-10-13 00:52:44 +02:00
$toolbar_items[] = toolbar_item_link(page_link_to('user_myshifts'), 'engel', $user['Nick'], $p == 'user_myshifts');
2013-11-25 19:12:19 +01:00
if (in_array('user_settings', $privileges))
2013-10-13 00:52:44 +02:00
$toolbar_items[] = toolbar_item_link(page_link_to('user_settings'), 'settings', "Settings", $p == 'user_settings');
2013-11-25 19:12:19 +01:00
if (in_array('login', $privileges))
2013-10-13 00:52:44 +02:00
$toolbar_items[] = toolbar_item_link(page_link_to('login'), 'login', "Login", $p == 'login');
2013-11-25 19:12:19 +01:00
if (in_array('logout', $privileges))
2013-10-13 00:52:44 +02:00
$toolbar_items[] = toolbar_item_link(page_link_to('logout'), 'logout', "Logout", $p == 'logout');
2013-11-25 19:12:19 +01:00
2013-10-13 00:52:44 +02:00
return toolbar($toolbar_items);
2011-10-11 22:18:36 +02:00
}
2011-06-02 00:48:29 +02:00
function make_navigation() {
2013-10-13 00:52:44 +02:00
global $p;
global $privileges;
$menu = "";
2013-11-25 19:12:19 +01:00
2013-10-13 00:52:44 +02:00
$specials = array(
2013-11-25 19:12:19 +01:00
"faq"
2013-10-13 00:52:44 +02:00
);
2013-11-25 19:12:19 +01:00
2013-10-13 00:52:44 +02:00
$pages = array(
"news",
"user_meetings",
"user_myshifts",
"user_shifts",
"user_messages",
"user_questions",
"user_wakeup",
"admin_arrive",
"admin_active",
"admin_user",
"admin_free",
"admin_usershifts",
"admin_questions",
"admin_angel_types",
"admin_user_angeltypes",
"admin_shifts",
"admin_rooms",
"admin_groups",
"admin_faq",
"admin_language",
"admin_import",
2013-11-25 19:12:19 +01:00
"admin_log"
2013-10-13 00:52:44 +02:00
);
2013-11-25 19:12:19 +01:00
2013-10-13 00:52:44 +02:00
foreach ($pages as $page)
if (in_array($page, $privileges) || in_array($page, $specials))
$menu .= '<li' . ($page == $p ? ' class="selected"' : '') . '><a href="' . page_link_to($page) . '">' . Get_Text($page) . '</a></li>';
2013-11-25 19:12:19 +01:00
2013-10-13 00:52:44 +02:00
return '<nav><ul>' . $menu . '</ul></nav>';
2011-06-02 17:15:03 +02:00
}
function make_navigation_for($name, $pages) {
2013-10-13 00:52:44 +02:00
global $privileges, $p;
2013-11-25 19:12:19 +01:00
2013-10-13 00:52:44 +02:00
$specials = array(
2013-11-25 19:12:19 +01:00
"faq"
2013-10-13 00:52:44 +02:00
);
2013-11-25 19:12:19 +01:00
2013-10-13 00:52:44 +02:00
$menu = "";
foreach ($pages as $page)
if (in_array($page, $privileges) || in_array($page, $specials))
$menu .= '<li' . ($page == $p ? ' class="selected"' : '') . '><a href="' . page_link_to($page) . '">' . Get_Text($page) . '</a></li>';
2013-11-25 19:12:19 +01:00
2013-10-13 00:52:44 +02:00
if ($menu != "")
$menu = '<nav class="container"><h4>' . $name . '</h4><ul class="content">' . $menu . '</ul></nav>';
return $menu;
2011-06-02 00:48:29 +02:00
}
function make_menu() {
2013-10-13 00:52:44 +02:00
return make_navigation() . make_langselect();
2011-06-02 00:48:29 +02:00
}
?>