From a55b71578c13c531b4cb69c029e3c2cd62b5e117 Mon Sep 17 00:00:00 2001 From: "J.-S. Caux" <J.S.Caux@uva.nl> Date: Wed, 21 Oct 2020 21:06:35 +0200 Subject: [PATCH] Add auto-refresh facility --- .../assets/vue/components/MessagesTable.vue | 44 +++++++++---------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/apimail/static/apimail/assets/vue/components/MessagesTable.vue b/apimail/static/apimail/assets/vue/components/MessagesTable.vue index 59c6293d9..db691b0a1 100644 --- a/apimail/static/apimail/assets/vue/components/MessagesTable.vue +++ b/apimail/static/apimail/assets/vue/components/MessagesTable.vue @@ -124,19 +124,19 @@ <b-row> <b-col class="col-lg-6"> <h2>Messages for <strong>{{ accountSelected.email }}</strong></h2> - <!-- <b-form-group --> - <!-- label="Auto refresh (minutes): " --> - <!-- label-cols-sm="4" --> - <!-- label-align-sm="right" --> - <!-- label-size="sm" --> - <!-- > --> - <!-- <b-form-radio-group --> - <!-- v-model="refreshMinutes" --> - <!-- :options="refreshMinutesOptions" --> - <!-- class="float-center" --> - <!-- > --> - <!-- </b-form-radio-group> --> - <!-- </b-form-group> --> + <b-form-group + label="Auto refresh (minutes): " + label-cols-sm="4" + label-align-sm="right" + label-size="sm" + > + <b-form-radio-group + v-model="refreshMinutes" + :options="refreshMinutesOptions" + class="float-center" + > + </b-form-radio-group> + </b-form-group> <small class="p-2">Last loaded: {{ lastLoaded }}</small> <b-badge class="p-2" @@ -409,7 +409,7 @@ export default { ], refreshInterval: null, refreshMinutes: 1, - refreshMinutesOptions: [ 1, 5, 15, 60 ], + refreshMinutesOptions: [ 1, 5, 15 ], tags: null, tagRequired: 'any', } @@ -542,11 +542,11 @@ export default { this.fetchDrafts() } }) - // this.refreshInterval = setInterval(this.refreshMessages, this.refreshMinutes * 1000) + this.refreshInterval = setInterval(this.refreshMessages, this.refreshMinutes * 60000) + }, + beforeDestroy() { + clearInterval(this.refreshInterval) }, - // beforeDestroy() { - // clearInterval(this.refreshInterval) - // }, watch: { accountSelected: function () { this.$root.$emit('bv::refresh::table', 'my-table') @@ -566,10 +566,10 @@ export default { accountSelected: function () { this.tabbedMessages = [] }, - // refreshMinutes: function () { - // clearInterval(this.refreshInterval) - // this.refreshInterval = setInterval(this.refreshMessages, this.refreshMinutes * 1000) - // } + refreshMinutes: function () { + clearInterval(this.refreshInterval) + this.refreshInterval = setInterval(this.refreshMessages, this.refreshMinutes * 60000) + } } } -- GitLab