From f110201fe64d8e08c56ade87e2a181e508aa40bc Mon Sep 17 00:00:00 2001 From: sr_jr Date: Sat, 30 May 2020 10:48:06 +0530 Subject: [PATCH 1/3] fix for issue #4435 --- src/services/challenges.js | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/src/services/challenges.js b/src/services/challenges.js index ea4f9adc..be43c5a5 100644 --- a/src/services/challenges.js +++ b/src/services/challenges.js @@ -319,10 +319,33 @@ class ChallengesService { * @return {Promise} Resolves to the challenge object. */ async getChallengeDetails(challengeId) { - const challengeFiltered = await this.private.getChallenges('/challenges/', { id: challengeId }) + let isLegacyChallenge = false; + const filters = {}; + // if (challengeId.length >= 5 && challengeId.length <= 8) { + // isLegacyChallenge = true; + // challengeDetails = await this.private + // .getChallenges('/challenges/', { legacyId: challengeId }) + // .then(res => res.challenges[0]); + // } else { + // challengeDetails = await this.private. + // getChallenges('/challenges/', { id: challengeId }) + // .then(res => res.challenges[0]); + // } + + // condition based on ROUTE used for Review Opportunities, change if needed + if (challengeId.length >= 5 && challengeId.length <= 8) { + isLegacyChallenge = true; + filters.legacyId = challengeId; + } else { + filters.id = challengeId; + } + const challengeDetails = await this.private.getChallenges('/challenges/', filters) .then(res => res.challenges[0]); - return challengeFiltered; + if (challengeDetails) { + challengeDetails.isLegacyChallenge = isLegacyChallenge; + } + return challengeDetails; } /** From 2906e842e62e14dfe9b3961d3380efc7c4cbb584 Mon Sep 17 00:00:00 2001 From: sr_jr Date: Sun, 31 May 2020 00:15:20 +0530 Subject: [PATCH 2/3] fix for issue #4435 --- src/services/challenges.js | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/src/services/challenges.js b/src/services/challenges.js index be43c5a5..d2d6b2ae 100644 --- a/src/services/challenges.js +++ b/src/services/challenges.js @@ -321,17 +321,6 @@ class ChallengesService { async getChallengeDetails(challengeId) { let isLegacyChallenge = false; const filters = {}; - // if (challengeId.length >= 5 && challengeId.length <= 8) { - // isLegacyChallenge = true; - // challengeDetails = await this.private - // .getChallenges('/challenges/', { legacyId: challengeId }) - // .then(res => res.challenges[0]); - // } else { - // challengeDetails = await this.private. - // getChallenges('/challenges/', { id: challengeId }) - // .then(res => res.challenges[0]); - // } - // condition based on ROUTE used for Review Opportunities, change if needed if (challengeId.length >= 5 && challengeId.length <= 8) { isLegacyChallenge = true; From ede622f838ee4d701229fac3bff60bbdb6502e42 Mon Sep 17 00:00:00 2001 From: sr_jr Date: Sun, 31 May 2020 10:32:32 +0530 Subject: [PATCH 3/3] fix for issue #4435 --- src/reducers/challenge.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/reducers/challenge.js b/src/reducers/challenge.js index 26cee382..6db8365f 100644 --- a/src/reducers/challenge.js +++ b/src/reducers/challenge.js @@ -62,7 +62,15 @@ function onGetDetailsDone(state, action) { } const details = action.payload; - if (_.toString(details.id) !== state.loadingDetailsForChallengeId) { + + // condition based on ROUTE used for Review Opportunities, change if needed + const challengeId = state.loadingDetailsForChallengeId; + let compareChallenge = details.id; + if (challengeId.length >= 5 && challengeId.length <= 8) { + compareChallenge = details.legacyId; + } + + if (_.toString(compareChallenge) !== challengeId) { return state; }