Skip to content

Commit fb67833

Browse files
committed
Added constant for restricted roles
1 parent 1a332b8 commit fb67833

File tree

1 file changed

+15
-12
lines changed

1 file changed

+15
-12
lines changed

src/services/ResourceService.js

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,18 @@ const prisma = require('../common/prisma').getClient()
1616

1717
const payloadFields = ['id', 'challengeId', 'memberId', 'memberHandle', 'roleId', 'phaseChangeNotifications', 'created', 'createdBy', 'updated', 'updatedBy']
1818

19+
// Restricted roles that cannot be combined with submitter role
20+
const RESTRICTED_ROLE_NAMES = [
21+
'manager',
22+
'copilot',
23+
'reviewer',
24+
'iterative reviewer',
25+
'screener',
26+
'checkpoint screener',
27+
'checkpoint reviewer',
28+
'approver'
29+
]
30+
1931
let copilotResourceRoleIdsCache
2032
let restrictedRoleIdsCache
2133

@@ -45,20 +57,10 @@ async function getRestrictedRoleIds () {
4557
if (restrictedRoleIdsCache) {
4658
return restrictedRoleIdsCache
4759
}
48-
const restrictedRoleNames = [
49-
'manager',
50-
'copilot',
51-
'reviewer',
52-
'iterative reviewer',
53-
'screener',
54-
'checkpoint screener',
55-
'checkpoint reviewer',
56-
'approver'
57-
]
5860
const roles = await prisma.resourceRole.findMany({
5961
where: {
6062
nameLower: {
61-
in: restrictedRoleNames
63+
in: RESTRICTED_ROLE_NAMES
6264
}
6365
},
6466
select: {
@@ -353,8 +355,9 @@ async function init (currentUser, challengeId, resource, isCreated) {
353355
const restrictedRoleIds = await getRestrictedRoleIds()
354356
const existingRestrictedRole = _.find(userResources, r => restrictedRoleIds.includes(r.roleId))
355357
if (existingRestrictedRole) {
358+
const roleNamesList = RESTRICTED_ROLE_NAMES.slice(0, -1).join(', ') + ', or ' + RESTRICTED_ROLE_NAMES.slice(-1)
356359
throw new errors.BadRequestError(
357-
`User ${handle} is already assigned a restricted role (Manager, Copilot, Reviewer, Iterative Reviewer, Screener, Checkpoint Screener, Checkpoint Reviewer, or Approver) and cannot be registered as a submitter.`
360+
`User ${handle} is already assigned a restricted role (${roleNamesList}) and cannot be registered as a submitter.`
358361
)
359362
}
360363
}

0 commit comments

Comments
 (0)