68 lines
1.9 KiB
TypeScript
68 lines
1.9 KiB
TypeScript
import { NextResponse } from "next/server";
|
|
|
|
export interface Excursion {
|
|
id: string;
|
|
name: string;
|
|
type: "tour-lagon" | "plongee" | "4x4";
|
|
description: string;
|
|
duration: string;
|
|
price: number;
|
|
available: boolean;
|
|
}
|
|
|
|
const excursions: Excursion[] = [
|
|
{
|
|
id: "1",
|
|
name: "Tour du Lagon de Fakarava",
|
|
type: "tour-lagon",
|
|
description: "Découvrez les merveilles du lagon de Fakarava avec arrêts snorkeling aux raies et requins. Visite des motus et des spots de plongée exceptionnels.",
|
|
duration: "4 heures",
|
|
price: 12000,
|
|
available: true,
|
|
},
|
|
{
|
|
id: "2",
|
|
name: "Plongée à la Passe Sud (Tumakohua)",
|
|
type: "plongee",
|
|
description: "Expérience unique de plongée à la Passe Sud de Fakarava, réputée pour ses raies mantas et sa faune exceptionnelle. Accessible uniquement par bateau.",
|
|
duration: "Journée complète",
|
|
price: 15000,
|
|
available: true,
|
|
},
|
|
{
|
|
id: "3",
|
|
name: "Excursion en vélo vers le Sud",
|
|
type: "4x4",
|
|
description: "Exploration de l'atoll de Fakarava en vélo le long de la route principale. Découvrez les villages et les points de vue sur le lagon.",
|
|
duration: "3 heures",
|
|
price: 8000,
|
|
available: true,
|
|
},
|
|
];
|
|
|
|
export async function GET() {
|
|
return NextResponse.json(excursions);
|
|
}
|
|
|
|
export async function POST(request: Request) {
|
|
try {
|
|
const body = await request.json();
|
|
const { excursionId, name, email, phone, date, participants } = body;
|
|
|
|
// Ici, en production, vous sauvegarderiez la réservation dans une base de données
|
|
// Pour l'instant, on simule juste une réponse de succès
|
|
|
|
return NextResponse.json({
|
|
success: true,
|
|
message: "Réservation enregistrée avec succès",
|
|
reservationId: `RES-${Date.now()}`,
|
|
});
|
|
} catch (error) {
|
|
return NextResponse.json(
|
|
{ success: false, message: "Erreur lors de la réservation" },
|
|
{ status: 400 }
|
|
);
|
|
}
|
|
}
|
|
|