diff --git a/app.territoiresentransitions.react/src/app/pages/collectivite/Accueil/Accueil.tsx b/app.territoiresentransitions.react/src/app/pages/collectivite/Accueil/Accueil.tsx index 64e6f235da..369654d40f 100644 --- a/app.territoiresentransitions.react/src/app/pages/collectivite/Accueil/Accueil.tsx +++ b/app.territoiresentransitions.react/src/app/pages/collectivite/Accueil/Accueil.tsx @@ -1,16 +1,54 @@ import {ReactNode} from 'react'; import {referentielToName} from 'app/labels'; -import {useCollectiviteId} from 'core-logic/hooks/params'; import {useProgressionReferentiel} from './data/useProgressionReferentiel'; import EtatDesLieux from './EtatDesLieux/EtatDesLieux'; import IndicateursCard from './IndicateursCard'; import PlansActionCard from './PlansActionCard'; +import {useCurrentCollectivite} from 'core-logic/hooks/useCurrentCollectivite'; +import {useAuth} from 'core-logic/api/auth/AuthProvider'; /** * Affiche la page d'accueil d'une collectivité */ const Accueil = (): JSX.Element => { - const collectiviteId = useCollectiviteId(); + const collectivite = useCurrentCollectivite(); + + const {user} = useAuth(); + + if (!collectivite?.collectivite_id) return <>>; + + /** Vérifi que l'utilisateur peut accéder à la collectivité */ + const hasNoAccessToCollectivite = + collectivite.acces_restreint && + collectivite.niveau_acces === null && + !user?.isSupport && + !collectivite.est_auditeur; + + /** S'il ne peut pas, on affiche un message */ + if (hasNoAccessToCollectivite) { + return ( +