From 1e5dd646e6b98e1debc1215554f76b703b9b9269 Mon Sep 17 00:00:00 2001 From: Kevin Petit Date: Sat, 16 May 2020 18:36:31 +0200 Subject: [PATCH] Fix service handling in announcements page --- .../src/components/Dashboard/DashboardMessages.vue | 10 ++++++---- frontend/src/forms/Message.vue | 8 ++++---- frontend/src/mixin.js | 5 ++++- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/frontend/src/components/Dashboard/DashboardMessages.vue b/frontend/src/components/Dashboard/DashboardMessages.vue index ff3c2481..d4b07b74 100644 --- a/frontend/src/components/Dashboard/DashboardMessages.vue +++ b/frontend/src/components/Dashboard/DashboardMessages.vue @@ -14,10 +14,10 @@ - + {{message.title}} - {{service(message.service)}} + {{serviceName(service(message.service))}} {{niceDate(message.start_on)}} @@ -60,8 +60,10 @@ this.edit = !mode }, service (id) { - const s = this.$store.getters.serviceById(id) || {} - return s.name || "Global Message" + return this.$store.getters.serviceById(id) || {} + }, + serviceName (service) { + return service.name || "Global Message" }, async deleteMessage(m) { let c = confirm(`Are you sure you want to delete message '${m.title}'?`) diff --git a/frontend/src/forms/Message.vue b/frontend/src/forms/Message.vue index 134490cd..6d21ccb1 100644 --- a/frontend/src/forms/Message.vue +++ b/frontend/src/forms/Message.vue @@ -26,9 +26,9 @@
- - +
@@ -46,9 +46,9 @@
- - +
diff --git a/frontend/src/mixin.js b/frontend/src/mixin.js index d1a285b6..0b0104d0 100644 --- a/frontend/src/mixin.js +++ b/frontend/src/mixin.js @@ -79,12 +79,15 @@ export default Vue.mixin({ if (service.permalink) { service = this.$store.getters.serviceByPermalink(service.permalink) } - if (service===undefined) { + if (service===undefined || this.isEmptyObject(service)) { return `/service/0` } let link = service.permalink ? service.permalink : service.id return `/service/${link}` }, + isEmptyObject(obj) { + return Object.keys(obj).length === 0 && obj.constructor === Object + }, isInt(n) { return n % 1 === 0; },