From 83aa2093eb3181f318a56aa48c97695caf5d5eff Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Tue, 13 Dec 2022 19:05:07 +0800 Subject: [PATCH] Still return admins if not allowed to see members --- packages/api/src/services/groups.ts | 41 +++++++++++++---------------- 1 file changed, 19 insertions(+), 22 deletions(-) diff --git a/packages/api/src/services/groups.ts b/packages/api/src/services/groups.ts index 0c8d4826b..dd0fb8002 100644 --- a/packages/api/src/services/groups.ts +++ b/packages/api/src/services/groups.ts @@ -79,17 +79,16 @@ export const getRecommendationGroups = async ( return groupMembers.map((gm) => { const admins: GraphqlUser[] = [] const members: GraphqlUser[] = [] + // Return all members + gm.group.members.forEach((m) => { + const user = userDataToUser(m.user) + if (m.isAdmin) { + admins.push(user) + } + members.push(user) + }) + const canSeeMembers = gm.group.onlyAdminCanSeeMembers ? gm.isAdmin : true - if (canSeeMembers) { - // Return all members - gm.group.members.forEach((m) => { - const user = userDataToUser(m.user) - if (m.isAdmin) { - admins.push(user) - } - members.push(user) - }) - } return { id: gm.group.id, @@ -98,7 +97,7 @@ export const getRecommendationGroups = async ( updatedAt: gm.group.updatedAt, inviteUrl: getInviteUrl(gm.invite), admins, - members, + members: canSeeMembers ? members : [], topics: gm.group.topics?.split(','), description: gm.group.description, canPost: gm.group.onlyAdminCanPost ? gm.isAdmin : true, @@ -151,22 +150,20 @@ having count(*) < $4`, }) const admins: GraphqlUser[] = [] const members: GraphqlUser[] = [] - if (!group.onlyAdminCanSeeMembers) { - // Return all members - group.members.forEach((m) => { - const user = userDataToUser(m.user) - if (m.isAdmin) { - admins.push(user) - } - members.push(user) - }) - } + // Return all members + group.members.forEach((m) => { + const user = userDataToUser(m.user) + if (m.isAdmin) { + admins.push(user) + } + members.push(user) + }) return { ...group, inviteUrl: getInviteUrl(invite), admins, - members, + members: group.onlyAdminCanSeeMembers ? [] : members, topics: group.topics?.split(','), description: group.description, canPost: !group.onlyAdminCanPost,