akkoma-fe/src/components/user_card/user_card.js

42 lines
1 KiB
JavaScript
Raw Normal View History

2017-08-21 17:25:01 +00:00
import UserCardContent from '../user_card_content/user_card_content.vue'
import StillImage from '../still-image/still-image.vue'
import generateProfileLink from 'src/services/user_profile_link_generator/user_profile_link_generator'
2017-08-21 17:25:01 +00:00
const UserCard = {
props: [
'user',
2018-06-07 00:58:44 +00:00
'showFollows',
'showApproval'
2017-08-21 17:25:01 +00:00
],
data () {
return {
userExpanded: false
}
},
components: {
UserCardContent,
StillImage
2017-08-21 17:25:01 +00:00
},
computed: {
currentUser () { return this.$store.state.users.currentUser }
},
2017-08-21 17:25:01 +00:00
methods: {
toggleUserExpanded () {
this.userExpanded = !this.userExpanded
2018-06-07 00:58:44 +00:00
},
approveUser () {
this.$store.state.api.backendInteractor.approveUser(this.user.id)
this.$store.dispatch('removeFollowRequest', this.user)
2018-06-07 00:58:44 +00:00
},
denyUser () {
this.$store.state.api.backendInteractor.denyUser(this.user.id)
this.$store.dispatch('removeFollowRequest', this.user)
2018-12-16 23:52:27 +00:00
},
userProfileLink (user) {
return generateProfileLink(user.id, user.screen_name)
2017-08-21 17:25:01 +00:00
}
}
}
export default UserCard