summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
authormsquare <msquare@notrademark.de>2016-09-29 09:25:06 +0200
committermsquare <msquare@notrademark.de>2016-09-29 09:25:06 +0200
commit6685beb39784f63751b7cae6d211a5808c6e47a3 (patch)
treeea6f07976e9075fe2c4fd2bfc16a341e34c463d1 /includes
parent50bf7feff0e0461e6afc7a6488dec1b898fa5abd (diff)
display event countdowns on start page
Diffstat (limited to 'includes')
-rw-r--r--includes/pages/guest_login.php51
-rw-r--r--includes/view/EventConfig_view.php45
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") . ' &raquo;')
+ button(page_link_to('angeltypes') . '&action=about', _("Teams/Job description") . ' &raquo;')
+ ])
])
])
])
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