Finish activity

Signed-off-by: Julius Härtl <jus@bitgrid.net>
This commit is contained in:
Julius Härtl
2020-02-04 16:41:54 +01:00
parent 9eea838a3c
commit 2a4b2b7d49
9 changed files with 232 additions and 155 deletions

View File

@@ -1,25 +1,18 @@
<template>
<div>
<div v-if="isLoading" class="icon icon-loading" />
<ActivityEntry v-for="entry in boardActivity"
v-else
:key="entry.activity_id"
:activity="entry" />
<button v-if="activityLoadMore" @click="loadMore">
{{ t('deck', 'Load More') }}
</button>
</div>
<ActivityList v-if="$parent.isActive"
filter="deck"
:object-id="board.id"
object-type="deck"
type="deck" />
</template>
<script>
import { mapState } from 'vuex'
import ActivityEntry from '../ActivityEntry'
import ActivityList from '../ActivityList'
export default {
name: 'TimelineTabSidebar',
components: {
ActivityEntry,
ActivityList,
},
props: {
board: {
@@ -27,39 +20,5 @@ export default {
default: undefined,
},
},
data() {
return {
isLoading: false,
params: {
type: 'deck',
since: 0,
object_id: this.board.id,
},
}
},
computed: {
...mapState({
boardActivity: 'activity',
activityLoadMore: 'activityLoadMore',
}),
},
created() {
this.loadBoardActivity()
},
methods: {
loadBoardActivity() {
this.isLoading = true
this.$store.dispatch('loadActivity', this.params).then(response => {
this.isLoading = false
})
},
loadMore() {
const array = Object.values(this.boardActivity)
const aId = (array[array.length - 1].activity_id)
this.params.since = aId
this.loadBoardActivity()
},
},
}
</script>