Checkpoint: 1) createSolution retourne maintenant l'insertId (number) au lieu du ResultSetHeader brut → solutionId n'est plus NaN. 2) La charte CGU est désormais affichée à chaque nouvelle session navigateur (sessionStorage) et non plus uniquement à la première connexion.
This commit is contained in:
@@ -46,10 +46,15 @@ export default function Home() {
|
||||
};
|
||||
|
||||
const cguQuery = trpc.cgu.status.useQuery(undefined, { enabled: isAuthenticated });
|
||||
// La CGU doit être acceptée à chaque nouvelle session (sessionStorage vidé à la fermeture du navigateur)
|
||||
const [sessionCguAccepted, setSessionCguAccepted] = useState(() =>
|
||||
typeof window !== "undefined" && sessionStorage.getItem("sonum_cgu_accepted") === "1"
|
||||
);
|
||||
const blocsQuery = trpc.referentiel.blocsFonctionnels.useQuery();
|
||||
const editeursQuery = trpc.referentiel.editeurs.useQuery();
|
||||
const solutionsQuery = trpc.referentiel.solutions.useQuery({ search: searchText.length >= 2 ? searchText : undefined });
|
||||
const searchQuery = trpc.etablissements.search.useQuery(filters, { enabled: isAuthenticated && (cguQuery.data?.accepted ?? false) });
|
||||
const cguFullyAccepted = sessionCguAccepted && (cguQuery.data?.accepted ?? false);
|
||||
const searchQuery = trpc.etablissements.search.useQuery(filters, { enabled: isAuthenticated && cguFullyAccepted });
|
||||
const tracabiliteUtils = trpc.useUtils();
|
||||
|
||||
const recordConsultation = trpc.tracabilite.enregistrerConsultation.useMutation();
|
||||
@@ -95,10 +100,10 @@ export default function Home() {
|
||||
);
|
||||
}
|
||||
|
||||
if (!cguQuery.data?.accepted) {
|
||||
if (!cguFullyAccepted) {
|
||||
return (
|
||||
<SonumLayout>
|
||||
<CguModal onAccepted={() => cguQuery.refetch()} />
|
||||
<CguModal onAccepted={() => { setSessionCguAccepted(true); cguQuery.refetch(); }} />
|
||||
</SonumLayout>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user