diff --git a/src/shared/components/Dashboard/CurrentActivity/Challenges/ChallengeCard/index.jsx b/src/shared/components/Dashboard/CurrentActivity/Challenges/ChallengeCard/index.jsx index 4f4822c6fa..2293c5b15c 100644 --- a/src/shared/components/Dashboard/CurrentActivity/Challenges/ChallengeCard/index.jsx +++ b/src/shared/components/Dashboard/CurrentActivity/Challenges/ChallengeCard/index.jsx @@ -35,12 +35,18 @@ function normalizeSubTrackTagForRendering(subTrack) { return _.startCase(_.toLower(x)); } +function normalizeSubTrack(subTrack) { + const type = _.upperCase(subTrack); + return type.replace(/ /g, '_'); +} + export default function ChallengeCard({ challenge, selectChallengeDetailsTab, setChallengeListingFilter, // unregisterFromChallenge, userResources, + challengeSubtracksMap, }) { const { phases, @@ -51,6 +57,8 @@ export default function ChallengeCard({ type, } = challenge; + const subTrackId = _.findKey(challengeSubtracksMap, { abbreviation: normalizeSubTrack(type) }); + const { track } = legacy; let EventTag; @@ -100,7 +108,6 @@ export default function ChallengeCard({ const submitted = _.get(userDetails, 'hasUserSubmittedForReview'); const nextPhase = phases && _.last(phases); - const submissionPhase = _.find(phases, { name: 'Submission' }); const nextPhaseType = _.get(nextPhase, 'phaseType'); if (submitted && _.intersection(nextPhaseType, [ @@ -108,7 +115,7 @@ export default function ChallengeCard({ 'Appeal Response', ]).length) showOrLink = true; - const submissionOpen = moment(submissionPhase.scheduledEndDate).isSameOrAfter(new Date()); + const isChallengeOpen = status === 'Active'; const allPhases = phases || []; let statusPhase = allPhases @@ -141,12 +148,12 @@ export default function ChallengeCard({ setImmediate( - () => setChallengeListingFilter({ subtracks: [type] }), + () => setChallengeListingFilter({ subtracks: [subTrackId] }), ) } theme={{ button: style.tag }} to={`/challenges?filter[subtracks][0]=${ - encodeURIComponent(type)}`} + encodeURIComponent(subTrackId)}`} > {normalizeSubTrackTagForRendering(type)} @@ -222,7 +229,7 @@ export default function ChallengeCard({ ) : null } { - submitter && submissionOpen ? ( + submitter && isChallengeOpen ? (