diff --git a/src/components/auth/ProtectedRoute.tsx b/src/components/auth/ProtectedRoute.tsx index dd50250..dfa5d01 100644 --- a/src/components/auth/ProtectedRoute.tsx +++ b/src/components/auth/ProtectedRoute.tsx @@ -28,6 +28,14 @@ const ProtectedRoute = ({ children }: ProtectedRouteProps) => { setSession(session); setLoggedIn(!!session); setUser(session?.user ? { id: session.user.id } : null); + + // Store or remove user email from localStorage + if (session?.user?.email) { + localStorage.setItem('userEmail', session.user.email); + } else { + localStorage.removeItem('userEmail'); + } + setIsLoading(false); } ); diff --git a/src/pages/Index.tsx b/src/pages/Index.tsx index 969e37d..f6e1f81 100644 --- a/src/pages/Index.tsx +++ b/src/pages/Index.tsx @@ -1,5 +1,4 @@ - -import { useState, useEffect, useCallback } from 'react'; +import { useState, useEffect } from 'react'; import Layout from '@/components/layout/Layout'; import SummaryCard from '@/components/dashboard/SummaryCard'; import TransactionsTable from '@/components/dashboard/TransactionsTable'; @@ -33,24 +32,6 @@ const Dashboard = () => { const [selectedMonth, setSelectedMonth] = useState(getCurrentMonth()); - // Use useCallback to ensure this function doesn't change on every render - const setupUserId = useCallback(() => { - const storedUserId = localStorage.getItem('userId'); - const finDashUser = localStorage.getItem('finDashUser'); - - if (!storedUserId && finDashUser) { - localStorage.setItem('userId', finDashUser); - } else if (!storedUserId && !finDashUser) { - const defaultId = '9f267008-9128-4a2f-b730-de0a0b5602a9'; - localStorage.setItem('userId', defaultId); - } - }, []); - - // Run the userId setup only once - useEffect(() => { - setupUserId(); - }, [setupUserId]); - // Load data when component mounts or month changes useEffect(() => { async function loadData() {