summaryrefslogtreecommitdiffstats
path: root/src/store/circles.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/store/circles.js')
-rw-r--r--src/store/circles.js21
1 files changed, 19 insertions, 2 deletions
diff --git a/src/store/circles.js b/src/store/circles.js
index d424c15d..e542816e 100644
--- a/src/store/circles.js
+++ b/src/store/circles.js
@@ -23,7 +23,7 @@
import { showError } from '@nextcloud/dialogs'
import Vue from 'vue'
-import { createCircle, deleteCircle, deleteMember, getCircleMembers, getCircle, getCircles, leaveCircle, addMembers } from '../services/circles.ts'
+import { acceptMember, createCircle, deleteCircle, deleteMember, getCircleMembers, getCircle, getCircles, leaveCircle, addMembers } from '../services/circles.ts'
import Member from '../models/member.ts'
import Circle from '../models/circle.ts'
import logger from '../services/logger'
@@ -82,7 +82,7 @@ const mutations = {
*/
addMemberToCircle(state, { circleId, member }) {
const circle = state.circles[circleId]
- circle.addmember(member)
+ circle.addMember(member)
},
/**
@@ -256,6 +256,23 @@ const actions = {
logger.debug('Deleted member', { circleId, memberId })
},
+ /**
+ * Accept a circle member request
+ *
+ * @param {Object} context the store mutations Current context
+ * @param {Object} data destructuring object
+ * @param {string} data.circleId the circle id
+ * @param {string} data.memberId the member id
+ */
+ async acceptCircleMember(context, { circleId, memberId }) {
+ const circle = context.getters.getCircle(circleId)
+
+ const result = await acceptMember(circleId, memberId)
+ const member = new Member(result, circle)
+
+ await context.commit('addMemberToCircle', { circleId, member })
+ },
+
}
export default { state, mutations, getters, actions }