diff --git a/src/components/Challenge/ChallengeCardUnlocked.spec.tsx b/src/components/Challenge/ChallengeCardUnlocked.spec.tsx index cb3cf73832611ea4193bb1c56a2971e0ed381515..70a9cbf24ddf5dec3c965c2950b8d2d30623c324 100644 --- a/src/components/Challenge/ChallengeCardUnlocked.spec.tsx +++ b/src/components/Challenge/ChallengeCardUnlocked.spec.tsx @@ -72,6 +72,7 @@ describe('ChallengeCardUnlocked component', () => { const updateGlobalStoreData = { ...globalStateData, fluidTypes: [FluidType.ELECTRICITY], + fluidStatus: [{ status: 200 }], } const store = mockStore({ ecolyo: { diff --git a/src/components/Challenge/ChallengeCardUnlocked.tsx b/src/components/Challenge/ChallengeCardUnlocked.tsx index 194d23f25f704f65050c207f149b9ea5a30ea699..26b025b5dfe2de7d0a1ab4acafb21e9da92b936b 100644 --- a/src/components/Challenge/ChallengeCardUnlocked.tsx +++ b/src/components/Challenge/ChallengeCardUnlocked.tsx @@ -27,15 +27,22 @@ const ChallengeCardUnlocked: React.FC<ChallengeCardUnlockedProps> = ({ const [openNoFluidModal, setopenNoFluidModal] = useState(false) const { fluidTypes } = useSelector((state: AppStore) => state.ecolyo.global) - + const { fluidStatus } = useSelector((state: AppStore) => state.ecolyo.global) const [challengeIcon, setChallengeIcon] = useState(defaultIcon) + let statusRequirementOk = false const toggleNoFluidModal = useCallback(() => { setopenNoFluidModal(prev => !prev) }, []) + fluidStatus.forEach(elem => { + if (elem.status === 200) { + statusRequirementOk = true + } + }) + const launchChallenge = useCallback(async () => { - if (fluidTypes.length > 0) { + if (fluidTypes.length > 0 && statusRequirementOk) { const challengeService = new ChallengeService(client) const updatedChallenge = await challengeService.startUserChallenge( userChallenge