Skip to content

Commit 69ddf71

Browse files
committed
feat: don't return full name and email
1 parent 73a7773 commit 69ddf71

File tree

3 files changed

+10
-10
lines changed

3 files changed

+10
-10
lines changed

src/routes/projects/get.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ const PROJECT_MEMBER_ATTRIBUTES = _.concat(_.without(_.keys(models.ProjectMember
2626
// project members has some additional fields stored in ES index, which we don't have in DB
2727
const PROJECT_MEMBER_ATTRIBUTES_ES = _.concat(
2828
PROJECT_MEMBER_ATTRIBUTES,
29-
['firstName', 'lastName', 'handle'], // 'email' can be added when allowed by `addEmailFieldIfAllowed`
29+
['handle'], // more fields can be added when allowed by `addUserDetailsFieldsIfAllowed`
3030
);
3131
const PROJECT_MEMBER_INVITE_ATTRIBUTES = _.without(_.keys(models.ProjectMemberInvite.rawAttributes), 'deletedAt');
3232
const PROJECT_ATTACHMENT_ATTRIBUTES = _.without(_.keys(models.ProjectAttachment.rawAttributes), 'deletedAt');
@@ -106,7 +106,7 @@ const retrieveProjectFromES = (projectId, req) => {
106106
fields = fields ? fields.split(',') : [];
107107
fields = util.parseFields(fields, {
108108
projects: PROJECT_ATTRIBUTES,
109-
project_members: util.addEmailFieldIfAllowed(PROJECT_MEMBER_ATTRIBUTES_ES, req),
109+
project_members: util.addUserDetailsFieldsIfAllowed(PROJECT_MEMBER_ATTRIBUTES_ES, req),
110110
project_member_invites: PROJECT_MEMBER_INVITE_ATTRIBUTES,
111111
project_phases: PROJECT_PHASE_ATTRIBUTES,
112112
project_phases_products: PROJECT_PHASE_PRODUCTS_ATTRIBUTES,

src/routes/projects/list.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ const PROJECT_MEMBER_ATTRIBUTES = _.without(_.keys(models.ProjectMember.rawAttri
3030
// project members has some additional fields stored in ES index, which we don't have in DB
3131
const PROJECT_MEMBER_ATTRIBUTES_ES = _.concat(
3232
PROJECT_MEMBER_ATTRIBUTES,
33-
['firstName', 'lastName', 'handle'], // 'email' can be added when allowed by `addEmailFieldIfAllowed`
33+
['handle'], // more fields can be added when allowed by `addUserDetailsFieldsIfAllowed`
3434
);
3535
const PROJECT_MEMBER_INVITE_ATTRIBUTES = _.without(
3636
_.keys(models.ProjectMemberInvite.rawAttributes),
@@ -553,7 +553,7 @@ const retrieveProjects = (req, criteria, sort, ffields) => {
553553
// parse the fields string to determine what fields are to be returned
554554
fields = util.parseFields(fields, {
555555
projects: PROJECT_ATTRIBUTES,
556-
project_members: util.addEmailFieldIfAllowed(PROJECT_MEMBER_ATTRIBUTES_ES, req),
556+
project_members: util.addUserDetailsFieldsIfAllowed(PROJECT_MEMBER_ATTRIBUTES_ES, req),
557557
project_member_invites: PROJECT_MEMBER_INVITE_ATTRIBUTES,
558558
project_phases: PROJECT_PHASE_ATTRIBUTES,
559559
project_phases_products: PROJECT_PHASE_PRODUCTS_ATTRIBUTES,

src/util.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -264,17 +264,17 @@ _.assignIn(util, {
264264
},
265265

266266
/**
267-
* Add `email` field to the list of field, if it's allowed to a user who made the request
267+
* Add user details fields to the list of field, if it's allowed to a user who made the request
268268
*
269269
* @param {Array} fields fields list
270270
* @param {Object} req request object
271271
*
272272
* @return {Array} fields list with 'email' if allowed
273273
*/
274-
addEmailFieldIfAllowed: (fields, req) => {
274+
addUserDetailsFieldsIfAllowed: (fields, req) => {
275275
// Only Topcoder Admins can get email
276276
if (util.hasPermission({ topcoderRoles: [USER_ROLE.TOPCODER_ADMIN] }, req.authUser)) {
277-
return _.concat(fields, ['email']);
277+
return _.concat(fields, ['email', 'firstName', 'lastName']);
278278
}
279279

280280
return fields;
@@ -685,11 +685,11 @@ _.assignIn(util, {
685685
return members;
686686
}
687687
const memberTraitFields = ['photoURL', 'workingHourStart', 'workingHourEnd', 'timeZone'];
688-
const memberDetailFields = ['handle', 'firstName', 'lastName'];
688+
let memberDetailFields = ['handle'];
689689

690-
// Only Topcoder admins can get emails for users
690+
// Only Topcoder admins can get emails, first and last name for users
691691
if (util.hasPermission({ topcoderRoles: [USER_ROLE.TOPCODER_ADMIN] }, req.authUser)) {
692-
memberDetailFields.push('email');
692+
memberDetailFields = memberDetailFields.concat(['email', 'firstName', 'lastName']);
693693
}
694694

695695
let allMemberDetails = [];

0 commit comments

Comments
 (0)