8 Commits

Author SHA1 Message Date
fe0903d5a5 Merge version_4 into main
Merge version_4 into main
2026-04-23 12:55:35 +00:00
47d97b9d7f Update src/app/terms-and-conditions/page.tsx 2026-04-23 12:55:32 +00:00
834c6db592 Update src/app/reservation/page.tsx 2026-04-23 12:55:31 +00:00
ab88555e28 Merge version_4 into main
Merge version_4 into main
2026-04-23 12:55:09 +00:00
93c0cacafc Add src/app/terms-and-conditions/page.tsx 2026-04-23 12:55:05 +00:00
43fea0d911 Add src/app/reservation/page.tsx 2026-04-23 12:55:05 +00:00
59cdeff2ca Update src/app/page.tsx 2026-04-23 12:55:04 +00:00
c75193d2a5 Merge version_3 into main
Merge version_3 into main
2026-04-23 12:51:33 +00:00
3 changed files with 121 additions and 2 deletions

View File

@@ -38,6 +38,8 @@ export default function LandingPage() {
{ name: "Features", id: "features" },
{ name: "Testimonials", id: "testimonials" },
{ name: "FAQ", id: "faq" },
{ name: "Reservation", id: "/reservation" },
{ name: "Terms and Conditions", id: "/terms-and-conditions" },
{ name: "Contact", id: "contact" },
]}
brandName="Lisboa II"
@@ -50,7 +52,7 @@ export default function LandingPage() {
title="Authentic Portuguese Soul in Luxembourg"
description="Experience the true essence of Portugal with fresh, traditional ingredients and warm, attentive service. Join us for a culinary journey in the heart of Luxembourg."
tag="Since 2012"
buttons={[{ text: "Reserve Your Table", href: "#contact" }]}
buttons={[{ text: "Reserve Your Table", href: "/reservation" }]}
mediaItems={[
{
imageSrc: "http://img.b2bpic.net/free-photo/stone-walled-restaurant-top-lighting_140725-9731.jpg", imageAlt: "Restaurant Ambiance"},
@@ -179,4 +181,4 @@ export default function LandingPage() {
</ReactLenis>
</ThemeProvider>
);
}
}

View File

@@ -0,0 +1,61 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarStyleFullscreen from '@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen';
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
import FooterCard from '@/components/sections/footer/FooterCard';
import { Facebook, Instagram } from "lucide-react";
export default function ReservationPage() {
return (
<ThemeProvider
defaultButtonVariant="text-stagger"
defaultTextAnimation="entrance-slide"
borderRadius="rounded"
contentWidth="medium"
sizing="medium"
background="circleGradient"
cardStyle="glass-elevated"
primaryButtonStyle="gradient"
secondaryButtonStyle="glass"
headingFontWeight="normal"
>
<ReactLenis root>
<NavbarStyleFullscreen
navItems={[
{ name: "Home", id: "/" },
{ name: "Reservation", id: "/reservation" },
{ name: "Terms and Conditions", id: "/terms-and-conditions" },
]}
brandName="Lisboa II"
/>
<div className="pt-32 pb-20">
<ContactSplitForm
useInvertedBackground={false}
title="Make a Reservation"
description="Please fill out the form below to secure your table with us."
inputs={[
{ name: "name", type: "text", placeholder: "Full Name", required: true },
{ name: "email", type: "email", placeholder: "Email Address", required: true },
{ name: "date", type: "date", placeholder: "Reservation Date", required: true },
{ name: "time", type: "time", placeholder: "Reservation Time", required: true },
{ name: "guests", type: "number", placeholder: "Number of Guests", required: true },
]}
textarea={{ name: "requests", placeholder: "Special dietary requirements or requests", rows: 4 }}
imageSrc="http://img.b2bpic.net/free-photo/elderly-adult-registering-hotel-lobby_482257-81621.jpg"
imageAlt="Reservation Desk"
/>
</div>
<FooterCard
logoText="Lisboa II"
copyrightText="© 2024 Lisboa II. All rights reserved."
socialLinks={[
{ icon: Facebook, href: "#", ariaLabel: "Facebook" },
{ icon: Instagram, href: "#", ariaLabel: "Instagram" },
]}
/>
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -0,0 +1,56 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarStyleFullscreen from '@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen';
import LegalSection from '@/components/legal/LegalSection';
import FooterCard from '@/components/sections/footer/FooterCard';
import { Facebook, Instagram } from "lucide-react";
export default function TermsPage() {
return (
<ThemeProvider
defaultButtonVariant="text-stagger"
defaultTextAnimation="entrance-slide"
borderRadius="rounded"
contentWidth="medium"
sizing="medium"
background="circleGradient"
cardStyle="glass-elevated"
primaryButtonStyle="gradient"
secondaryButtonStyle="glass"
headingFontWeight="normal"
>
<ReactLenis root>
<NavbarStyleFullscreen
navItems={[
{ name: "Home", id: "/" },
{ name: "Reservation", id: "/reservation" },
{ name: "Terms and Conditions", id: "/terms-and-conditions" },
]}
brandName="Lisboa II"
/>
<div className="pt-32 pb-20">
<LegalSection
layout="page"
title="Terms and Conditions"
subtitle="Last updated: 2024"
sections={[
{ heading: "Reservation Policy", content: [{ type: "paragraph", text: "By making a reservation, you agree to our booking policies. Please notify us of any cancellations at least 24 hours in advance." }] },
{ heading: "Dietary Requirements", content: [{ type: "paragraph", text: "We strive to accommodate all dietary requirements. Please inform our staff about any allergies when making your booking." }] },
{ heading: "Code of Conduct", content: [{ type: "paragraph", text: "We maintain a respectful environment for all our guests and staff." }] }
]}
/>
</div>
<FooterCard
logoText="Lisboa II"
copyrightText="© 2024 Lisboa II. All rights reserved."
socialLinks={[
{ icon: Facebook, href: "#", ariaLabel: "Facebook" },
{ icon: Instagram, href: "#", ariaLabel: "Instagram" },
]}
/>
</ReactLenis>
</ThemeProvider>
);
}