From 25bdbd7ae07981e20fd6c6d47768ef7d63549310 Mon Sep 17 00:00:00 2001
From: syuilo <Syuilotan@yahoo.co.jp>
Date: Sun, 9 Feb 2020 03:40:09 +0900
Subject: [PATCH] Fix #5886

---
 src/client/pages/my-groups/index.vue | 23 +++++++++++++++++++++--
 1 file changed, 21 insertions(+), 2 deletions(-)

diff --git a/src/client/pages/my-groups/index.vue b/src/client/pages/my-groups/index.vue
index 9f51e5132b..c41139164f 100644
--- a/src/client/pages/my-groups/index.vue
+++ b/src/client/pages/my-groups/index.vue
@@ -17,7 +17,7 @@
 
 	<mk-container :body-togglable="true">
 		<template #header><fa :icon="faEnvelopeOpenText"/> {{ $t('invites') }}</template>
-		<mk-pagination :pagination="invitePagination" #default="{items}">
+		<mk-pagination :pagination="invitePagination" #default="{items}" ref="invites">
 			<div class="_frame" v-for="invite in items" :key="invite.id">
 				<div class="_title">{{ invite.group.name }}</div>
 				<div class="_content"><mk-avatars :user-ids="invite.group.userIds"/></div>
@@ -31,7 +31,7 @@
 
 	<mk-container :body-togglable="true">
 		<template #header><fa :icon="faUsers"/> {{ $t('joinedGroups') }}</template>
-		<mk-pagination :pagination="joinedPagination" #default="{items}">
+		<mk-pagination :pagination="joinedPagination" #default="{items}" ref="joined">
 			<div class="_frame" v-for="group in items" :key="group.id">
 				<div class="_title">{{ group.name }}</div>
 				<div class="_content"><mk-avatars :user-ids="group.userIds"/></div>
@@ -95,6 +95,25 @@ export default Vue.extend({
 				iconOnly: true, autoClose: true
 			});
 		},
+		acceptInvite(invite) {
+			this.$root.api('users/groups/invitations/accept', {
+				inviteId: invite.id
+			}).then(() => {
+				this.$root.dialog({
+					type: 'success',
+					iconOnly: true, autoClose: true
+				});
+				this.$refs.invites.reload();
+				this.$refs.joined.reload();
+			});
+		},
+		rejectInvite(invite) {
+			this.$root.api('users/groups/invitations/reject', {
+				inviteId: invite.id
+			}).then(() => {
+				this.$refs.invites.reload();
+			});
+		}
 	}
 });
 </script>