$title = shifts_title(); $content = user_shifts(); } elseif ($p == "user_messages") { $title = messages_title(); $content = user_messages(); } elseif ($p == "user_questions") { $title = questions_title(); $content = user_questions(); } elseif ($p == "user_settings") { $title = settings_title(); $content = user_settings(); } elseif ($p == "login") { $title = login_title(); $content = guest_login(); } elseif ($p == "register") { $title = register_title(); $content = guest_register(); } elseif ($p == "logout") { $title = logout_title(); $content = guest_logout(); } elseif ($p == "admin_questions") { $title = admin_questions_title(); $content = admin_questions(); } elseif ($p == "admin_user") { $title = admin_user_title(); $content = admin_user(); } elseif ($p == "admin_arrive") { $title = admin_arrive_title(); $content = admin_arrive(); } elseif ($p == "admin_active") { $title = admin_active_title();
/** * Renders the header toolbar containing search, login/logout, user and settings links. */ function header_toolbar() { global $p, $privileges, $user, $enable_tshirt_size, $max_freeloadable_shifts; $toolbar_items = array(); if (isset($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)) { $toolbar_items[] = toolbar_item_link(page_link_to('register'), 'plus', register_title(), $p == 'register'); } if (in_array('login', $privileges)) { $toolbar_items[] = toolbar_item_link(page_link_to('login'), 'log-in', login_title(), $p == 'login'); } if (isset($user) && in_array('user_messages', $privileges)) { $toolbar_items[] = toolbar_item_link(page_link_to('user_messages'), 'envelope', user_unread_messages()); } $hints = []; if (isset($user)) { $hint_class = 'info'; $glyphicon = 'info-sign'; // Erzengel Hinweis für unbeantwortete Fragen if ($p != "admin_questions") { $new_questions = admin_new_questions(); if ($new_questions != "") { $hints[] = $new_questions; } } $unconfirmed_hint = user_angeltypes_unconfirmed_hint(); if ($unconfirmed_hint != '') { $hints[] = $unconfirmed_hint; } if (!isset($user['planned_departure_date']) || $user['planned_departure_date'] == null) { $hints[] = info(_("Please enter your planned date of departure on your settings page to give us a feeling for teardown capacities."), true); } $driver_license_required = user_driver_license_required_hint(); if ($driver_license_required != '') { $hints[] = $driver_license_required; } if (User_is_freeloader($user)) { $hints[] = error(sprintf(_("You freeloaded at least %s shifts. Shift signup is locked. Please go to heavens desk to be unlocked again."), $max_freeloadable_shifts), true); $hint_class = 'danger'; $glyphicon = 'warning-sign'; } // Hinweis für Engel, die noch nicht angekommen sind if ($user['Gekommen'] == 0) { $hints[] = error(_("You are not marked as arrived. Please go to heaven's desk, get your angel badge and/or tell them that you arrived already."), true); $hint_class = 'danger'; $glyphicon = 'warning-sign'; } if ($enable_tshirt_size && $user['Size'] == "") { $hints[] = error(_("You need to specify a tshirt size in your settings!"), true); $hint_class = 'danger'; $glyphicon = 'warning-sign'; } if ($user['Handy'] == "") { $hints[] = info(_("Please specify a mobile phone number in your settings."), true); $hint_class = 'danger'; $glyphicon = 'warning-sign'; } } if (count($hints) > 0) { $toolbar_items[] = toolbar_popover($glyphicon . ' text-' . $hint_class, '', $hints, 'bg-' . $hint_class); } $user_submenu = make_langselect(); $user_submenu[] = toolbar_item_divider(); if (in_array('user_myshifts', $privileges)) { $toolbar_items[] = toolbar_item_link(page_link_to('users') . '&action=view', ' icon-icon_angel', $user['Nick'], $p == 'users'); } if (in_array('user_settings', $privileges)) { $user_submenu[] = toolbar_item_link(page_link_to('user_settings'), 'list-alt', settings_title(), $p == 'user_settings'); } if (in_array('logout', $privileges)) { $user_submenu[] = toolbar_item_link(page_link_to('logout'), 'log-out', logout_title(), $p == 'logout'); } if (count($user_submenu) > 0) { $toolbar_items[] = toolbar_dropdown('', '', $user_submenu); } return toolbar($toolbar_items, true); }
function guest_login() { global $user, $privileges; $nick = ""; unset($_SESSION['uid']); if (isset($_REQUEST['submit'])) { $ok = true; if (isset($_REQUEST['nick']) && strlen(User_validate_Nick($_REQUEST['nick'])) > 0) { $nick = User_validate_Nick($_REQUEST['nick']); $login_user = sql_select("SELECT * FROM `User` WHERE `Nick`='" . sql_escape($nick) . "'"); if (count($login_user) > 0) { $login_user = $login_user[0]; if (isset($_REQUEST['password'])) { if (!verify_password($_REQUEST['password'], $login_user['Passwort'], $login_user['UID'])) { $ok = false; error(_("Your password is incorrect. Please try it again.")); } else { //password is okay, check confirmaiton if ($login_user['user_account_approved'] !== '1') { $ok = false; error(_("Your account is not confirmed yet. Please click the link in the mail we sent you. If you didn't get an eMail, ask a dispatcher.")); } } } else { $ok = false; error(_("Please enter a password.")); } } else { $ok = false; error(_("No user was found with that Nickname. Please try again. If you are still having problems, ask an Dispatcher.")); } } else { $ok = false; error(_("Please enter a nickname.")); } if ($ok) { $_SESSION['uid'] = $login_user['UID']; $_SESSION['locale'] = $login_user['Sprache']; redirect(page_link_to('shifts')); } } if (in_array('register', $privileges)) { $register_hint = join('', array('<p>' . _("Please sign up, if you want to help us!") . '</p>', buttons(array(button(page_link_to('register'), register_title() . ' »'))))); } else { $register_hint = join('', array(error(_('Registration is disabled.'), true))); } return page_with_title(login_title(), array(msg(), '<div class="row"><div class="col-md-6">', form(array(form_text('nick', _("Nick"), $nick), form_password('password', _("Password")), form_submit('submit', _("Login")), buttons(array(button(page_link_to('user_password_recovery'), _("I forgot my password")))), info(_("Please note: You have to activate cookies!"), true))), '</div></div>')); }
function guest_login() { global $user, $privileges; $nick = ""; unset($_SESSION['uid']); if (isset($_REQUEST['submit'])) { $ok = true; if (isset($_REQUEST['nick']) && strlen(User_validate_Nick($_REQUEST['nick'])) > 0) { $nick = User_validate_Nick($_REQUEST['nick']); $login_user = sql_select("SELECT * FROM `User` WHERE `Nick`='" . sql_escape($nick) . "'"); if (count($login_user) > 0) { $login_user = $login_user[0]; if (isset($_REQUEST['password'])) { if (!verify_password($_REQUEST['password'], $login_user['Passwort'], $login_user['UID'])) { $ok = false; error(_("Your password is incorrect. Please try it again.")); } } else { $ok = false; error(_("Please enter a password.")); } } else { $ok = false; error(_("No user was found with that Nickname. Please try again. If you are still having problems, ask an Dispatcher.")); } } else { $ok = false; error(_("Please enter a nickname.")); } if ($ok) { $_SESSION['uid'] = $login_user['UID']; $_SESSION['locale'] = $login_user['Sprache']; redirect(page_link_to('news')); } } if (in_array('register', $privileges)) { $register_hint = join('', array('<p>' . _("Please sign up, if you want to help us!") . '</p>', buttons(array(button(page_link_to('register'), register_title() . ' »'))))); } else { $register_hint = join('', array(error(_('Registration is disabled.'), true))); } return page_with_title(login_title(), array(msg(), '<div class="row"><div class="col-md-6">', form(array(form_text('nick', _("Nick"), $nick), form_password('password', _("Password")), form_submit('submit', _("Login")), buttons(array(button(page_link_to('user_password_recovery'), _("I forgot my password")))), info(_("Please note: You have to activate cookies!"), true))), '</div>', '<div class="col-md-6">', '<h2>' . register_title() . '</h2>', $register_hint, '<h2>' . _("What can I do?") . '</h2>', '<p>' . _("Please read about the jobs you can do to help us.") . '</p>', buttons(array(button(page_link_to('angeltypes') . '&action=about', _("Teams/Job description") . ' »'))), '</div></div>')); }
function AngelTypes_about_view($angeltypes, $user_logged_in) { global $faq_url; $content = array(buttons(array(!$user_logged_in ? button(page_link_to('register'), register_title()) : '', !$user_logged_in ? button(page_link_to('login'), login_title()) : '', $user_logged_in ? button(page_link_to('angeltypes'), angeltypes_title(), 'back') : '', button($faq_url, _("FAQ"), "btn-primary"))), '<p>' . _("Here is the list of teams and their tasks. If you have questions, read the FAQ.") . '</p>', '<hr />'); $parsedown = new Parsedown(); foreach ($angeltypes as $angeltype) { $content[] = '<h2>' . $angeltype['name'] . '</h2>'; if (isset($angeltype['user_angeltype_id'])) { $buttons = array(); if ($angeltype['user_angeltype_id'] != null) { $buttons[] = button(page_link_to('user_angeltypes') . '&action=delete&user_angeltype_id=' . $angeltype['user_angeltype_id'], _("leave"), 'cancel'); } else { $buttons[] = button(page_link_to('user_angeltypes') . '&action=add&angeltype_id=' . $angeltype['id'], _("join"), 'add'); } $content[] = buttons($buttons); } if ($angeltype['restricted']) { $content[] = info(_("This angeltype is restricted by double-opt-in by a team coordinator. Please show up at the according introduction meetings."), true); } if ($angeltype['description'] != "") { $content[] = '<div class="well">' . $parsedown->parse($angeltype['description']) . '</div>'; } $content[] = '<hr />'; } return page_with_title(_("Teams/Job description"), $content); }