From 13c8f10f4b42c1d698bc99694cd3556c691ac880 Mon Sep 17 00:00:00 2001
From: taehoon
Date: Thu, 4 Apr 2019 13:54:52 -0400
Subject: wire up bulk action buttons to vuex
---
src/modules/users.js | 36 +++++++++++++++++++++++++-----------
1 file changed, 25 insertions(+), 11 deletions(-)
(limited to 'src/modules/users.js')
diff --git a/src/modules/users.js b/src/modules/users.js
index 58db8b71..a458f681 100644
--- a/src/modules/users.js
+++ b/src/modules/users.js
@@ -32,6 +32,22 @@ const getNotificationPermission = () => {
return Promise.resolve(Notification.permission)
}
+const blockUser = (store, userId) => {
+ return store.rootState.api.backendInteractor.blockUser(userId)
+ .then((relationship) => {
+ store.commit('updateUserRelationship', [relationship])
+ store.commit('addBlockId', userId)
+ store.commit('removeStatus', { timeline: 'friends', userId })
+ store.commit('removeStatus', { timeline: 'public', userId })
+ store.commit('removeStatus', { timeline: 'publicAndExternal', userId })
+ })
+}
+
+const unblockUser = (store, userId) => {
+ return store.rootState.api.backendInteractor.unblockUser(userId)
+ .then((relationship) => store.commit('updateUserRelationship', [relationship]))
+}
+
export const mutations = {
setMuted (state, { user: { id }, muted }) {
const user = state.usersObject[id]
@@ -207,18 +223,16 @@ const users = {
})
},
blockUser (store, userId) {
- return store.rootState.api.backendInteractor.blockUser(userId)
- .then((relationship) => {
- store.commit('updateUserRelationship', [relationship])
- store.commit('addBlockId', userId)
- store.commit('removeStatus', { timeline: 'friends', userId })
- store.commit('removeStatus', { timeline: 'public', userId })
- store.commit('removeStatus', { timeline: 'publicAndExternal', userId })
- })
+ return blockUser(store, userId)
},
- unblockUser (store, id) {
- return store.rootState.api.backendInteractor.unblockUser(id)
- .then((relationship) => store.commit('updateUserRelationship', [relationship]))
+ unblockUser (store, userId) {
+ return unblockUser(store, userId)
+ },
+ blockUsers (store, userIds = []) {
+ return Promise.all(userIds.map(userId => blockUser(store, userId)))
+ },
+ unblockUsers (store, userIds = []) {
+ return Promise.all(userIds.map(userId => unblockUser(store, userId)))
},
fetchMutes (store) {
return store.rootState.api.backendInteractor.fetchMutes()
--
cgit v1.2.3-70-g09d2