From a2af9fb0feb46e3c98163d3dc6487fd6eb526df2 Mon Sep 17 00:00:00 2001 From: Justin Gasper Date: Tue, 25 Jan 2022 15:07:04 +1100 Subject: [PATCH] Temp fix for client manager role assigned to self-service challenge creator --- config/default.js | 1 + src/services/ChallengeService.js | 21 +++++++++++++++------ 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/config/default.js b/config/default.js index 944e16db..0493b4a3 100644 --- a/config/default.js +++ b/config/default.js @@ -65,6 +65,7 @@ module.exports = { MANAGER_ROLE_ID: process.env.MANAGER_ROLE_ID || '0e9c6879-39e4-4eb6-b8df-92407890faf1', OBSERVER_ROLE_ID: process.env.OBSERVER_ROLE_ID || '2a4dc376-a31c-4d00-b173-13934d89e286', + CLIENT_MANAGER_ROLE_ID: process.env.OBSERVER_ROLE_ID || '9b2f1905-8128-42da-85df-ed64410f4781', // health check timeout in milliseconds HEALTH_CHECK_TIMEOUT: process.env.HEALTH_CHECK_TIMEOUT || 3000, diff --git a/src/services/ChallengeService.js b/src/services/ChallengeService.js index 9d4af20a..e0a1ba8b 100644 --- a/src/services/ChallengeService.js +++ b/src/services/ChallengeService.js @@ -1077,12 +1077,21 @@ async function createChallenge (currentUser, challenge, userToken) { body: ret }) - // if created by a user, add user as a manager - if (currentUser.handle) { - // logger.debug(`Adding user as manager ${currentUser.handle}`) - await helper.createResource(ret.id, ret.createdBy, config.MANAGER_ROLE_ID) - } else { - // logger.debug(`Not adding manager ${currentUser.sub} ${JSON.stringify(currentUser)}`) + //If the challenge is self-service, add the creating user as the "client manager", *not* the manager + //This is necessary for proper handling of the vanilla embed on the self-service work item dashboard + if(challenge.legacy.selfService) { + if (currentUser.handle) { + await helper.createResource(ret.id, ret.createdBy, config.CLIENT_MANAGER_ROLE_ID) + } + } + else{ + // if created by a user, add user as a manager, but only if *not* a self-service challenge + if (currentUser.handle) { + // logger.debug(`Adding user as manager ${currentUser.handle}`) + await helper.createResource(ret.id, ret.createdBy, config.MANAGER_ROLE_ID) + } else { + // logger.debug(`Not adding manager ${currentUser.sub} ${JSON.stringify(currentUser)}`) + } } // post bus event