"use client" import { useState, useEffect } from "react" import Navbar from "@/components/navbar" import Footer from "@/components/footer" import PageReveal from "@/components/page-reveal" import { Card } from "@/components/ui/card" import { ArrowLeft, Users, Briefcase, Wind, Wifi, ShieldCheck, ChevronRight } from "lucide-react" import Link from "next/link" import Image from "next/image" import { useLanguage } from "@/lib/language-context" import { motion } from "framer-motion" import { GalleryDialog } from "@/components/gallery-dialog" export default function FleetPage() { const { t } = useLanguage() const [galleryData, setGalleryData] = useState>({}) const [isGalleryOpen, setIsGalleryOpen] = useState(false) const [selectedGallery, setSelectedGallery] = useState([]) const [selectedVehicleName, setSelectedVehicleName] = useState("") const [selectedCategoryName, setSelectedCategoryName] = useState("") useEffect(() => { fetch('/gallery.json') .then(res => res.json()) .then(data => setGalleryData(data)) .catch(err => console.error('Error fetching gallery:', err)) }, []) const openGallery = (categoryId: string, vehicleName: string, categoryName: string) => { const images = galleryData[categoryId] || [] if (images.length > 0) { setSelectedGallery(images) setSelectedVehicleName(vehicleName) setSelectedCategoryName(categoryName) setIsGalleryOpen(true) } } const vehicles = [ { id: "vclass", categoryId: "vip", data: t.fleetPage.vehicles.vclass, image: "/images/fleet/Flotta_VIP_kezdő.png", large: true, icon: Users }, { id: "superb", categoryId: "personal", data: t.fleetPage.vehicles.superb, image: "/images/fleet/3_skoda_repter.png", large: true, icon: Wind }, { id: "transit", categoryId: "minibus", data: t.fleetPage.vehicles.transit, image: "/images/fleet/Tourneo_hatter_hegy.png", large: true, icon: Users } ] const containerVariants = { hidden: { opacity: 0 }, visible: { opacity: 1, transition: { staggerChildren: 0.2 } } } const itemVariants = { hidden: { opacity: 0, y: 30 }, visible: { opacity: 1, y: 0, transition: { duration: 0.8 } } } return ( {/* Background elements - Softer and more premium */}
{/* Header Section */}
{t.fleetPage.back}

{t.fleetPage.title}
{t.fleetPage.titleAccent}

{t.fleetPage.description}

{/* Fleet Grid */}
{vehicles.map((vehicle, idx) => ( {/* Image container */}
{vehicle.data.name} {/* Desktop-only gradient */}
{/* Content - Overlay on desktop, below on mobile */}
{vehicle.data.category}
{t.fleetPage.availabilityLabel}

{vehicle.data.name}

{vehicle.data.description}

{vehicle.data.features && vehicle.data.features.length > 0 && (
{vehicle.data.features.map((feature: string, fIdx: number) => (
{feature}
))}
)}
))}
{/* Quality Statement */}

{t.servicesPage.whyUs.items[1]}

{t.fleetPage.stats.ageValue}

{t.fleetPage.stats.ageLabel}

{t.fleetPage.stats.cleanlinessValue}

{t.fleetPage.stats.cleanlinessLabel}

{t.fleetPage.stats.maintenanceValue}

{t.fleetPage.stats.maintenanceLabel}

setIsGalleryOpen(false)} images={selectedGallery} vehicleName={selectedVehicleName} categoryName={selectedCategoryName} />