"use client"; import Image from "next/image"; import Link from "next/link"; import { useRouter } from "next/navigation"; import { useEffect } from "react"; import { useBooking } from "@/context/BookingContext"; import { useCurrency } from "@/context/CurrencyContext"; import { formatArrivalTimeDisplay } from "@/lib/formatArrivalTime"; import { siteConfig } from "@/lib/mocks/site"; export default function ConfirmationPage() { const router = useRouter(); const { confirmationId, paidAt, selectedRoom, guest, checkIn, checkOut, nights, total, resetBooking, } = useBooking(); const { formatUsd } = useCurrency(); useEffect(() => { if (!confirmationId) router.replace("/"); }, [confirmationId, router]); if (!confirmationId || !selectedRoom) return null; return (
โœ“

Your booking is confirmed

Thank you, {guest.firstName}. A mock itinerary email would be sent to {guest.email}.

Confirmation: {confirmationId}

{paidAt ? (

Paid at: {new Date(paidAt).toLocaleString()}

) : null}
{selectedRoom.name}

{siteConfig.name}

{selectedRoom.name}

{checkIn} โ†’ {checkOut} ยท {nights} night{nights !== 1 ? "s" : ""}

Flight arrival

Booking / PNR:{" "} {guest.flightBookingNumber.trim() || "โ€”"}

Arrival (local):{" "} {formatArrivalTimeDisplay(guest.arrivalTime)}

Total paid: {formatUsd(total)}

resetBooking()} className="mt-10 inline-flex rounded-full bg-[var(--color-text)] px-10 py-3.5 text-sm font-semibold text-white hover:bg-[var(--color-primary)]" > Back to home
); }