summaryrefslogtreecommitdiff
path: root/includes/sys_menu.php
blob: 7eeaa70a832e5d457ca2d2f3ba8e806ed674d039 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
<?php
function page_link_to($page) {
	return '?p=' . $page;
}

function page_link_to_absolute($page) {
	return (isset ($_SERVER['HTTPS']) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . preg_replace("/\?.*$/", '', $_SERVER['REQUEST_URI']) . page_link_to($page);
}

function make_navigation() {
	global $p;
	global $privileges;
	$menu_items = $privileges;
	$menu_items[] = "faq";
	$menu = "";

	// Standard Navigation
	$menu .= make_navigation_for(Get_Text('/'), array (
		"login",
		"logout",
		"register",
		"faq"
	));

	// Engel Navigation
	$menu .= make_navigation_for(Get_Text('inc_schicht_engel'), array (
		"news",
		"user_meetings",
		"user_myshifts",
		"user_shifts",
		"user_messages",
		"user_questions",
		"user_wakeup",
		"user_settings"
	));

	// Admin Navigation
	$menu .= make_navigation_for(Get_Text('admin/'), array (
		"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",
		"admin_log"
	));
	return $menu;
}

function make_navigation_for($name, $pages) {
	global $privileges, $p;

	$specials = array (
		"faq"
	);

	$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>';

	if ($menu != "")
		$menu = '<nav class="container"><h4>' . $name . '</h4><ul class="content">' . $menu . '</ul></nav>';
	return $menu;
}

function make_menu() {
	return make_navigation() . make_onlineusers() . make_langselect();
}

function make_onlineusers() {
	global $privileges, $user;
	$html = '<nav class="container online"><h4>Helfer online</h4>';

	$query = "SELECT UID, Nick, lastLogIn " . "FROM User " . "WHERE (`lastLogIn` > '" . (time() - 60 * 60) . "') " . "ORDER BY lastLogIn DESC";
	$users = sql_select($query);

	if (count($users) > 0) {
		$html .= "<ul class=\"content\">";

		foreach ($users as $online_user) {
			if (isset ($user) && $online_user['UID'] == $user['UID'])
				continue;

			$html .= "<li>";

			//if (isset ($user))
			//$html .= DisplayAvatar($online_user['UID']);

			// Show Admin Page
			if (in_array("admin_user_edit", $privileges)) {
				$html .= '<a href="admin/userChangeNormal.php?enterUID=' . $online_user['UID'] . '&Type=Normal">' . $online_user['Nick'] . '</a>';
			} else {
				$html .= $online_user['Nick'];
			}
			$last_action = time() - $online_user['lastLogIn'];

			$html .= " " . date("i:s", $last_action);
			$html .= "</li>\n";
		}

		$html .= "</ul>";
	} else {
		$html .= '<p class="content">Nobody...</p>';
	}
	$html .= '</nav>';
	return $html;
}

function make_langselect() {
	if (strpos($_SERVER["REQUEST_URI"], "?") > 0)
		$URL = $_SERVER["REQUEST_URI"] . "&SetLanguage=";
	else
		$URL = $_SERVER["REQUEST_URI"] . "?SetLanguage=";

	$html = '<p class="content"><a class="sprache" href="' . htmlspecialchars($URL) . 'DE"><img src="pic/flag/de.png" alt="DE" title="Deutsch"></a>';
	$html .= '<a class="sprache" href="' . htmlspecialchars($URL) . 'EN"><img src="pic/flag/en.png" alt="EN" title="English"></a></p>';
	return '<nav class="container"><h4>' . Get_Text("Sprache") . '</h4>' . $html . '</nav>';
}
?>