diff --git a/src/models/event.js b/src/models/event.js index 617ebdda3021b752bcc6334b35d38e2cae5ac9da..53b46845c9b576b2a3efbfbed27b686d41520845 100644 --- a/src/models/event.js +++ b/src/models/event.js @@ -24,6 +24,10 @@ export function getCurrentSignup() { return this.currentSignup; } +export function currentSignupHasLoaded() { + return this.currentSignupLoaded; +} + export function checkCurrentSignup() { const queryString = m.buildQueryString({ where: JSON.stringify({ @@ -40,6 +44,7 @@ export function checkCurrentSignup() { } : {}, }).then((result) => { [this.currentSignup] = result._items; + this.currentSignupLoaded = true; log(this.currentSignup); }); } diff --git a/src/views/eventDetails.js b/src/views/eventDetails.js index da6967dc802964aa34ceb08c4e84c9bbacea0c4c..4bb546f7f2703ccd4d6960771cffa65e9d31692e 100644 --- a/src/views/eventDetails.js +++ b/src/views/eventDetails.js @@ -17,7 +17,7 @@ class EventSignupForm { return m('div'); } if (isLoggedIn()) { - if (typeof events.getCurrentSignup() === 'undefined') { + if (events.currentSignupHasLoaded() && typeof events.getCurrentSignup() === 'undefined') { return m('button', { onclick() { events.signupCurrent(); } }, 'signup'); } } else if (events.getCurrent().allow_email_signup) {