diff --git a/src/app/gallery/page.tsx b/src/app/gallery/page.tsx index ed6c8dd..068b23e 100644 --- a/src/app/gallery/page.tsx +++ b/src/app/gallery/page.tsx @@ -2,249 +2,105 @@ import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; import ReactLenis from "lenis/react"; -import React, { useState, useEffect } from "react"; -import Image from "next/image"; -import clsx from "clsx"; - -import CardStack from '@/components/cardStack/CardStack'; -import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay'; +import ProductCardFour from '@/components/sections/product/ProductCardFour'; import FooterBase from '@/components/sections/footer/FooterBase'; - -import { X, ChevronLeft, ChevronRight } from "lucide-react"; - -const galleryImagesData = [ - { id: '1', src: "http://img.b2bpic.net/free-photo/bachelorette-flower-arrnagement_23-2149340496.jpg", alt: "Mariage élégant avec fleurs", category: "Mariages" }, - { id: '2', src: "http://img.b2bpic.net/free-photo/navratri-highly-detailed-interior-decoration_23-2151193720.jpg", alt: "Décoration de fiançailles", category: "Fiançailles" }, - { id: '3', src: "http://img.b2bpic.net/free-photo/group-young-people-celebrating-new-year-friends-drinks-champagne_1157-44311.jpg", alt: "Fête d'anniversaire joyeuse", category: "Anniversaires" }, - { id: '4', src: "http://img.b2bpic.net/free-photo/best-friends-getting-something-from-food-truck_23-2148914602.jpg", alt: "Réception extérieure animée", category: "Réceptions" }, - { id: '5', src: "http://img.b2bpic.net/free-photo/room-interior-design_23-2148899436.jpg", alt: "Intérieur moderne et spacieux", category: "Intérieur" }, - { id: '6', src: "http://img.b2bpic.net/free-photo/young-adult-having-fun-white-party_23-2149575121.jpg", alt: "Réception en extérieur", category: "Extérieur" }, - { id: '7', src: "http://img.b2bpic.net/free-photo/catering-restaurant-service_624325-930.jpg", alt: "Table de mariage", category: "Mariages" }, - { id: '8', src: "http://img.b2bpic.net/free-photo/white-daisies-purple-hydrangeas-glass-transparent-tall-green-bottles-decorative-bouquets-vases_1304-3993.jpg", alt: "Fleurs de fiançailles", category: "Fiançailles" }, - { id: '9', src: "http://img.b2bpic.net/free-photo/young-man-playing-acoustic-guitar-with-friends-party_1157-44247.jpg", alt: "Musique d'anniversaire", category: "Anniversaires" }, - { id: '10', src: "http://img.b2bpic.net/free-photo/business-classroom-daytime-with-many-black-chairs-ready-students_146671-16246.jpg", alt: "Salle de conférence", category: "Réceptions" }, - { id: '11', src: "http://img.b2bpic.net/free-photo/classic-style-interior-design_23-2148899440.jpg", alt: "Détail intérieur", category: "Intérieur" }, - { id: '12', src: "http://img.b2bpic.net/free-photo/couple-walking-with-umbrella-rain_23-2149162002.jpg", alt: "Couple extérieur", category: "Extérieur" }, - { id: '13', src: "http://img.b2bpic.net/free-photo/woman-having-date-with-her-boyfriend-valentine-s-day_23-2149162010.jpg", alt: "Mariage intime", category: "Mariages" }, - { id: '14', src: "http://img.b2bpic.net/free-photo/happy-young-people-holding-sparklers-celebrating_1157-44238.jpg", alt: "Ambiance anniversaire", category: "Anniversaires" }, - { id: '15', src: "http://img.b2bpic.net/free-photo/modern-style-interior-design_23-2148899433.jpg", alt: "Espace intérieur", category: "Intérieur" }, - { id: '16', src: "http://img.b2bpic.net/free-photo/flower-vase-modern-interior_23-2151928932.jpg", alt: "Décoration florale", category: "Fiançailles" }, - { id: '17', src: "http://img.b2bpic.net/free-photo/beautiful-wedding-composition-with-roses_23-2149340504.jpg", alt: "Composition florale de mariage", category: "Mariages" }, - { id: '18', src: "http://img.b2bpic.net/free-photo/empty-table-restaurant_23-2149479383.jpg", alt: "Réception vide", category: "Réceptions" }, - { id: '19', src: "http://img.b2bpic.net/free-photo/stylish-wedding-table-decoration-with-flowers-candies_23-2149340499.jpg", alt: "Table de mariage stylée", category: "Mariages" }, - { id: '20', src: "http://img.b2bpic.net/free-photo/luxurious-room-with-large-round-glass-table-with-fresh-flowers_1145-66.jpg", alt: "Intérieur luxueux", category: "Intérieur" }, - { id: '21', src: "http://img.b2bpic.net/free-photo/young-attractive-couple-outdoors_1157-44246.jpg", alt: "Couple en extérieur", category: "Extérieur" }, - { id: '22', src: "http://img.b2bpic.net/free-photo/young-man-party_1157-44235.jpg", alt: "Fête entre amis", category: "Anniversaires" } -]; - -const categories = ["Tous", "Mariages", "Fiançailles", "Anniversaires", "Réceptions", "Extérieur", "Intérieur"]; +import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay'; export default function GalleryPage() { - const [activeCategory, setActiveCategory] = useState("Tous"); - const [filteredImages, setFilteredImages] = useState(galleryImagesData); - const [lightboxOpen, setLightboxOpen] = useState(false); - const [selectedImageIndex, setSelectedImageIndex] = useState(0); - - useEffect(() => { - if (activeCategory === "Tous") { - setFilteredImages(galleryImagesData); - } else { - setFilteredImages(galleryImagesData.filter((img) => img.category === activeCategory)); - } - }, [activeCategory]); - - const openLightbox = (index: number) => { - setSelectedImageIndex(index); - setLightboxOpen(true); - }; - - const closeLightbox = () => { - setLightboxOpen(false); - }; - - const showNextImage = () => { - setSelectedImageIndex((prevIndex) => (prevIndex + 1) % filteredImages.length); - }; - - const showPrevImage = () => { - setSelectedImageIndex((prevIndex) => (prevIndex - 1 + filteredImages.length) % filteredImages.length); - }; - - const currentLightboxImage = filteredImages[selectedImageIndex]; - - // Shared navigation for Navbar and Footer to ensure consistency - const navItems = [ - { name: "Accueil", href: "/" }, - { name: "À Propos", href: "/#about" }, - { name: "Services", href: "/#services" }, - { name: "Galerie", href: "/gallery" }, - { name: "Témoignages", href: "/#testimonials" }, - { name: "FAQ", href: "/#faq" }, - { name: "Contact", href: "/#contact" } - ]; - - const footerColumns = [ - { - title: "Découvrir", items: [ - { label: "Accueil", href: "/" }, - { label: "À Propos", href: "/#about" }, - { label: "Services", href: "/#services" }, - { label: "Galerie", href: "/gallery" } - ] - }, - { - title: "Assistance", items: [ - { label: "FAQ", href: "/#faq" }, - { label: "Contact", href: "/#contact" }, - { label: "Politique de Confidentialité", href: "#" }, - { label: "Conditions Générales", href: "#" } - ] - }, - { - title: "Nous Suivre", items: [ - { label: "Facebook", href: "#" }, - { label: "Instagram", href: "#" }, - { label: "LinkedIn", href: "#" } - ] - } - ]; - - return ( -
-

Notre Galerie

-

Explorez nos plus belles réalisations, classées par catégorie. Laissez-vous inspirer pour votre prochain événement à la Salle Évasion.

- -
- {categories.map((category) => ( - - ))} -
- - - {filteredImages.map((image, index) => ( -
openLightbox(index)} - className="relative group cursor-pointer overflow-hidden rounded-lg shadow-lg aspect-square" - > - {image.alt} -
- {image.category} -
-
- ))} -
+ - {lightboxOpen && currentLightboxImage && ( -
- - -
- {currentLightboxImage.alt} -
-

{currentLightboxImage.alt}

-

{currentLightboxImage.category}

-
-
- -
- - -
-
- )} -