diff --git a/package-lock.json b/package-lock.json index 503042cf..5728771f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "topcoder-react-lib", - "version": "1000.19.2", + "version": "1000.19.39", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 59ec031f..605ac7a7 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "lint:js": "./node_modules/.bin/eslint --ext .js,.jsx .", "test": "npm run lint && npm run jest" }, - "version": "1000.19.39", + "version": "1000.19.40", "dependencies": { "auth0-js": "^6.8.4", "config": "^3.2.0", diff --git a/src/services/challenges.js b/src/services/challenges.js index 3e4c5358..ecb7e1d4 100644 --- a/src/services/challenges.js +++ b/src/services/challenges.js @@ -327,6 +327,7 @@ class ChallengesService { let submissions = []; let isLegacyChallenge = false; let isRegistered = false; + const userDetails = { roles: [] }; // condition based on ROUTE used for Review Opportunities, change if needed if (/^[\d]{5,8}$/.test(challengeId)) { @@ -372,6 +373,7 @@ class ChallengesService { } }); } + userDetails.roles = await this.getUserRolesInChallenge(challengeId); } challenge = { @@ -380,6 +382,7 @@ class ChallengesService { isRegistered, registrants, submissions, + userDetails, events: _.map(challenge.events, e => ({ eventName: e.key, eventId: e.id, @@ -703,9 +706,10 @@ class ChallengesService { */ async getUserRolesInChallenge(challengeId) { const user = decodeToken(this.private.tokenV3); - const url = `/resources?challengeId=${challengeId}?memberHandle=${user.handle}`; - const resources = await this.private.apiV5.get(url); - if (resources) return _.map(resources, 'roleId'); + const url = `/resources?challengeId=${challengeId}&memberHandle=${user.handle}`; + const getResourcesResponse = await this.private.apiV5.get(url); + const resources = await getResourcesResponse.json(); + if (resources) return _.map(_.filter(resources, r => r.memberHandle === user.handle), 'roleId'); throw new Error(`Failed to fetch user role from challenge #${challengeId}`); } }