summaryrefslogtreecommitdiff
path: root/public
diff options
context:
space:
mode:
authormsquare <msquare@notrademark.de>2017-11-28 15:43:51 +0100
committerGitHub <noreply@github.com>2017-11-28 15:43:51 +0100
commit599f2fd264bfc7b1b6826fe206442806e317340f (patch)
tree50cf84d7d07d11bd65b45c2c17f37632f6cd8eff /public
parenta5fc5bd0979e8de1fce8a8addd351a6e7bd6aeb8 (diff)
parenteda7f7788ea8012bd8be46405c56a666c11f3fa5 (diff)
Merge pull request #365 from engelsystem/feature-igel-rewrite
Feature igel rewrite
Diffstat (limited to 'public')
-rw-r--r--public/.htaccess8
-rw-r--r--public/css/theme0.css7
-rw-r--r--public/css/theme1.css7
-rw-r--r--public/css/theme2.css7
-rw-r--r--public/css/theme3.css7
-rw-r--r--public/css/theme4.css7
-rw-r--r--public/index.php360
-rw-r--r--public/js/forms.js32
-rw-r--r--public/js/moment-countdown.js28
-rw-r--r--public/js/sticky-headers.js37
-rw-r--r--public/maintenance.html72
-rw-r--r--public/overwhelmed.html57
l---------public/vendor/bootstrap2
13 files changed, 278 insertions, 353 deletions
diff --git a/public/.htaccess b/public/.htaccess
new file mode 100644
index 00000000..2b1d3a7a
--- /dev/null
+++ b/public/.htaccess
@@ -0,0 +1,8 @@
+
+<IfModule mod_rewrite.c>
+ RewriteEngine on
+
+ RewriteCond %{REQUEST_FILENAME} !-d
+ RewriteCond %{REQUEST_FILENAME} !-f
+ RewriteRule ^ index.php [L]
+</IfModule>
diff --git a/public/css/theme0.css b/public/css/theme0.css
index 4c09a094..050f689e 100644
--- a/public/css/theme0.css
+++ b/public/css/theme0.css
@@ -1,6 +1,6 @@
/*!
- * Bootstrap v3.3.6 (http://getbootstrap.com)
- * Copyright 2011-2015 Twitter, Inc.
+ * Bootstrap v3.3.7 (http://getbootstrap.com)
+ * Copyright 2011-2016 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
@@ -1095,7 +1095,6 @@ a:focus {
text-decoration: underline;
}
a:focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
@@ -2524,7 +2523,6 @@ select[size] {
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
@@ -3015,7 +3013,6 @@ select[multiple].input-lg {
.btn.focus,
.btn:active.focus,
.btn.active.focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
diff --git a/public/css/theme1.css b/public/css/theme1.css
index 3b5201b6..06ce9907 100644
--- a/public/css/theme1.css
+++ b/public/css/theme1.css
@@ -22,8 +22,8 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
/*!
- * Bootstrap v3.3.6 (http://getbootstrap.com)
- * Copyright 2011-2015 Twitter, Inc.
+ * Bootstrap v3.3.7 (http://getbootstrap.com)
+ * Copyright 2011-2016 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
@@ -1118,7 +1118,6 @@ a:focus {
text-decoration: underline;
}
a:focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
@@ -2547,7 +2546,6 @@ select[size] {
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
@@ -3038,7 +3036,6 @@ select[multiple].input-lg {
.btn.focus,
.btn:active.focus,
.btn.active.focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
diff --git a/public/css/theme2.css b/public/css/theme2.css
index 07f2ea10..9ca9babb 100644
--- a/public/css/theme2.css
+++ b/public/css/theme2.css
@@ -1,6 +1,6 @@
/*!
- * Bootstrap v3.3.6 (http://getbootstrap.com)
- * Copyright 2011-2015 Twitter, Inc.
+ * Bootstrap v3.3.7 (http://getbootstrap.com)
+ * Copyright 2011-2016 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
@@ -1095,7 +1095,6 @@ a:focus {
text-decoration: underline;
}
a:focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
@@ -2524,7 +2523,6 @@ select[size] {
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
@@ -3015,7 +3013,6 @@ select[multiple].input-lg {
.btn.focus,
.btn:active.focus,
.btn.active.focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
diff --git a/public/css/theme3.css b/public/css/theme3.css
index 2b5358be..abb90f23 100644
--- a/public/css/theme3.css
+++ b/public/css/theme3.css
@@ -8,8 +8,8 @@
color: #000;
}
/*!
- * Bootstrap v3.3.6 (http://getbootstrap.com)
- * Copyright 2011-2015 Twitter, Inc.
+ * Bootstrap v3.3.7 (http://getbootstrap.com)
+ * Copyright 2011-2016 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
@@ -1104,7 +1104,6 @@ a:focus {
text-decoration: underline;
}
a:focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
@@ -2533,7 +2532,6 @@ select[size] {
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
@@ -3024,7 +3022,6 @@ select[multiple].input-lg {
.btn.focus,
.btn:active.focus,
.btn.active.focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
diff --git a/public/css/theme4.css b/public/css/theme4.css
index 7f80b411..24771afd 100644
--- a/public/css/theme4.css
+++ b/public/css/theme4.css
@@ -22,8 +22,8 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
/*!
- * Bootstrap v3.3.6 (http://getbootstrap.com)
- * Copyright 2011-2015 Twitter, Inc.
+ * Bootstrap v3.3.7 (http://getbootstrap.com)
+ * Copyright 2011-2016 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
@@ -1118,7 +1118,6 @@ a:focus {
text-decoration: underline;
}
a:focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
@@ -2547,7 +2546,6 @@ select[size] {
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
@@ -3038,7 +3036,6 @@ select[multiple].input-lg {
.btn.focus,
.btn:active.focus,
.btn.active.focus {
- outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
diff --git a/public/index.php b/public/index.php
index 85e5b4da..69d92127 100644
--- a/public/index.php
+++ b/public/index.php
@@ -1,5 +1,8 @@
<?php
-require_once realpath(__DIR__ . '/../includes/engelsystem_provider.php');
+
+use Engelsystem\Http\Request;
+
+require_once realpath(__DIR__ . '/../includes/engelsystem.php');
$free_pages = [
'admin_event_config',
@@ -16,163 +19,222 @@ $free_pages = [
'stats',
'users',
'user_driver_licenses',
- 'user_password_recovery'
+ 'user_password_recovery',
];
// Gewünschte Seite/Funktion
-$page = "";
-if (! isset($_REQUEST['p'])) {
- $_REQUEST['p'] = isset($user) ? "news" : "login";
+$page = '';
+$title = '';
+$content = '';
+
+/** @var Request $request */
+$request = $app->get('request');
+$page = $request->query->get('p');
+if (empty($page)) {
+ $page = $request->path();
+ $page = str_replace('-', '_', $page);
}
+if ($page == '/') {
+ $page = isset($user) ? 'news' : 'login';
+}
+
+if (
+ preg_match('/^\w*$/i', $page)
+ && (
+ in_array($page, $free_pages)
+ || (isset($privileges) && in_array($page, $privileges))
+ )
+) {
+ $title = $page;
-if (isset($_REQUEST['p']) && preg_match("/^[a-z0-9_]*$/i", $_REQUEST['p']) && (in_array($_REQUEST['p'], $free_pages) || in_array($_REQUEST['p'], $privileges))) {
- $page = $_REQUEST['p'];
-
- $title = $page;
- $content = "";
-
- if ($page == "api") {
- require_once realpath(__DIR__ . '/../includes/controller/api.php');
- error("Api disabled temporily.");
- redirect(page_link_to('login'));
- api_controller();
- } elseif ($page == "ical") {
- require_once realpath(__DIR__ . '/../includes/pages/user_ical.php');
- user_ical();
- } elseif ($page == "atom") {
- require_once realpath(__DIR__ . '/../includes/pages/user_atom.php');
- user_atom();
- } elseif ($page == "shifts_json_export") {
- require_once realpath(__DIR__ . '/../includes/controller/shifts_controller.php');
- shifts_json_export_controller();
- } elseif ($page == "shifts_json_export_all") {
- require_once realpath(__DIR__ . '/../includes/controller/shifts_controller.php');
- shifts_json_export_all_controller();
- } elseif ($page == "stats") {
- require_once realpath(__DIR__ . '/../includes/pages/guest_stats.php');
- guest_stats();
- } elseif ($page == "user_password_recovery") {
- require_once realpath(__DIR__ . '/../includes/controller/users_controller.php');
- $title = user_password_recovery_title();
- $content = user_password_recovery_controller();
- } elseif ($page == "angeltypes") {
- list($title, $content) = angeltypes_controller();
- } elseif ($page == "shifts") {
- list($title, $content) = shifts_controller();
- } elseif ($page == "users") {
- list($title, $content) = users_controller();
- } elseif ($page == "user_angeltypes") {
- list($title, $content) = user_angeltypes_controller();
- } elseif ($page == "user_driver_licenses") {
- list($title, $content) = user_driver_licenses_controller();
- } elseif ($page == "shifttypes") {
- list($title, $content) = shifttypes_controller();
- } elseif ($page == "admin_event_config") {
- list($title, $content) = event_config_edit_controller();
- } elseif ($page == "rooms") {
- list($title, $content) = rooms_controller();
- } elseif ($page == "news") {
- $title = news_title();
- $content = user_news();
- } elseif ($page == "news_comments") {
- require_once realpath(__DIR__ . '/../includes/pages/user_news.php');
- $title = user_news_comments_title();
- $content = user_news_comments();
- } elseif ($page == "user_meetings") {
- $title = meetings_title();
- $content = user_meetings();
- } elseif ($page == "user_myshifts") {
- $title = myshifts_title();
- $content = user_myshifts();
- } elseif ($page == "user_shifts") {
- $title = shifts_title();
- $content = user_shifts();
- } elseif ($page == "user_messages") {
- $title = messages_title();
- $content = user_messages();
- } elseif ($page == "user_questions") {
- $title = questions_title();
- $content = user_questions();
- } elseif ($page == "user_settings") {
- $title = settings_title();
- $content = user_settings();
- } elseif ($page == "login") {
- $title = login_title();
- $content = guest_login();
- } elseif ($page == "register") {
- $title = register_title();
- $content = guest_register();
- } elseif ($page == "logout") {
- $title = logout_title();
- $content = guest_logout();
- } elseif ($page == "admin_questions") {
- $title = admin_questions_title();
- $content = admin_questions();
- } elseif ($page == "admin_user") {
- $title = admin_user_title();
- $content = admin_user();
- } elseif ($page == "admin_arrive") {
- $title = admin_arrive_title();
- $content = admin_arrive();
- } elseif ($page == "admin_active") {
- $title = admin_active_title();
- $content = admin_active();
- } elseif ($page == "admin_free") {
- $title = admin_free_title();
- $content = admin_free();
- } elseif ($page == "admin_news") {
- require_once realpath(__DIR__ . '/../includes/pages/admin_news.php');
- $content = admin_news();
- } elseif ($page == "admin_rooms") {
- $title = admin_rooms_title();
- $content = admin_rooms();
- } elseif ($page == "admin_groups") {
- $title = admin_groups_title();
- $content = admin_groups();
- } elseif ($page == "admin_language") {
- require_once realpath(__DIR__ . '/../includes/pages/admin_language.php');
- $content = admin_language();
- } elseif ($page == "admin_import") {
- $title = admin_import_title();
- $content = admin_import();
- } elseif ($page == "admin_shifts") {
- $title = admin_shifts_title();
- $content = admin_shifts();
- } elseif ($page == "admin_log") {
- $title = admin_log_title();
- $content = admin_log();
- } elseif ($page == "credits") {
- require_once realpath(__DIR__ . '/../includes/pages/guest_credits.php');
- $title = credits_title();
- $content = guest_credits();
- } else {
- require_once realpath(__DIR__ . '/../includes/pages/guest_start.php');
- $content = guest_start();
- }
+ switch ($page) {
+ case 'api':
+ error('Api disabled temporarily.');
+ redirect(page_link_to());
+ break;
+ case 'ical':
+ require_once realpath(__DIR__ . '/../includes/pages/user_ical.php');
+ user_ical();
+ break;
+ case 'atom':
+ require_once realpath(__DIR__ . '/../includes/pages/user_atom.php');
+ user_atom();
+ break;
+ case 'shifts_json_export':
+ require_once realpath(__DIR__ . '/../includes/controller/shifts_controller.php');
+ shifts_json_export_controller();
+ break;
+ case 'shifts_json_export_all':
+ require_once realpath(__DIR__ . '/../includes/controller/shifts_controller.php');
+ shifts_json_export_all_controller();
+ break;
+ case 'stats':
+ require_once realpath(__DIR__ . '/../includes/pages/guest_stats.php');
+ guest_stats();
+ break;
+ case 'user_password_recovery':
+ require_once realpath(__DIR__ . '/../includes/controller/users_controller.php');
+ $title = user_password_recovery_title();
+ $content = user_password_recovery_controller();
+ break;
+ case 'angeltypes':
+ list($title, $content) = angeltypes_controller();
+ break;
+ case 'shifts':
+ list($title, $content) = shifts_controller();
+ break;
+ case 'users':
+ list($title, $content) = users_controller();
+ break;
+ case 'user_angeltypes':
+ list($title, $content) = user_angeltypes_controller();
+ break;
+ case 'user_driver_licenses':
+ list($title, $content) = user_driver_licenses_controller();
+ break;
+ case 'shifttypes':
+ list($title, $content) = shifttypes_controller();
+ break;
+ case 'admin_event_config':
+ list($title, $content) = event_config_edit_controller();
+ break;
+ case 'rooms':
+ list($title, $content) = rooms_controller();
+ break;
+ case 'news':
+ $title = news_title();
+ $content = user_news();
+ break;
+ case 'news_comments':
+ require_once realpath(__DIR__ . '/../includes/pages/user_news.php');
+ $title = user_news_comments_title();
+ $content = user_news_comments();
+ break;
+ case 'user_meetings':
+ $title = meetings_title();
+ $content = user_meetings();
+ break;
+ case 'user_myshifts':
+ $title = myshifts_title();
+ $content = user_myshifts();
+ break;
+ case 'user_shifts':
+ $title = shifts_title();
+ $content = user_shifts();
+ break;
+ case 'user_messages':
+ $title = messages_title();
+ $content = user_messages();
+ break;
+ case 'user_questions':
+ $title = questions_title();
+ $content = user_questions();
+ break;
+ case 'user_settings':
+ $title = settings_title();
+ $content = user_settings();
+ break;
+ case 'login':
+ $title = login_title();
+ $content = guest_login();
+ break;
+ case 'register':
+ $title = register_title();
+ $content = guest_register();
+ break;
+ case 'logout':
+ $title = logout_title();
+ $content = guest_logout();
+ break;
+ case 'admin_questions':
+ $title = admin_questions_title();
+ $content = admin_questions();
+ break;
+ case 'admin_user':
+ $title = admin_user_title();
+ $content = admin_user();
+ break;
+ case 'admin_arrive':
+ $title = admin_arrive_title();
+ $content = admin_arrive();
+ break;
+ case 'admin_active':
+ $title = admin_active_title();
+ $content = admin_active();
+ break;
+ case 'admin_free':
+ $title = admin_free_title();
+ $content = admin_free();
+ break;
+ case 'admin_news':
+ require_once realpath(__DIR__ . '/../includes/pages/admin_news.php');
+ $content = admin_news();
+ break;
+ case 'admin_rooms':
+ $title = admin_rooms_title();
+ $content = admin_rooms();
+ break;
+ case 'admin_groups':
+ $title = admin_groups_title();
+ $content = admin_groups();
+ break;
+ case 'admin_import':
+ $title = admin_import_title();
+ $content = admin_import();
+ break;
+ case 'admin_shifts':
+ $title = admin_shifts_title();
+ $content = admin_shifts();
+ break;
+ case 'admin_log':
+ $title = admin_log_title();
+ $content = admin_log();
+ break;
+ case 'credits':
+ require_once realpath(__DIR__ . '/../includes/pages/guest_credits.php');
+ $title = credits_title();
+ $content = guest_credits();
+ break;
+ default:
+ require_once realpath(__DIR__ . '/../includes/pages/guest_start.php');
+ $content = guest_start();
+ break;
+ }
} else {
- // Wenn schon eingeloggt, keine-Berechtigung-Seite anzeigen
- if (isset($user)) {
- $title = _("No Access");
- $content = _("You don't have permission to view this page. You probably have to sign in or register in order to gain access!");
- } else {
- // Sonst zur Loginseite leiten
- redirect(page_link_to("login"));
- }
+ // Wenn schon eingeloggt, keine-Berechtigung-Seite anzeigen
+ if (isset($user)) {
+ $title = _('No Access');
+ $content = _('You don\'t have permission to view this page . You probably have to sign in or register in order to gain access!');
+ } else {
+ // Sonst zur Loginseite leiten
+ redirect(page_link_to('login'));
+ }
}
$event_config = EventConfig();
-echo template_render(__DIR__ . '/../templates/layout.html', [
- 'theme' => isset($user) ? $user['color'] : $default_theme,
- 'title' => $title,
- 'atom_link' => ($page == 'news' || $page == 'user_meetings') ? '<link href="' . page_link_to('atom') . (($page == 'user_meetings') ? '&amp;meetings=1' : '') . '&amp;key=' . $user['api_key'] . '" type="application/atom+xml" rel="alternate" title="Atom Feed">' : '',
- 'menu' => make_menu(),
- 'content' => msg() . $content,
+$parameters = [
+ 'key' => (isset($user) ? $user['api_key'] : ''),
+];
+if ($page == 'user_meetings') {
+ $parameters['meetings'] = 1;
+}
+
+echo view(__DIR__ . '/../templates/layout.html', [
+ 'theme' => isset($user) ? $user['color'] : config('theme'),
+ 'title' => $title,
+ 'atom_link' => ($page == 'news' || $page == 'user_meetings')
+ ? ' <link href="'
+ . page_link_to('atom', $parameters)
+ . '" type = "application/atom+xml" rel = "alternate" title = "Atom Feed">'
+ : '',
+ 'start_page_url' => page_link_to('/'),
+ 'credits_url' => page_link_to('credits'),
+ 'menu' => make_menu(),
+ 'content' => msg() . $content,
'header_toolbar' => header_toolbar(),
- 'faq_url' => $faq_url,
- 'contact_email' => $contact_email,
- 'locale' => locale(),
- 'event_info' => EventConfig_info($event_config) . '<br />'
+ 'faq_url' => config('faq_url'),
+ 'contact_email' => config('contact_email'),
+ 'locale' => locale(),
+ 'event_info' => EventConfig_info($event_config) . ' <br />'
]);
-
-?>
diff --git a/public/js/forms.js b/public/js/forms.js
index f4e2e042..c4eb68df 100644
--- a/public/js/forms.js
+++ b/public/js/forms.js
@@ -1,28 +1,28 @@
/**
* Runs through the DOM under the element with the given id, finds all
* checkboxes and sets them to the wanted state.
- *
+ *
* @param String
* id Id of the element containing all the checkboxes
* @param Boolean
* checked True if the checkboxes should be checked
*/
function checkAll(id, checked) {
- var obj = document.getElementById(id);
- var boxes = obj.getElementsByTagName("input");
- for (var i = 0; i < boxes.length; i++) {
- if (boxes[i].type === "checkbox" && !boxes[i].disabled) {
- boxes[i].checked = checked;
- }
- }
+ var obj = document.getElementById(id);
+ var boxes = obj.getElementsByTagName("input");
+ for (var i = 0; i < boxes.length; i++) {
+ if (boxes[i].type === "checkbox" && !boxes[i].disabled) {
+ boxes[i].checked = checked;
+ }
+ }
}
-$(function() {
- /**
- * Disable every submit button after clicking (to prevent double-clicking)
- */
- $("form").submit(function(ev) {
- $("input[type='submit']").prop("readonly", true).addClass("disabled");
- return true;
- });
+$(function () {
+ /**
+ * Disable every submit button after clicking (to prevent double-clicking)
+ */
+ $("form").submit(function (ev) {
+ $("input[type='submit']").prop("readonly", true).addClass("disabled");
+ return true;
+ });
});
diff --git a/public/js/moment-countdown.js b/public/js/moment-countdown.js
index 9d655038..0cc78210 100644
--- a/public/js/moment-countdown.js
+++ b/public/js/moment-countdown.js
@@ -3,17 +3,17 @@
* class "moment-countdown" and the attribute "data-timestamp" which defines the
* countdown's time goal.
*/
-$(document).ready(function() {
- if (typeof moment !== "undefined") {
- $.each($(".moment-countdown"), function(i, e) {
- var span = $(e);
- var text = span.html();
- /* global moment */
- var timestamp = moment(parseInt(span.attr("data-timestamp") * 1000));
- span.html(text.replace("%c", timestamp.fromNow()));
- setInterval(function() {
- span.html(text.replace("%c", timestamp.fromNow()));
- }, 1000);
- });
- }
-}); \ No newline at end of file
+$(document).ready(function () {
+ if (typeof moment !== "undefined") {
+ $.each($(".moment-countdown"), function (i, e) {
+ var span = $(e);
+ var text = span.html();
+ /* global moment */
+ var timestamp = moment(parseInt(span.attr("data-timestamp") * 1000));
+ span.html(text.replace("%c", timestamp.fromNow()));
+ setInterval(function () {
+ span.html(text.replace("%c", timestamp.fromNow()));
+ }, 1000);
+ });
+ }
+});
diff --git a/public/js/sticky-headers.js b/public/js/sticky-headers.js
index 1d6e9402..6e6a75e2 100644
--- a/public/js/sticky-headers.js
+++ b/public/js/sticky-headers.js
@@ -1,32 +1,31 @@
/**
* Enables the fixed headers and time lane for the shift-calendar and datatables
*/
-$(document).ready(
- function() {
- if ($(".shift-calendar").length) {
+$(document).ready(function () {
+ if ($(".shift-calendar").length) {
var timeLanes = $(".shift-calendar .time");
var headers = $(".shift-calendar .header");
var topReference = $(".container-fluid .row");
- var top = headers.offset().top;
- var left = 15;
timeLanes.css({
- "position" : "relative",
- "z-index" : 999
+ "position": "relative",
+ "z-index": 999
});
headers.css({
- "position" : "relative",
- "z-index" : 900
+ "position": "relative",
+ "z-index": 900
});
$(window).scroll(
- function() {
- timeLanes.css({
- "left" : Math.max(0, $(window).scrollLeft() - left) + "px"
- });
- headers.css({
- "top" : Math.max(0, $(window).scrollTop() - top
- + topReference.offset().top)
+ function () {
+ var top = headers.parent().offset().top;
+ var left = 15;
+ timeLanes.css({
+ "left": Math.max(0, $(window).scrollLeft() - left) + "px"
+ });
+ headers.css({
+ "top": Math.max(0, $(window).scrollTop() - top
+ + topReference.offset().top)
+ "px"
- });
+ });
});
- }
- }); \ No newline at end of file
+ }
+});
diff --git a/public/maintenance.html b/public/maintenance.html
deleted file mode 100644
index bbdee2af..00000000
--- a/public/maintenance.html
+++ /dev/null
@@ -1,72 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<title>Maintenance - Engelsystem</title>
-<meta charset="UTF-8" />
-<meta name="viewport" content="width=device-width, initial-scale=1">
-<link rel="stylesheet" type="text/css" href="css/theme0.css" />
-<link rel="stylesheet" type="text/css" href="vendor/icomoon/style.css" />
-<link rel="stylesheet" type="text/css" href="vendor/bootstrap-datepicker-1.4.0/css/bootstrap-datepicker3.min.css" />
-<script type="text/javascript" src="vendor/jquery-2.1.1.min.js"></script>
-<script type="text/javascript" src="vendor/jquery-ui.min.js"></script>
-</head>
-<body>
- <div class="navbar navbar-default navbar-fixed-top">
- <div class="container-fluid">
- <div class="navbar-header">
- <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapse-1">
- <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span>
- </button>
- <a class="navbar-brand" href="?"><span class="icon-icon_angel"></span> <strong class="visible-lg-inline">ENGELSYSTEM</strong></a>
- </div>
- <div class="collapse navbar-collapse" id="navbar-collapse-1">
- <ul class="nav navbar-nav"></ul>
- <ul class="nav navbar-nav navbar-right">
- </ul>
- </div>
- </div>
- </div>
- <div class="container-fluid">
- <div class="row">
- <div class="jumbotron">
- <div class="container text-center">
- <h1>
- <span class="glyphicon glyphicon-scissors"></span> <span class="glyphicon glyphicon-wrench"></span> <span class="glyphicon glyphicon-fire"></span>
- </h1>
- <div class="col-md-6">
- <h2>
- The <span class="icon-icon_angel"></span> <strong>ENGELSYSTEM</strong> is in maintenance mode.
- </h2>
- <p>This may be due to...</p>
- <p>
- ...archangels closing the gates of heaven. <br>...somebody's stolen the power chord and now the battery is empty. <br>...DHCP decided to give me another ip address.
- </p>
- </div>
- <div class="col-md-6">
- <iframe width="560" height="315" src="https://www.youtube.com/embed/0aV_vHcunSQ?rel=0" frameborder="0" allowfullscreen></iframe>
- </div>
- </div>
- </div>
- </div>
- <div class="row">
- <div class="col-md-12">
- <div class="text-center footer">
- <a href="https://github.com/engelsystem/engelsystem/issues">Bugs / Features</a> · <a href="https://github.com/engelsystem/engelsystem/">Development Platform</a>
- </div>
- </div>
- </div>
- </div>
- <script type="text/javascript" src="vendor/bootstrap/js/bootstrap.min.js"></script>
- <script type="text/javascript" src="vendor/bootstrap-datepicker-1.4.0/js/bootstrap-datepicker.min.js"></script>
- <script type="text/javascript" src="vendor/bootstrap-datepicker-1.4.0/locales/bootstrap-datepicker.de.min.js"></script>
- <script type="text/javascript" src="vendor/Chart.min.js"></script>
- <script type="text/javascript" src="js/forms.js"></script>
- <script type="text/javascript" src="vendor/moment-with-locales.min.js"></script>
- <script type="text/javascript">
- $(function() {
- moment.locale("en_US.UTF-8");
- });
- </script>
- <script type="text/javascript" src="js/moment-countdown.js"></script>
-</body>
-</html>
diff --git a/public/overwhelmed.html b/public/overwhelmed.html
deleted file mode 100644
index e38e9dad..00000000
--- a/public/overwhelmed.html
+++ /dev/null
@@ -1,57 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<title>Engelsystem</title>
-<meta charset="UTF-8" />
-<meta name="viewport" content="width=device-width, initial-scale=1">
-<link rel="stylesheet" type="text/css" href="css/theme0.css" />
-<link rel="stylesheet" type="text/css" href="vendor/icomoon/style.css" />
-<link rel="stylesheet" type="text/css" href="vendor/bootstrap-datepicker-1.4.0/css/bootstrap-datepicker3.min.css" />
-<script type="text/javascript" src="vendor/jquery-2.1.1.min.js"></script>
-<script type="text/javascript" src="vendor/jquery-ui.min.js"></script>
-</head>
-<body>
- <div class="navbar navbar-default navbar-fixed-top">
- <div class="container-fluid">
- <div class="navbar-header">
- <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapse-1">
- <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span>
- </button>
- <a class="navbar-brand" href="https://engelsystem.de"><span class="icon-icon_angel"></span> <strong class="visible-lg-inline">ENGELSYSTEM</strong></a>
- </div>
- <div class="collapse navbar-collapse" id="navbar-collapse-1">
- <ul class="nav navbar-nav"></ul>
- <ul class="nav navbar-nav navbar-right">
- </ul>
- </div>
- </div>
- </div>
- <div class="container-fluid">
- <div class="row">
- <div class="jumbotron">
- <div class="container text-center">
- <div class="col-md-6 col-md-offset-3">
- <h2>Dear Angels,</h2>
- <p>The great interest in becoming an angel and participating at 33C3 is is something we are grateful for every time. There is a record number of angels and helping volunteers this year.</p>
- <p>We did anticipate a great number but we are overwhelmed by this endless wave of support. We do want to enable each and every one of you to be an angel at the congress, but sadly our resources and capacities at Heaven are limited. The amount of angels at this point is beyond our
- planing and to ensure we can support the angels already checked in. We did make a choice never thought possible on a chaos event:</p>
- <p>We closed the registration in the Engelsystem and at Heaven Desk at 19:00 27. Dec. 2016.</p>
- <p>Everyone of us works for you to support you in being an angel, but the Heaven Desk and the Kitchen among others are limited and so we decided to focus our effort to support those of you already arrived to the best of our abilities.</p>
- <p>
- For the Heaven Team<br /> Agnes, Jen, LLF and Knuth
- </p>
- </div>
- </div>
- </div>
- </div>
- <div class="row">
- <div class="col-md-12">
- <div class="text-center footer">
- <a href="https://github.com/engelsystem/engelsystem/issues">Bugs / Features</a> · <a href="https://github.com/engelsystem/engelsystem/">Development Platform</a>
- </div>
- </div>
- </div>
- </div>
- <script type="text/javascript" src="vendor/bootstrap/js/bootstrap.min.js"></script>
-</body>
-</html>
diff --git a/public/vendor/bootstrap b/public/vendor/bootstrap
index 250b0a66..c4f820a9 120000
--- a/public/vendor/bootstrap
+++ b/public/vendor/bootstrap
@@ -1 +1 @@
-../../themes/assets/bootstrap/dist \ No newline at end of file
+../../vendor/twbs/bootstrap/dist \ No newline at end of file