quick actions for each event @home
This commit is contained in:
@@ -20,17 +20,26 @@
|
|||||||
template(v-slot:activator="{on}")
|
template(v-slot:activator="{on}")
|
||||||
v-btn(icon v-on='on' color='primary')
|
v-btn(icon v-on='on' color='primary')
|
||||||
v-icon mdi-dots-vertical
|
v-icon mdi-dots-vertical
|
||||||
v-list
|
v-list(dense)
|
||||||
v-list-item
|
v-list-item-group
|
||||||
v-list-item-title test
|
v-list-item(v-clipboard:success='copyLink'
|
||||||
|
v-clipboard:copy='`${settings.baseurl}/event/${event.id}`')
|
||||||
|
v-list-item-icon
|
||||||
|
v-icon mdi-content-copy
|
||||||
|
v-list-item-content
|
||||||
|
v-list-item-title {{$t('common.copy_link')}}
|
||||||
|
v-list-item(:href='`/api/event/${event.id}.ics`')
|
||||||
|
v-list-item-icon
|
||||||
|
v-icon mdi-calendar-export
|
||||||
|
v-list-item-content
|
||||||
|
v-list-item-title {{$t('common.add_to_calendar')}}
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { mapState, mapActions } from 'vuex'
|
import { mapState, mapActions } from 'vuex'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
event: { type: Object, default: () => ({}) },
|
event: { type: Object, default: () => ({}) }
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapState(['settings']),
|
...mapState(['settings']),
|
||||||
@@ -40,6 +49,9 @@ export default {
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
...mapActions(['setSearchTags', 'setSearchPlaces']),
|
...mapActions(['setSearchTags', 'setSearchPlaces']),
|
||||||
|
copyLink () {
|
||||||
|
this.$root.$message('common.copied', { color: 'success' })
|
||||||
|
},
|
||||||
addTag (tag) {
|
addTag (tag) {
|
||||||
if (this.filters.tags.includes(tag)) {
|
if (this.filters.tags.includes(tag)) {
|
||||||
this.setSearchTags(this.filters.tags.filter(t => t !== tag))
|
this.setSearchTags(this.filters.tags.filter(t => t !== tag))
|
||||||
|
|||||||
Reference in New Issue
Block a user