From de518b4d2510980750d9c54eda3b0e0fe8d73ecd Mon Sep 17 00:00:00 2001 From: Raphael Kabo Date: Sun, 21 Apr 2024 22:44:22 +0100 Subject: feat: unattend events from RSVP email --- views/event.handlebars | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) (limited to 'views/event.handlebars') diff --git a/views/event.handlebars b/views/event.handlebars index 6485ec5..3ccbc08 100755 --- a/views/event.handlebars +++ b/views/event.handlebars @@ -17,6 +17,11 @@ {{/if}} +{{#if message}} + +{{/if}}
@@ -207,7 +212,7 @@
-

You will need this password if you want to remove yourself from the list of event attendees. If you provided your email, you'll receive it by email. Otherwise, write it down now because it will not be shown again.

+

You can use this password to remove yourself from the list of event attendees. If you provided your email, you'll receive it by email. Otherwise, write it down now because it will not be shown again.

@@ -456,7 +461,9 @@ window.eventData = {{{ json jsonData }}}; error: function(response, status, xhr) { // The editing token is wrong - remove it removeStoredToken(eventID); - window.location = window.location.pathname; + // Remove the token from the URL + url.searchParams.delete('e'); + window.location = url.href; } }); } else if (getStoredToken(eventID)) { @@ -467,6 +474,9 @@ window.eventData = {{{ json jsonData }}}; data: { editToken }, success: function(response, status, xhr) { if (xhr.status === 200) { + // Redirect to the same URL with the editing token in the URL + // We reload the page to force the server to load a page with + // the editing form accessible. window.location.search = `?e=${editToken}`; } }, @@ -479,7 +489,12 @@ window.eventData = {{{ json jsonData }}}; if (urlParams.has('show_edit')) { $('#editModal').modal('show'); - url.searchParams.delete('show_edit'); + url.searchParams.delete('show_edit'); + history.replaceState(history.state, '', url.href); + } + + if (urlParams.has('m')) { + url.searchParams.delete('m'); history.replaceState(history.state, '', url.href); } @@ -538,7 +553,7 @@ window.eventData = {{{ json jsonData }}}; .attr('data-validation-allowing', `range[1;${response.data.freeSpots}]`) .attr('data-validation-error-msg', `Please enter a number between 1 and ${response.data.freeSpots}`); } - modal.modal(); + modal.modal(); }) .catch((error) => { console.error(error); @@ -572,4 +587,4 @@ window.eventData = {{{ json jsonData }}}; }); - \ No newline at end of file + -- cgit v1.2.3