+
0/0
diff --git a/src/services/CardApi.js b/src/services/CardApi.js
index 926472561..8b5bd1f41 100644
--- a/src/services/CardApi.js
+++ b/src/services/CardApi.js
@@ -75,8 +75,6 @@ export class CardApi {
}
assignUser(card) {
- console.log(card)
- console.log(card.newUserUid)
return axios.post(this.url(`/cards/${card.id}/assign`), { userId: card.newUserUid })
.then(
(response) => {
@@ -91,6 +89,21 @@ export class CardApi {
})
}
+ removeUser(card) {
+ return axios.delete(this.url(`/cards/${card.id}/assign/${card.removeUserUid}`))
+ .then(
+ (response) => {
+ return Promise.resolve(response.data)
+ },
+ (err) => {
+ return Promise.reject(err)
+ }
+ )
+ .catch((err) => {
+ return Promise.reject(err)
+ })
+ }
+
archiveCard(card) {
return axios.put(this.url(`/cards/${card.id}/archive`))
.then(
diff --git a/src/store/card.js b/src/store/card.js
index 383e41213..59bc6f291 100644
--- a/src/store/card.js
+++ b/src/store/card.js
@@ -62,11 +62,20 @@ export default {
state.cards[existingIndex].title = card.title
}
},
- assignCardToUser(state, card) {
- // let existingIndex = state.cards.findIndex(_card => _card.id === card.id)
- /* if (existingIndex !== -1) {
-
- } */
+ assignCardToUser(state, user) {
+ let existingIndex = state.cards.findIndex(_card => _card.id === user.cardId)
+ if (existingIndex !== -1) {
+ state.cards[existingIndex].assignedUsers.push(user)
+ }
+ },
+ removeUserFromCard(state, user) {
+ let existingIndex = state.cards.findIndex(_card => _card.id === user.cardId)
+ if (existingIndex !== -1) {
+ let foundIndex = state.cards[existingIndex].assignedUsers.findIndex(_user => _user.id === user.id)
+ if (foundIndex !== -1) {
+ state.cards[existingIndex].assignedUsers.splice(foundIndex, 1)
+ }
+ }
},
updateCardDesc(state, card) {
let existingIndex = state.cards.findIndex(_card => _card.id === card.id)
@@ -120,8 +129,14 @@ export default {
},
assignCardToUser({ commit }, card) {
apiClient.assignUser(card)
- .then(() => {
- commit('assignCardToUser')
+ .then((user) => {
+ commit('assignCardToUser', user)
+ })
+ },
+ removeUserFromCard({ commit }, card) {
+ apiClient.removeUser(card)
+ .then((user) => {
+ commit('removeUserFromCard', user)
})
},
addLabel({ commit }, data) {
diff --git a/src/store/main.js b/src/store/main.js
index a74f2a29e..4cf893165 100644
--- a/src/store/main.js
+++ b/src/store/main.js
@@ -54,6 +54,7 @@ export default new Vuex.Store({
currentCard: null,
boards: [],
sharees: [],
+ assignableUsers: [],
boardFilter: BOARD_FILTERS.ALL
},
getters: {
@@ -140,6 +141,9 @@ export default new Vuex.Store({
state.sharees = shareesUsersAndGroups.users
state.sharees.push(...shareesUsersAndGroups.groups)
},
+ setAssignableUsers(state, users) {
+ state.assignableUsers = users
+ },
setBoardFilter(state, filter) {
state.boardFilter = filter
},
@@ -265,6 +269,7 @@ export default new Vuex.Store({
commit('setSharees', response.data.ocs.data)
})
},
+
setBoardFilter({ commmit }, filter) {
commmit('setBoardFilter', filter)
},
@@ -280,6 +285,9 @@ export default new Vuex.Store({
setCurrentBoard({ commit }, board) {
commit('setCurrentBoard', board)
},
+ setAssignableUsers({ commit }, board) {
+ commit('setAssignableUsers', board)
+ },
setCurrentCard({ commit }, card) {
commit('setCurrentCard', card)
},
diff --git a/src/store/stack.js b/src/store/stack.js
index c71bea0ca..5f40c12cc 100644
--- a/src/store/stack.js
+++ b/src/store/stack.js
@@ -68,9 +68,13 @@ export default {
}
},
setDeletedStacks(state, delStacks) {
- state.deletedStacks.push(delStacks[0])
+ state.deletedStacks = []
+ if (delStacks.length > 0) {
+ state.deletedStacks.push(delStacks[0])
+ }
},
setDeletedCards(state, delCards) {
+ state.deletedCards = []
state.deletedCards.push(delCards)
}
},