From dc94f433b90313b47593499350e76bf25111e285 Mon Sep 17 00:00:00 2001 From: les Date: Fri, 5 Jun 2020 23:04:12 +0200 Subject: [PATCH] fix feed with filters --- components/Nav.vue | 20 ++++++++++++++++++-- pages/export.vue | 4 ++-- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/components/Nav.vue b/components/Nav.vue index b28e24d3..8b2e5921 100644 --- a/components/Nav.vue +++ b/components/Nav.vue @@ -42,7 +42,7 @@ i.el-icon-switch-button span {{$t('common.logout')}} - el-menu-item(type='text' v-clipboard:copy='`${settings.baseurl}/feed/rss`' v-clipboard:success='copyLink') + el-menu-item(type='text' v-clipboard:copy='feedLink' v-clipboard:success='copyLink') v-icon(color='orange' name='rss') @@ -53,10 +53,26 @@ import { mapState } from 'vuex' export default { name: 'Nav', computed: { + ...mapState(['filters', 'settings']), + feedLink () { + const tags = this.filters.tags.join(',') + const places = this.filters.places.join(',') + let query = '' + if (tags || places) { + query = '?' + if (tags) { + query += 'tags=' + tags + if (places) { query += '&places=' + places } + } else { + query += 'places=' + places + } + } + + return `${this.settings.baseurl}/feed/rss${query}` + }, could_add () { return (this.$auth.loggedIn || this.settings.allow_anon_event) }, - ...mapState(['filters', 'settings']) }, methods: { copyLink () { diff --git a/pages/export.vue b/pages/export.vue index 827a8492..57157b5e 100644 --- a/pages/export.vue +++ b/pages/export.vue @@ -99,8 +99,8 @@ export default { return `` }, link () { - const tags = this.filters.tags.map(t => t.id).join(',') - const places = this.filters.places.map(p => p.id).join(',') + const tags = this.filters.tags.join(',') + const places = this.filters.places.join(',') let query = '' if (tags || places) { query = '?'