From 1ede9b0930050ea1d331c93e5d23e8177ad37412 Mon Sep 17 00:00:00 2001 From: jedi Date: Sun, 9 Jun 2024 15:25:58 +0200 Subject: [PATCH] stash --- web/src/store.js | 6 ++++++ web/src/views/admin/Settings.vue | 18 ++++++++++++++++-- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/web/src/store.js b/web/src/store.js index e48ec31..06f114a 100644 --- a/web/src/store.js +++ b/web/src/store.js @@ -444,6 +444,12 @@ const store = createStore({ commit('setMessageTemplateVariables', data); } }, + async createMessageTemplate({commit, state}, template_name) { + const {data, success} = await http.post('/2/message_templates/', {name: template_name}, state.user.token); + if (data && success) { + commit('setMessageTemplates', data); + } + } }, plugins: [ persistentStatePlugin({ // TODO change remember to some kind of enable field diff --git a/web/src/views/admin/Settings.vue b/web/src/views/admin/Settings.vue index 0070d3a..75e4741 100644 --- a/web/src/views/admin/Settings.vue +++ b/web/src/views/admin/Settings.vue @@ -15,10 +15,17 @@ +
+
+ + +
+

Message Template Variables

- + {{ variable }}

@@ -35,11 +42,12 @@ export default { data() { return { messageTemplatesIntermediate: [], + newTemplateName: '', }; }, computed: mapState(['messageTemplates', 'messageTemplateVariables']), methods: { - ...mapActions(['fetchMessageTemplates', 'fetchMessageTemplateVariables', 'updateMessageTemplate']), + ...mapActions(['fetchMessageTemplates', 'fetchMessageTemplateVariables', 'updateMessageTemplate', 'createMessageTemplate']), formatText(value) { return value.replace(/{{(.+?)}}/g, (match, key) => { return `{{${key}}}`; @@ -60,6 +68,12 @@ export default { this.messageTemplatesIntermediate.find(template => template.id === id).message = this.messageTemplates.find(template => template.id === id).message; }, + async createMessageTemplateAndReset() { + this.$refs.createButton.disabled = true; + await this.createMessageTemplate(this.newTemplateName); + this.newTemplateName = ''; + this.$refs.createButton.disabled = false; + }, }, mounted() { this.fetchMessageTemplates().then(() => {