import React, { useState } from "react"; import { Calendar } from "lucide-react"; import { Button } from "./ui/button"; import { Input } from "./ui/input"; import { Label } from "./ui/label"; import { Textarea } from "./ui/textarea"; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "./ui/select"; import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from "./ui/dialog"; interface BookingFormData { companyName: string; contactName: string; email: string; phone: string; role: string; teamSize: string; facilityZone: string; additionalRequirements: string; } interface BookingModalProps { isOpen: boolean; onClose: () => void; initialFacilityZone?: string; } export function BookingModal({ isOpen, onClose, initialFacilityZone = "" }: BookingModalProps) { const [bookingForm, setBookingForm] = useState({ companyName: '', contactName: '', email: '', phone: '', role: '', teamSize: '', facilityZone: initialFacilityZone, additionalRequirements: '' }); const handleBookingSubmit = (e: React.FormEvent) => { e.preventDefault(); console.log('Booking form submitted:', bookingForm); // Here you would typically send the form data to your backend alert('Booking request submitted successfully! We will contact you within 24 hours.'); onClose(); }; const updateFormField = (field: keyof BookingFormData, value: string) => { setBookingForm(prev => ({ ...prev, [field]: value })); }; return ( { if (!open) { onClose(); } }}> Book Our Learning Facility Submit your booking request and we'll get back to you within 24 hours to confirm availability and discuss your requirements.
updateFormField('companyName', e.target.value)} placeholder="Enter company name" required className="text-body" />
updateFormField('contactName', e.target.value)} placeholder="Enter your full name" required className="text-body" />
updateFormField('email', e.target.value)} placeholder="your.email@company.com" required className="text-body" />
updateFormField('phone', e.target.value)} placeholder="+1 (555) 123-4567" className="text-body" />
updateFormField('role', e.target.value)} placeholder="e.g., Training Manager, HR Director" className="text-body" />