Skip to content

Commit f8dec92

Browse files
committed
fix: don't return email in invites for non-admin users, if invited by handle
1 parent 234049c commit f8dec92

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

src/util.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -682,6 +682,17 @@ _.assignIn(util, {
682682
return _.map(members, (member) => {
683683
let memberDetails = _.find(allMemberDetails, ({ userId }) => userId === member.userId);
684684
memberDetails = _.assign({}, member, memberDetails);
685+
// this case would be only valid for invites:
686+
// don't return `email` for non-admins if invitation has `userId`
687+
// if invitation doesn't have `userId` means it is invitation by email
688+
// then we are still returning emails to all users
689+
if (
690+
memberDetails.email &&
691+
memberDetails.userId &&
692+
!util.hasPermission({ topcoderRoles: ADMIN_ROLES }, req.authUser)
693+
) {
694+
delete memberDetails.email;
695+
}
685696
return _(memberDetails).pick(fields).defaults(memberDefaults).value();
686697
});
687698
},

0 commit comments

Comments
 (0)