/** * Header global affiché sur toutes les pages PUBLIQUES (hors /admin qui a son * propre shell). Charge la session côté serveur pour adapter les liens. */ import Link from "next/link"; import { auth } from "@/auth"; import { UserRole } from "@/generated/prisma/enums"; import { isPluginEnabled } from "@/lib/plugins/server"; import { CartBadge } from "./CartBadge"; import { SignOutButton } from "./SignOutButton"; export async function SiteHeader() { const session = await auth(); const u = session?.user; const isAdmin = u?.role === UserRole.ADMIN; const isOwner = u?.role === UserRole.OWNER || isAdmin; const isRentalProvider = u?.role === UserRole.RENTAL_PROVIDER || isAdmin; const rentalEnabled = await isPluginEnabled("gear-rental"); return (
K Karbé
{rentalEnabled ? : null} {u ? ( <> Favoris Mes réservations {rentalEnabled ? ( Mes locations ) : null} Mon compte {isOwner ? ( Espace hôte ) : null} {isRentalProvider && rentalEnabled ? ( Espace prestataire ) : null} {isAdmin ? ( Admin ) : null} {u.name || u.email} ) : ( <> Connexion Créer un compte )}
); }