import { getServerSession } from "next-auth"; import { authOptions } from "@/app/api/auth/[...nextauth]/route"; import { getAnnonceByIdInclude } from "@/lib/services/annonceService"; import Link from "next/link"; import ImageCarrousel from "@/lib/components/annonceComponents/ImageCarrousel"; import AddQuestionButton from "@/lib/components/EditAnnonce/addQuestionButtonComponent"; import AnswerQuestionButton from "@/lib/components/EditAnnonce/answerQuestionButtonComponent"; import RoomComponent from "@/lib/components/annonceComponents/roomComponent"; import BathRoomComponent from "@/lib/components/annonceComponents/bathRoomComponent"; import AeraComponent from "@/lib/components/annonceComponents/aeraComponent"; import FloorComponent from "@/lib/components/annonceComponents/floorComponent"; import YearComponent from "@/lib/components/annonceComponents/yearComponent"; import AvailableComponent from "@/lib/components/annonceComponents/availableComponent"; import Image from "next/image"; export default async function AnnonceDetail({ params }: { params: { id: string } }) { const session = await getServerSession(authOptions); const annonce = await getAnnonceByIdInclude(Number(params.id)); if (!annonce) return
Location
)} {annonce.realeSteateStatus === "RENTED" && (Loué
)} {annonce.realeSteateStatus === "FORSALE" && (Achat
)} {annonce.realeSteateStatus === "SOLD" && (Vendu
)}{formattedPrice}
{annonce.description}
{annonce.agent.role}
{/*{annonce.agent.email}
{q.authorName ?? "Utilisateur anonyme"} :
{q.content}
Réponse :
{q.answer}
— {q.answerAuthorName ?? "Agent"} le{" "} {q.answeredAt ? new Date(q.answeredAt).toLocaleDateString() : ""}
Pas encore de réponse.
{session && (session.user?.role === "ADMIN" || Number(session.user?.id) === annonce.agent.id) && (Aucune question posée pour le moment.
)} {session &&