From dfaf08584339bb7eafd9500d5297797b5d547e52 Mon Sep 17 00:00:00 2001 From: Mouse Reeve Date: Thu, 9 Sep 2021 06:54:34 -0700 Subject: [PATCH] Move status code into the new file --- bookwyrm/static/js/bookwyrm.js | 27 --------------------------- bookwyrm/static/js/status_cache.js | 28 ++++++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 27 deletions(-) diff --git a/bookwyrm/static/js/bookwyrm.js b/bookwyrm/static/js/bookwyrm.js index 9dab7a23..894b1fb6 100644 --- a/bookwyrm/static/js/bookwyrm.js +++ b/bookwyrm/static/js/bookwyrm.js @@ -22,12 +22,6 @@ let BookWyrm = new class { this.interact.bind(this)) ); - document.querySelectorAll('.submit-status') - .forEach(button => button.addEventListener( - 'submit', - this.submitStatus.bind(this)) - ); - document.querySelectorAll('.hidden-form input') .forEach(button => button.addEventListener( 'change', @@ -298,27 +292,6 @@ let BookWyrm = new class { }); } - /** - * Post a status with ajax - * - * @param {Event} event - * @return {undefined} - */ - submitStatus(event) { - event.preventDefault(); - - const bookwyrm = this; - const form = event.currentTarget; - - this.ajaxPost(form).catch(error => { - // @todo Display a notification in the UI instead. - console.warn('Request failed:', error); - }); - - // Clear form data - form.reset(); - } - /** * Submit a form using POST. * diff --git a/bookwyrm/static/js/status_cache.js b/bookwyrm/static/js/status_cache.js index c2445f7a..70c10e82 100644 --- a/bookwyrm/static/js/status_cache.js +++ b/bookwyrm/static/js/status_cache.js @@ -4,8 +4,15 @@ let StatusCache = new class { constructor() { document.querySelectorAll('[data-cache-draft]') .forEach(t => t.addEventListener('change', this.updateDraft.bind(this))); + document.querySelectorAll('[data-cache-draft]') .forEach(t => this.populateDraft(t)); + + document.querySelectorAll('.submit-status') + .forEach(button => button.addEventListener( + 'submit', + this.submitStatus.bind(this)) + ); } /** @@ -35,5 +42,26 @@ let StatusCache = new class { node.value = value; } + + /** + * Post a status with ajax + * + * @param {Event} event + * @return {undefined} + */ + submitStatus(event) { + event.preventDefault(); + + const bookwyrm = this; + const form = event.currentTarget; + + this.ajaxPost(form).catch(error => { + // @todo Display a notification in the UI instead. + console.warn('Request failed:', error); + }); + + // Clear form data + form.reset(); + } }();