diff --git a/components/Layout.tsx b/components/Layout.tsx index 44d3da6..9452c69 100644 --- a/components/Layout.tsx +++ b/components/Layout.tsx @@ -17,7 +17,7 @@ export const Layout: React.FC = () => { // Notifications const [activeNotice, setActiveNotice] = useState(null); - const [hasNewExpenses, setHasNewExpenses] = useState(false); + const [newExpensesCount, setNewExpensesCount] = useState(0); // Ticket Badges const [ticketBadgeCount, setTicketBadgeCount] = useState(0); @@ -101,9 +101,9 @@ export const Layout: React.FC = () => { const lastViewed = localStorage.getItem('lastViewedExpensesTime'); const lastViewedTime = lastViewed ? parseInt(lastViewed) : 0; - // Check if any expense was created AFTER the last visit - const hasNew = myExpenses.some((e: any) => new Date(e.createdAt).getTime() > lastViewedTime); - setHasNewExpenses(hasNew); + // Count expenses created AFTER the last visit + const count = myExpenses.filter((e: any) => new Date(e.createdAt).getTime() > lastViewedTime).length; + setNewExpensesCount(count); } catch(e) {} } @@ -310,8 +310,10 @@ export const Layout: React.FC = () => { {isAdmin ? 'Spese Straordinarie' : 'Le Mie Spese Extra'} - {hasNewExpenses && ( - + {newExpensesCount > 0 && ( + + {newExpensesCount > 99 ? '99+' : newExpensesCount} + )}