From 3050a30e2392283cda34d54d3fa7fe974bfaf58b Mon Sep 17 00:00:00 2001 From: pravingv Date: Fri, 16 Oct 2026 11:00:57 -0400 Subject: [PATCH] Added politicianeditdrwer to claimedit --- .../ManageMyCandidatesLanding.jsx | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/src/js/pages/ManageMyCandidates/ManageMyCandidatesLanding.jsx b/src/js/pages/ManageMyCandidates/ManageMyCandidatesLanding.jsx index 18a36f734..fd1117b64 100644 --- a/src/js/pages/ManageMyCandidates/ManageMyCandidatesLanding.jsx +++ b/src/js/pages/ManageMyCandidates/ManageMyCandidatesLanding.jsx @@ -6,9 +6,11 @@ import { useHistory, useParams } from 'react-router-dom'; import styled from 'styled-components'; import TagManager from 'react-gtm-module'; import DesignTokenColors from '../../common/components/Style/DesignTokenColors'; +import PoliticianActions from '../../common/actions/PoliticianActions'; import PoliticianStore from '../../common/stores/PoliticianStore'; import { ImportInviteIcon } from '../../components/More/ImportInviteIcon'; import { PageContentContainer } from '../../components/Style/pageLayoutStyles'; +import AppObservableStore from '../../common/stores/AppObservableStore'; import VoterStore from '../../stores/VoterStore'; import { getPageDetails } from '../../utils/lookupPageNameAndPageTypeDict'; @@ -65,7 +67,7 @@ export default function ManageMyCandidatesLanding () { const selectedPolitician = politiciansToManage.find((politician) => politician.politician_we_vote_id === selectedPoliticianWeVoteId) || null; useEffect(() => { - if (!selectedPoliticianWeVoteId && politiciansToManage.length > 0) { + if ((!selectedPoliticianWeVoteId && politiciansToManage.length > 0) || politiciansToManage.length === 1) { setSelectedPoliticianWeVoteId(politiciansToManage[0].politician_we_vote_id); } }, [politiciansToManage, selectedPoliticianWeVoteId]); @@ -120,16 +122,18 @@ export default function ManageMyCandidatesLanding () { handleNavScroll(); }, []); - useEffect(() => { - if (politiciansToManage.length === 1) { - setSelectedPoliticianWeVoteId( - politiciansToManage[0].politician_we_vote_id - ); - } -}, [politiciansToManage]); // Main render - const handleClaimEdit = () => history.push(`/candidate/${selectedPoliticianWeVoteId}/edit`); + const handleClaimEdit = useCallback(() => { + const politician = PoliticianStore.getPoliticianByWeVoteId(selectedPoliticianWeVoteId); + if (!politician?.politician_we_vote_id) return; + PoliticianActions.politicianRetrieve(politician.politician_we_vote_id); + AppObservableStore.setPoliticianWeVoteIdBeingViewed(selectedPoliticianWeVoteId); + AppObservableStore.setDrawerOpen('politicianSelfEditDrawerOpen', true); + + }, [selectedPoliticianWeVoteId]); + + const handleClaimImport = () => history.push('/managecandidates'); const handleClaimTracking = () => history.push('/managecandidates/tracking'); const handleClaimAnalytics = () => history.push('/managecandidates/analytics'); @@ -219,7 +223,7 @@ export default function ManageMyCandidatesLanding () { - { pushDataLayer('editCandidateProfileNavButton-desktop', selectedPoliticianWeVoteId); handleClaimEdit(); }}> + { pushDataLayer('editCandidateProfileNavButton-desktop', selectedPoliticianWeVoteId);handleClaimEdit(); }}> Edit candidate profile