From 6f70631b786da53aa015de3f8de000be557085d1 Mon Sep 17 00:00:00 2001 From: frakarr Date: Tue, 9 Dec 2025 23:39:48 +0100 Subject: [PATCH] Update ExtraordinaryUser.tsx --- pages/ExtraordinaryUser.tsx | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/pages/ExtraordinaryUser.tsx b/pages/ExtraordinaryUser.tsx index 0c700dc..99af64b 100644 --- a/pages/ExtraordinaryUser.tsx +++ b/pages/ExtraordinaryUser.tsx @@ -2,17 +2,25 @@ import React, { useEffect, useState } from 'react'; import { CondoService } from '../services/mockDb'; import { PayPalScriptProvider, PayPalButtons } from "@paypal/react-paypal-js"; -import { Briefcase, Calendar, CheckCircle2 } from 'lucide-react'; +import { Briefcase, Calendar, CheckCircle2, AlertCircle } from 'lucide-react'; export const ExtraordinaryUser: React.FC = () => { const [expenses, setExpenses] = useState([]); // Using any for composite object from specific API const [loading, setLoading] = useState(true); const [paypalClientId, setPaypalClientId] = useState(''); const [successMsg, setSuccessMsg] = useState(''); + const [hasFamily, setHasFamily] = useState(true); useEffect(() => { const load = async () => { try { + const user = CondoService.getCurrentUser(); + if (!user?.familyId) { + setHasFamily(false); + setLoading(false); + return; + } + const [myExp, condo] = await Promise.all([ CondoService.getMyExpenses(), CondoService.getActiveCondo() @@ -44,6 +52,17 @@ export const ExtraordinaryUser: React.FC = () => { if (loading) return
Caricamento spese...
; + if (!hasFamily) { + return ( +
+ +

Nessuna Famiglia Associata

+

Il tuo utente (probabilmente Admin) non è collegato ad alcuna famiglia, quindi non ci sono spese personali da mostrare.

+

Vai in Impostazioni > Utenti e associa il tuo account a una famiglia per testare questa vista.

+
+ ); + } + return (
@@ -97,12 +116,12 @@ export const ExtraordinaryUser: React.FC = () => {
Versato: € {exp.myShare.amountPaid.toFixed(2)} - Restante: € {remaining.toFixed(2)} + Restante: € {Math.max(0, remaining).toFixed(2)}