From feaf930f7f86764feed20c62b5ae69d6569f2a4e Mon Sep 17 00:00:00 2001 From: sunilsabatp <101264823+sunilsabatp@users.noreply.github.com> Date: Sun, 2 Oct 2022 09:38:24 +0530 Subject: [PATCH 01/38] added site and ploc router --- .../projects/components/ProjectSnippet.tsx | 36 +++++++++++++++++-- .../components/maps/SitesDropdown.tsx | 13 +++++-- 2 files changed, 44 insertions(+), 5 deletions(-) diff --git a/src/features/projects/components/ProjectSnippet.tsx b/src/features/projects/components/ProjectSnippet.tsx index ebf8590b6f..d8a4cc1bd4 100644 --- a/src/features/projects/components/ProjectSnippet.tsx +++ b/src/features/projects/components/ProjectSnippet.tsx @@ -32,7 +32,15 @@ export default function ProjectSnippet({ ? getImageUrl('project', 'medium', project.image) : ''; - const { selectedPl, hoveredPl } = React.useContext(ProjectPropsContext); + const { + geoJson, + selectedPl, + hoveredPl, + setSelectedSite, + setSelectedPl, + selectedSite, + plantLocations, + } = React.useContext(ProjectPropsContext); let progressPercentage = (project.countPlanted / project.countTarget) * 100; @@ -46,6 +54,30 @@ export default function ProjectSnippet({ embed === 'true' ? window.open(url, '_top') : (window.location.href = url); }; + React.useEffect(() => { + //for selecting one of the site of project based on routers site query param + if (geoJson) { + const siteIndex = geoJson?.features.findIndex( + (singleSite: any, index: number) => + router.query.site === singleSite?.properties.name + ); + setSelectedSite(siteIndex); + } + }, [setSelectedSite, geoJson]); + + React.useEffect(() => { + //for selecting one of the plant location in a particular site of the project based on routers ploc query param + if (router.query.ploc && plantLocations) { + const singlePlantLocation = plantLocations.find( + (dataOfSinglePlantLocation) => { + return router.query.ploc === dataOfSinglePlantLocation?.hid; + } + ); + + setSelectedPl(singlePlantLocation); + } + }, [router.query.ploc, plantLocations, setSelectedPl]); + return ready ? (
{gift.project}
+{Number(gift.openUnits / 100).toFixed(2)}
+