Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 74e6b2cd62 | |||
| ee09366da2 | |||
| e97e336100 | |||
| 5886cf8812 |
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
import ReactLenis from "lenis/react";
|
import ReactLenis from "lenis/react";
|
||||||
|
import { useState } from "react";
|
||||||
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
|
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
|
||||||
import FeatureCardTwentyOne from '@/components/sections/feature/FeatureCardTwentyOne';
|
import FeatureCardTwentyOne from '@/components/sections/feature/FeatureCardTwentyOne';
|
||||||
import FooterBaseReveal from '@/components/sections/footer/FooterBaseReveal';
|
import FooterBaseReveal from '@/components/sections/footer/FooterBaseReveal';
|
||||||
@@ -13,6 +14,17 @@ import PricingCardNine from '@/components/sections/pricing/PricingCardNine';
|
|||||||
import TestimonialCardTwo from '@/components/sections/testimonial/TestimonialCardTwo';
|
import TestimonialCardTwo from '@/components/sections/testimonial/TestimonialCardTwo';
|
||||||
|
|
||||||
export default function LandingPage() {
|
export default function LandingPage() {
|
||||||
|
const [submitted, setSubmitted] = useState(false);
|
||||||
|
const [selectedService, setSelectedService] = useState<string | null>(null);
|
||||||
|
|
||||||
|
const handleServiceSelect = (serviceName: string) => {
|
||||||
|
setSelectedService(serviceName);
|
||||||
|
const contactSection = document.getElementById('contact');
|
||||||
|
if (contactSection) {
|
||||||
|
contactSection.scrollIntoView({ behavior: 'smooth' });
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<ThemeProvider
|
<ThemeProvider
|
||||||
defaultButtonVariant="hover-bubble"
|
defaultButtonVariant="hover-bubble"
|
||||||
@@ -86,15 +98,15 @@ export default function LandingPage() {
|
|||||||
plans={[
|
plans={[
|
||||||
{
|
{
|
||||||
id: "p1", title: "Coupe & Coiffage", price: "35€", period: "service", features: ["Shampooing traitant", "Massage crânien", "Coupe personnalisée", "Coiffage professionnel"],
|
id: "p1", title: "Coupe & Coiffage", price: "35€", period: "service", features: ["Shampooing traitant", "Massage crânien", "Coupe personnalisée", "Coiffage professionnel"],
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/back-view-man-getting-haircut_23-2148242819.jpg", imageAlt: "Back view of man getting a haircut", button: { text: "Réserver" }
|
imageSrc: "http://img.b2bpic.net/free-photo/back-view-man-getting-haircut_23-2148242819.jpg", imageAlt: "Back view of man getting a haircut", button: { text: "Réserver", onClick: () => handleServiceSelect("Coupe & Coiffage") }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "p2", title: "La Barbe Traditionnelle", price: "25€", period: "service", features: ["Taille aux ciseaux", "Rasoir de précision", "Rituel serviette chaude", "Huiles de soin"],
|
id: "p2", title: "La Barbe Traditionnelle", price: "25€", period: "service", features: ["Taille aux ciseaux", "Rasoir de précision", "Rituel serviette chaude", "Huiles de soin"],
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/close-up-from-man-barber-shop_23-2148257045.jpg?_wi=2", imageAlt: "Back view of man getting a haircut", button: { text: "Réserver" }
|
imageSrc: "http://img.b2bpic.net/free-photo/close-up-from-man-barber-shop_23-2148257045.jpg?_wi=2", imageAlt: "Back view of man getting a haircut", button: { text: "Réserver", onClick: () => handleServiceSelect("La Barbe Traditionnelle") }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "p3", title: "Le Rituel Mondial", price: "55€", period: "service", features: ["Coupe premium", "Soin de la barbe", "Massage signature", "Finitions irréprochables"],
|
id: "p3", title: "Le Rituel Mondial", price: "55€", period: "service", features: ["Coupe premium", "Soin de la barbe", "Massage signature", "Finitions irréprochables"],
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/barber-shop-tools-arrangement_23-2149167448.jpg", imageAlt: "Back view of man getting a haircut", button: { text: "Réserver" }
|
imageSrc: "http://img.b2bpic.net/free-photo/barber-shop-tools-arrangement_23-2149167448.jpg", imageAlt: "Back view of man getting a haircut", button: { text: "Réserver", onClick: () => handleServiceSelect("Le Rituel Mondial") }
|
||||||
}
|
}
|
||||||
]}
|
]}
|
||||||
title="Nos Services Signature"
|
title="Nos Services Signature"
|
||||||
@@ -145,12 +157,13 @@ export default function LandingPage() {
|
|||||||
<div id="contact" data-section="contact">
|
<div id="contact" data-section="contact">
|
||||||
<ContactSplitForm
|
<ContactSplitForm
|
||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
title="Prêt à rafraîchir votre style ?"
|
title={submitted ? "Merci !" : "Prêt à rafraîchir votre style ?"}
|
||||||
description="Installez-vous confortablement, on s’occupe du reste. Réservez votre moment en ligne en moins de 2 minutes."
|
description={submitted ? "Votre demande a bien été envoyée. Nous reviendrons vers vous rapidement." : "Installez-vous confortablement, on s’occupe du reste. Réservez votre moment en ligne en moins de 2 minutes."}
|
||||||
inputs={[{ name: "name", type: "text", placeholder: "Nom Complet", required: true }, { name: "email", type: "email", placeholder: "Email", required: true }]}
|
inputs={[{ name: "name", type: "text", placeholder: "Nom Complet", required: true }, { name: "email", type: "email", placeholder: "Email", required: true }]}
|
||||||
textarea={{ name: "message", placeholder: "Dites-nous ce dont vous avez besoin...", rows: 4 }}
|
textarea={{ name: "message", placeholder: selectedService ? `Je souhaite réserver : ${selectedService}` : "Dites-nous ce dont vous avez besoin...", rows: 4 }}
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/professional-barber-working-with-client-hairdressing-salon-styling-beard-with-trimmer_613910-18295.jpg"
|
imageSrc="http://img.b2bpic.net/free-photo/professional-barber-working-with-client-hairdressing-salon-styling-beard-with-trimmer_613910-18295.jpg"
|
||||||
imageAlt="Barber working"
|
imageAlt="Barber working"
|
||||||
|
onSubmit={() => setSubmitted(true)}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user