diff options
Diffstat (limited to 'includes/sys_menu.php')
-rw-r--r-- | includes/sys_menu.php | 123 |
1 files changed, 70 insertions, 53 deletions
diff --git a/includes/sys_menu.php b/includes/sys_menu.php index 03009516..85a6db28 100644 --- a/includes/sys_menu.php +++ b/includes/sys_menu.php @@ -11,7 +11,10 @@ function page_link_to($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); + return (isset($_SERVER['HTTPS']) ? 'https' : 'http') . '://' + . $_SERVER['HTTP_HOST'] + . preg_replace("/\?.*$/", '', $_SERVER['REQUEST_URI']) + . page_link_to($page); } /** @@ -20,22 +23,22 @@ function page_link_to_absolute($page) function header_render_hints() { global $user; - + $hints_renderer = new UserHintsRenderer(); - + if (isset($user)) { $hints_renderer->addHint(admin_new_questions()); $hints_renderer->addHint(user_angeltypes_unconfirmed_hint()); $hints_renderer->addHint(render_user_departure_date_hint()); $hints_renderer->addHint(user_driver_license_required_hint()); - - // Important hints: - $hints_renderer->addHint(render_user_freeloader_hint(), true); + + // Important hints: + $hints_renderer->addHint(render_user_freeloader_hint(), true); $hints_renderer->addHint(render_user_arrived_hint(), true); $hints_renderer->addHint(render_user_tshirt_hint(), true); $hints_renderer->addHint(render_user_dect_hint(), true); } - + return $hints_renderer->render(); } @@ -45,106 +48,120 @@ function header_render_hints() function header_toolbar() { global $page, $privileges, $user; - + $toolbar_items = []; - + if (isset($user)) { - $toolbar_items[] = toolbar_item_link(page_link_to('shifts') . '&action=next', 'time', User_shift_state_render($user)); + $toolbar_items[] = toolbar_item_link( + page_link_to('shifts') . '&action=next', + 'time', + User_shift_state_render($user) + ); } - - if (! isset($user) && in_array('register', $privileges)) { + + if (!isset($user) && in_array('register', $privileges)) { $toolbar_items[] = toolbar_item_link(page_link_to('register'), 'plus', register_title(), $page == 'register'); } - + if (in_array('login', $privileges)) { $toolbar_items[] = toolbar_item_link(page_link_to('login'), 'log-in', login_title(), $page == 'login'); } - + if (isset($user) && in_array('user_messages', $privileges)) { $toolbar_items[] = toolbar_item_link(page_link_to('user_messages'), 'envelope', user_unread_messages()); } - + $toolbar_items[] = header_render_hints(); if (in_array('user_myshifts', $privileges)) { - $toolbar_items[] = toolbar_item_link(page_link_to('users') . '&action=view', ' icon-icon_angel', $user['Nick'], $page == 'users'); + $toolbar_items[] = toolbar_item_link( + page_link_to('users') . '&action=view', + ' icon-icon_angel', + $user['Nick'], + $page == 'users' + ); } - + $user_submenu = make_user_submenu(); if (count($user_submenu) > 0) { $toolbar_items[] = toolbar_dropdown('', '', $user_submenu); } - + return toolbar($toolbar_items, true); } function make_user_submenu() { global $privileges, $page; - + $user_submenu = make_langselect(); - + if (in_array('user_settings', $privileges) || in_array('logout', $privileges)) { $user_submenu[] = toolbar_item_divider(); } - + if (in_array('user_settings', $privileges)) { - $user_submenu[] = toolbar_item_link(page_link_to('user_settings'), 'list-alt', settings_title(), $page == 'user_settings'); + $user_submenu[] = toolbar_item_link( + page_link_to('user_settings'), + 'list-alt', + settings_title(), + $page == 'user_settings' + ); } - + if (in_array('logout', $privileges)) { $user_submenu[] = toolbar_item_link(page_link_to('logout'), 'log-out', logout_title(), $page == 'logout'); } - + return $user_submenu; } function make_navigation() { global $page, $privileges; - + $menu = []; $pages = [ - "news" => news_title(), - "user_meetings" => meetings_title(), - "user_shifts" => shifts_title(), - "angeltypes" => angeltypes_title(), - "user_questions" => questions_title() - ]; - + "news" => news_title(), + "user_meetings" => meetings_title(), + "user_shifts" => shifts_title(), + "angeltypes" => angeltypes_title(), + "user_questions" => questions_title() + ]; + foreach ($pages as $menu_page => $title) { if (in_array($menu_page, $privileges)) { $menu[] = toolbar_item_link(page_link_to($menu_page), '', $title, $menu_page == $page); } } - + $menu = make_room_navigation($menu); - + $admin_menu = []; $admin_pages = [ - "admin_arrive" => admin_arrive_title(), - "admin_active" => admin_active_title(), - "admin_user" => admin_user_title(), - "admin_free" => admin_free_title(), - "admin_questions" => admin_questions_title(), - "shifttypes" => shifttypes_title(), - "admin_shifts" => admin_shifts_title(), - "admin_rooms" => admin_rooms_title(), - "admin_groups" => admin_groups_title(), - "admin_import" => admin_import_title(), - "admin_log" => admin_log_title(), - "admin_event_config" => event_config_title() - ]; - + "admin_arrive" => admin_arrive_title(), + "admin_active" => admin_active_title(), + "admin_user" => admin_user_title(), + "admin_free" => admin_free_title(), + "admin_questions" => admin_questions_title(), + "shifttypes" => shifttypes_title(), + "admin_shifts" => admin_shifts_title(), + "admin_rooms" => admin_rooms_title(), + "admin_groups" => admin_groups_title(), + "admin_import" => admin_import_title(), + "admin_log" => admin_log_title(), + "admin_event_config" => event_config_title() + ]; + foreach ($admin_pages as $menu_page => $title) { if (in_array($menu_page, $privileges)) { $admin_menu[] = toolbar_item_link(page_link_to($menu_page), '', $title, $menu_page == $page); } } - + if (count($admin_menu) > 0) { $menu[] = toolbar_dropdown('', _("Admin"), $admin_menu); } - + return toolbar($menu); } @@ -157,11 +174,11 @@ function make_navigation() function make_room_navigation($menu) { global $privileges; - - if (! in_array('view_rooms', $privileges)) { + + if (!in_array('view_rooms', $privileges)) { return $menu; } - + $rooms = Rooms(); $room_menu = []; if (in_array('admin_rooms', $privileges)) { |