diff --git a/src/app.js b/src/app.js index f32618b..62b3626 100644 --- a/src/app.js +++ b/src/app.js @@ -118,8 +118,10 @@ app.use( intervalMs: 900000 //ms = 15min } }), + cookie: { maxAge: 86400000 }, // value of maxAge is defined in milliseconds. teamsnap_token: "", current_team: "", + csrfToken:"", secret: process.env['SECRET'], resave: false, // don't save session if unmodified saveUninitialized: false, // don't create session until something stored diff --git a/src/lib/utils.js b/src/lib/utils.js index 5608a57..8ad4765 100644 --- a/src/lib/utils.js +++ b/src/lib/utils.js @@ -164,7 +164,7 @@ exports.compilePositionLabel = (label, flags) => { function toFlagsSet(flags) { let flags_set if (typeof(flags) == 'string'){ - const flags_set = new Set(flags.split(',').map(s=>s.trim())) + flags_set = new Set(flags.split(',').map(s=>s.trim())) } else if (flags.constructor === Array){ flags_set = new Set(flags) } else if (flags.constructor === Set){ diff --git a/src/public/js/eventlineup.js b/src/public/js/eventlineup.js index b0b668d..7e1415d 100644 --- a/src/public/js/eventlineup.js +++ b/src/public/js/eventlineup.js @@ -296,10 +296,10 @@ function emailModal(el, url) { async function onSubmit(form, event) { event.preventDefault(); console.log(event) - teamsnap_icon = document.querySelector("#teamsnap-icon"); - waiting_icon = document.querySelector("#waiting-icon"); - success_icon = document.querySelector("#success-icon"); - failure_icon = document.querySelector("#failure-icon"); + teamsnap_icon = form.querySelector("#teamsnap-icon"); + waiting_icon = form.querySelector("#waiting-icon"); + success_icon = form.querySelector("#success-icon"); + failure_icon = form.querySelector("#failure-icon"); data = new FormData(form); console.log(form) url = form.attributes.action.textContent; @@ -610,6 +610,7 @@ function insertLineup(direction, teamId, eventId, element) { const new_lineup_doc = parser.parseFromString(html, 'text/html') const new_lineup_doc_node = new_lineup_doc.firstElementChild.querySelector('[id*=event-lineup]') const main = document.querySelector("main") + const new_csrf_token = new_lineup_doc.querySelector('form input[name=csrfToken]').value direction > 0 ? main.appendChild(new_lineup_doc_node) : main.insertBefore(new_lineup_doc_node, element.closest('[id*=event-lineup]')) @@ -625,6 +626,9 @@ function insertLineup(direction, teamId, eventId, element) { Array.from(document.querySelectorAll("[id^=event-lineup] .Panel")).forEach((bcLineupPanel) => { bcLineupPanel.classList.remove('Panel--full') }) + for (input of document.querySelectorAll("form input[name=csrfToken]")){ + input.value = new_csrf_token + } initPage(); }) diff --git a/src/views/event/partials/event_panel.hbs b/src/views/event/partials/event_panel.hbs index c2fbc13..0d56bd6 100644 --- a/src/views/event/partials/event_panel.hbs +++ b/src/views/event/partials/event_panel.hbs @@ -12,21 +12,23 @@ \ No newline at end of file diff --git a/src/views/eventlineup/edit.hbs b/src/views/eventlineup/edit.hbs index e105e5d..7cb8d63 100644 --- a/src/views/eventlineup/edit.hbs +++ b/src/views/eventlineup/edit.hbs @@ -1,5 +1,5 @@
-
+ {{!-- --}} diff --git a/src/views/layouts/main.hbs b/src/views/layouts/main.hbs index 4bc81f3..3bb68ab 100644 --- a/src/views/layouts/main.hbs +++ b/src/views/layouts/main.hbs @@ -25,7 +25,7 @@ {{> navbar }} {{{_sections.header}}} -
+
{{{ body }}}
diff --git a/src/views/opponent/list.hbs b/src/views/opponent/list.hbs index 13e7235..eb70820 100644 --- a/src/views/opponent/list.hbs +++ b/src/views/opponent/list.hbs @@ -1,5 +1,6 @@

{{title}} +

diff --git a/src/views/team/home.hbs b/src/views/team/home.hbs index 6a1ef3b..f729b9e 100644 --- a/src/views/team/home.hbs +++ b/src/views/team/home.hbs @@ -29,24 +29,23 @@
-
-
-

Upcoming Events

-
-
+ +

Upcoming Events

+
+
{{#each upcoming_events}} +
{{>event_panel event=this}} - {{/each}}
+ {{/each}}
-
-
-

Recent Events

-
-
+

Recent Events

+
+
{{#each recent_events}} +
{{>event_panel event=this}} - {{/each}}
+ {{/each}}
\ No newline at end of file