diff options
author | msquare <msquare@notrademark.de> | 2016-09-29 09:25:06 +0200 |
---|---|---|
committer | msquare <msquare@notrademark.de> | 2016-09-29 09:25:06 +0200 |
commit | 6685beb39784f63751b7cae6d211a5808c6e47a3 (patch) | |
tree | ea6f07976e9075fe2c4fd2bfc16a341e34c463d1 /includes | |
parent | 50bf7feff0e0461e6afc7a6488dec1b898fa5abd (diff) |
display event countdowns on start page
Diffstat (limited to 'includes')
-rw-r--r-- | includes/pages/guest_login.php | 51 | ||||
-rw-r--r-- | includes/view/EventConfig_view.php | 45 |
2 files changed, 72 insertions, 24 deletions
diff --git a/includes/pages/guest_login.php b/includes/pages/guest_login.php index d3eb1916..dfda3306 100644 --- a/includes/pages/guest_login.php +++ b/includes/pages/guest_login.php @@ -306,27 +306,38 @@ function guest_login() { } } - return page_with_title(login_title(), [ - msg(), - div('row', [ - div('col-md-6', [ - form([ - form_text('nick', _("Nick"), $nick), - form_password('password', _("Password")), - form_submit('submit', _("Login")), + $event_config = EventConfig(); + if ($event_config === false) { + engelsystem_error("Unable to load event config."); + } + + return page([ + div('col-md-12', [ + msg(), + div('row', [ + div('col-md-4', [ + EventConfig_countdown_page($event_config) + ]), + div('col-md-4', [ + heading(login_title(), 2), + form([ + form_text('nick', _("Nick"), $nick), + form_password('password', _("Password")), + form_submit('submit', _("Login")), + buttons([ + button(page_link_to('user_password_recovery'), _("I forgot my password")) + ]), + info(_("Please note: You have to activate cookies!"), true) + ]) + ]), + div('col-md-4', [ + heading(register_title(), 2), + get_register_hint(), + heading(_("What can I do?"), 2), + '<p>' . _("Please read about the jobs you can do to help us.") . '</p>', buttons([ - button(page_link_to('user_password_recovery'), _("I forgot my password")) - ]), - info(_("Please note: You have to activate cookies!"), true) - ]) - ]), - div('col-md-6', [ - '<h2>' . register_title() . '</h2>', - get_register_hint(), - '<h2>' . _("What can I do?") . '</h2>', - '<p>' . _("Please read about the jobs you can do to help us.") . '</p>', - buttons([ - button(page_link_to('angeltypes') . '&action=about', _("Teams/Job description") . ' »') + button(page_link_to('angeltypes') . '&action=about', _("Teams/Job description") . ' »') + ]) ]) ]) ]) diff --git a/includes/view/EventConfig_view.php b/includes/view/EventConfig_view.php index 429b6a86..682477ff 100644 --- a/includes/view/EventConfig_view.php +++ b/includes/view/EventConfig_view.php @@ -1,12 +1,49 @@ <?php /** + * Shows basic event infos and countdowns. + * @param EventConfig $event_config The event configuration + */ +function EventConfig_countdown_page($event_config) { + if ($event_config == null) { + return info(_("We got no information about the event right now."), true); + } + + $elements = []; + + if ($event_config['event_name'] != null) { + $elements[] = heading($event_config['event_name'], 2); + } + + if ($event_config['event_start_date'] != null && $event_config['event_end_date'] != null) { + $elements[] = sprintf(_("from %s to %s"), date("Y-m-d", $event_config['event_start_date']), date("Y-m-d", $event_config['event_end_date'])); + } + + if ($event_config['buildup_start_date'] != null && time() < $event_config['buildup_start_date']) { + $elements[] = '<h2 class="moment-countdown" data-timestamp="' . $event_config['buildup_start_date'] . '">' . _("Buildup starts in %c") . '</h2>'; + } + + if ($event_config['event_start_date'] != null && time() < $event_config['event_start_date']) { + $elements[] = '<h2 class="moment-countdown" data-timestamp="' . $event_config['event_start_date'] . '">' . _("Event starts in %c") . '</h2>'; + } + + if ($event_config['event_end_date'] != null && time() < $event_config['event_end_date'] && ($event_config['event_start_date'] == null || time() > $event_config['event_start_date'])) { + $elements[] = '<h2 class="moment-countdown" data-timestamp="' . $event_config['event_end_date'] . '">' . _("Event ends in %c") . '</h2>'; + } + + if ($event_config['teardown_end_date'] != null && time() < $event_config['teardown_end_date'] && ($event_config['event_start_date'] == null || time() > $event_config['event_start_date'])) { + $elements[] = '<h2 class="moment-countdown" data-timestamp="' . $event_config['teardown_end_date'] . '">' . _("Teardown ends in %c") . '</h2>'; + } + + return join("", $elements); +} + +/** * Converts event name and start+end date into a line of text. */ -function EventConfig_info() { - $event_config = EventConfig(); - if ($event_config === false) { - engelsystem_error("Unable to load event config."); +function EventConfig_info($event_config) { + if ($event_config == null) { + return ""; } // Event name, start+end date are set |