Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7eb4f86a2d | |||
| a600125571 | |||
| c561adefaf | |||
| f683d28beb | |||
| 3e9d26cebb |
@@ -1,11 +1,13 @@
|
|||||||
import type { Metadata } from "next";
|
import type { Metadata } from "next";
|
||||||
|
import { Inter } from "next/font/google";
|
||||||
|
import "./styles/variables.css";
|
||||||
|
import "./styles/base.css";
|
||||||
import "./globals.css";
|
import "./globals.css";
|
||||||
|
|
||||||
const inter = "Inter";
|
const inter = Inter({ subsets: ["latin"] });
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
export const metadata: Metadata = {
|
||||||
title: "Boxing A80 - Authentieke Boksacademie van Amersfoort", description: "Al meer dan 44 jaar dé boksvereniging in Eemland. Werk aan je conditie, techniek en zelfvertrouwen."
|
title: "Boxing A80 - Authentieke Boksacademie van Amersfoort", description: "Al meer dan 44 jaar dé boksvereniging in Eemland. Training voor mannen, vrouwen en jeugd onder begeleiding van gediplomeerde trainers."};
|
||||||
};
|
|
||||||
|
|
||||||
export default function RootLayout({
|
export default function RootLayout({
|
||||||
children,
|
children,
|
||||||
@@ -14,21 +16,23 @@ export default function RootLayout({
|
|||||||
}) {
|
}) {
|
||||||
return (
|
return (
|
||||||
<html lang="nl" suppressHydrationWarning>
|
<html lang="nl" suppressHydrationWarning>
|
||||||
<body className={inter}>
|
<head>
|
||||||
<ServiceWrapper>
|
|
||||||
{children}
|
|
||||||
</ServiceWrapper>
|
|
||||||
<script
|
<script
|
||||||
dangerouslySetInnerHTML={{
|
dangerouslySetInnerHTML={{
|
||||||
__html: `
|
__html: `
|
||||||
if (localStorage.theme === 'dark' || (!('theme' in localStorage) && window.matchMedia('(prefers-color-scheme: dark)').matches)) {
|
try {
|
||||||
document.documentElement.classList.add('dark')
|
if (localStorage.getItem('theme') === 'dark' || (!('theme' in localStorage) && window.matchMedia('(prefers-color-scheme: dark)').matches)) {
|
||||||
} else {
|
document.documentElement.classList.add('dark')
|
||||||
document.documentElement.classList.remove('dark')
|
} else {
|
||||||
}
|
document.documentElement.classList.remove('dark')
|
||||||
|
}
|
||||||
|
} catch (e) {}
|
||||||
`,
|
`,
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
|
</head>
|
||||||
|
<body className={inter.className} suppressHydrationWarning>
|
||||||
|
<ServiceWrapper>{children}</ServiceWrapper>
|
||||||
|
|
||||||
<script
|
<script
|
||||||
dangerouslySetInnerHTML={{
|
dangerouslySetInnerHTML={{
|
||||||
@@ -1402,5 +1406,14 @@ export default function RootLayout({
|
|||||||
}
|
}
|
||||||
|
|
||||||
function ServiceWrapper({ children }: { children: React.ReactNode }) {
|
function ServiceWrapper({ children }: { children: React.ReactNode }) {
|
||||||
return <>{children}</>;
|
return (
|
||||||
|
<>
|
||||||
|
<Tag />
|
||||||
|
{children}
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
function Tag() {
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,10 +30,10 @@ export default function LandingPage() {
|
|||||||
brandName="Boxing A80"
|
brandName="Boxing A80"
|
||||||
navItems={[
|
navItems={[
|
||||||
{ name: "Over Ons", id: "about" },
|
{ name: "Over Ons", id: "about" },
|
||||||
{ name: "Trainingssprogramma", id: "schedule" },
|
|
||||||
{ name: "Trainingsprogramma", id: "features" },
|
{ name: "Trainingsprogramma", id: "features" },
|
||||||
{ name: "Waarden", id: "values" },
|
{ name: "Waarden", id: "values" },
|
||||||
{ name: "Getuigenissen", id: "testimonials" },
|
{ name: "Getuigenissen", id: "testimonials" },
|
||||||
|
{ name: "Schema", id: "schedule" },
|
||||||
{ name: "Contact", id: "contact" },
|
{ name: "Contact", id: "contact" },
|
||||||
]}
|
]}
|
||||||
button={{ text: "Proefles", href: "contact" }}
|
button={{ text: "Proefles", href: "contact" }}
|
||||||
@@ -94,41 +94,6 @@ export default function LandingPage() {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="schedule" data-section="schedule">
|
|
||||||
<SplitAbout
|
|
||||||
title="Trainingsschema Boxing A80"
|
|
||||||
description="Maandag tot en met zaterdag zijn er verschillende trainingen voor alle niveaus. Of je nu beginner bent of wedstrijdboxer, we hebben een training voor jou. Kom langs en maak kennis met ons team!"
|
|
||||||
tag="Trainingsschema"
|
|
||||||
tagIcon={Clock}
|
|
||||||
bulletPoints={[
|
|
||||||
{
|
|
||||||
title: "Maandag", description: "18:00-19:30 Beginners • 19:30-21:00 Gevorderden", icon: Clock,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Dinsdag", description: "18:00-19:30 Jeugd (8-16 jaar) • 19:30-21:00 Wedstrijdboxers", icon: Clock,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Woensdag", description: "18:00-19:30 Cardio Boksen • 19:30-21:00 Gevorderden", icon: Clock,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Donderdag", description: "18:00-19:30 Beginners • 19:30-21:00 Wedstrijdboxers", icon: Clock,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Vrijdag", description: "18:00-19:30 Jeugd (8-16 jaar) • 19:30-21:00 Gevorderden", icon: Clock,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Zaterdag", description: "09:00-10:30 Familie Boksen • 10:30-12:00 Gevorderden", icon: Clock,
|
|
||||||
},
|
|
||||||
]}
|
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/happy-young-brunette-relaxing-getting-ready-working-out-gym_662251-1301.jpg"
|
|
||||||
imageAlt="boxing training schedule calendar"
|
|
||||||
mediaAnimation="slide-up"
|
|
||||||
textboxLayout="default"
|
|
||||||
useInvertedBackground={false}
|
|
||||||
imagePosition="right"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="features" data-section="features">
|
<div id="features" data-section="features">
|
||||||
<FeatureCardTwelve
|
<FeatureCardTwelve
|
||||||
features={[
|
features={[
|
||||||
@@ -244,7 +209,7 @@ export default function LandingPage() {
|
|||||||
|
|
||||||
<div id="footer" data-section="footer">
|
<div id="footer" data-section="footer">
|
||||||
<FooterMedia
|
<FooterMedia
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/pair-gloves-boxing-sport_23-2150367634.jpg"
|
imageSrc="http://img.b2bpic.net/free-photo/pair-gloves-boxing-sport_23-2150367634.jpg?_wi=1"
|
||||||
imageAlt="boxing ring close-up ropes detail"
|
imageAlt="boxing ring close-up ropes detail"
|
||||||
logoText="Boxing A80"
|
logoText="Boxing A80"
|
||||||
copyrightText="© 2025 Boxing A80 - Authentieke Boksacademie van Amersfoort"
|
copyrightText="© 2025 Boxing A80 - Authentieke Boksacademie van Amersfoort"
|
||||||
@@ -252,7 +217,6 @@ export default function LandingPage() {
|
|||||||
{
|
{
|
||||||
title: "Club", items: [
|
title: "Club", items: [
|
||||||
{ label: "Over Ons", href: "#about" },
|
{ label: "Over Ons", href: "#about" },
|
||||||
{ label: "Trainingsschema", href: "#schedule" },
|
|
||||||
{ label: "Trainers", href: "#features" },
|
{ label: "Trainers", href: "#features" },
|
||||||
{ label: "Waarden", href: "#values" },
|
{ label: "Waarden", href: "#values" },
|
||||||
{ label: "Getuigenissen", href: "#testimonials" },
|
{ label: "Getuigenissen", href: "#testimonials" },
|
||||||
|
|||||||
@@ -2,10 +2,9 @@
|
|||||||
|
|
||||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered";
|
import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered";
|
||||||
import HeroBillboardGallery from "@/components/sections/hero/HeroBillboardGallery";
|
import HeroCentered from "@/components/sections/hero/HeroCentered";
|
||||||
import SplitAbout from "@/components/sections/about/SplitAbout";
|
|
||||||
import FooterMedia from "@/components/sections/footer/FooterMedia";
|
import FooterMedia from "@/components/sections/footer/FooterMedia";
|
||||||
import { Award, Clock } from "lucide-react";
|
import { Award, Clock, Users } from "lucide-react";
|
||||||
|
|
||||||
export default function SchedulePage() {
|
export default function SchedulePage() {
|
||||||
return (
|
return (
|
||||||
@@ -25,83 +24,126 @@ export default function SchedulePage() {
|
|||||||
<NavbarStyleCentered
|
<NavbarStyleCentered
|
||||||
brandName="Boxing A80"
|
brandName="Boxing A80"
|
||||||
navItems={[
|
navItems={[
|
||||||
{ name: "Over Ons", id: "/" },
|
{ name: "Over Ons", id: "/about" },
|
||||||
{ name: "Trainingssprogramma", id: "schedule" },
|
{ name: "Trainingsprogramma", id: "/features" },
|
||||||
{ name: "Trainingsprogramma", id: "/" },
|
{ name: "Waarden", id: "/values" },
|
||||||
{ name: "Waarden", id: "/" },
|
{ name: "Getuigenissen", id: "/testimonials" },
|
||||||
{ name: "Getuigenissen", id: "/" },
|
{ name: "Schema", id: "/schedule" },
|
||||||
{ name: "Contact", id: "/" },
|
{ name: "Contact", id: "/contact" },
|
||||||
]}
|
]}
|
||||||
button={{ text: "Proefles", href: "/" }}
|
button={{ text: "Proefles", href: "/contact" }}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="hero" data-section="hero">
|
<div id="hero" data-section="hero">
|
||||||
<HeroBillboardGallery
|
<HeroCentered
|
||||||
title="Trainingsschema Boxing A80"
|
|
||||||
description="Maandag tot en met zaterdag hebben we trainingen voor alle niveaus. Of je nu beginner bent, gevorderde of wedstrijdboxer - we hebben de perfecte training voor jou. Kom langs en maak kennis met ons team!"
|
|
||||||
tag="Trainingsschema"
|
|
||||||
tagIcon={Clock}
|
|
||||||
background={{ variant: "radial-gradient" }}
|
background={{ variant: "radial-gradient" }}
|
||||||
mediaItems={[
|
avatars={[
|
||||||
{
|
{ src: "http://img.b2bpic.net/free-photo/man-screaming-with-boxer-globes_1154-115.jpg", alt: "Boxing trainer" },
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/sideways-strong-male-boxer-training-competition_23-2148416691.jpg", imageAlt: "professional boxing gym training facility"
|
{ src: "http://img.b2bpic.net/free-photo/medium-shot-girl-learning-boxing_23-2150399990.jpg", alt: "Female boxer" },
|
||||||
},
|
{ src: "http://img.b2bpic.net/free-photo/portrait-experienced-female-boxer-boxing-gloves-activewear_613910-12650.jpg", alt: "Boxer training" },
|
||||||
{
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/boxer-boy-posing-gym_23-2148201190.jpg", imageAlt: "athlete boxer training dynamic action"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/female-boxer-practicing-with-trainer_23-2148615097.jpg", imageAlt: "boxing club group training together"
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
|
avatarText="Voor alle niveaus"
|
||||||
|
title="Trainingschema Boxing A80"
|
||||||
|
description="Alle trainingstijden en programma's voor mannen, vrouwen en jeugd. Kom naar de training die het beste bij jou past."
|
||||||
buttons={[
|
buttons={[
|
||||||
{ text: "Proefles Boeken", href: "/" },
|
{ text: "Proefles Boeken", href: "contact" },
|
||||||
{ text: "Terug naar Home", href: "/" },
|
{ text: "Terug naar Home", href: "/" },
|
||||||
]}
|
]}
|
||||||
mediaAnimation="slide-up"
|
|
||||||
buttonAnimation="slide-up"
|
buttonAnimation="slide-up"
|
||||||
tagAnimation="slide-up"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="schedule" data-section="schedule">
|
<div id="schedule-content" data-section="schedule-content" className="py-20 px-6 md:px-0">
|
||||||
<SplitAbout
|
<div className="w-full max-w-3xl mx-auto">
|
||||||
title="Volledig Trainingsschema Boxing A80"
|
<div className="mb-12">
|
||||||
description="Bij Boxing A80 trainingen we het hele jaar door, van maandag tot en met zaterdag. Elk trainingsmoment is ontworpen om je fysiek en mentaal sterker te maken, onder begeleiding van onze gediplomeerde trainers. Of je nu voor het eerst een bokshandschoen aandoet of je voorbereidt op wedstrijden - we hebben een plek voor jou."
|
<h2 className="text-3xl md:text-4xl font-bold mb-6">Reguliere Trainingen</h2>
|
||||||
tag="Maandag t/m Zaterdag"
|
<div className="space-y-6">
|
||||||
tagIcon={Clock}
|
<div className="border border-foreground/20 rounded-lg p-6 bg-card">
|
||||||
bulletPoints={[
|
<div className="flex items-center gap-2 mb-2">
|
||||||
{
|
<Clock className="w-5 h-5" />
|
||||||
title: "Maandag", description: "18:00-19:30 Beginners - Perfect voor nieuwe leden. Leer de basis van boksen in een vriendelijke omgeving. 19:30-21:00 Gevorderden - Voor leden met meer ervaring die hun techniek willen verbeteren.", icon: Clock,
|
<h3 className="text-xl font-semibold">Volwassenen - Beginners</h3>
|
||||||
},
|
</div>
|
||||||
{
|
<p className="text-foreground/80 mb-2">Maandag & Woensdag</p>
|
||||||
title: "Dinsdag", description: "18:00-19:30 Jeugd (8-16 jaar) - Speciaal ontworpen training voor jonge atleten met aandacht voor techniek en veiligheid. 19:30-21:00 Wedstrijdboxers - Intensieve training voor sporters die willen wedstrijden.", icon: Clock,
|
<p className="text-lg font-medium">19:00 - 20:30</p>
|
||||||
},
|
<p className="text-sm text-foreground/60 mt-2">Perfecte introductie tot boksen met aandacht voor techniek en veiligheid</p>
|
||||||
{
|
</div>
|
||||||
title: "Woensdag", description: "18:00-19:30 Cardio Boksen - Focus op fitness, veerkracht en vetverbranding met boksbeweging. 19:30-21:00 Gevorderden - Geavanceerde technische training voor ervaren boxers.", icon: Clock,
|
|
||||||
},
|
<div className="border border-foreground/20 rounded-lg p-6 bg-card">
|
||||||
{
|
<div className="flex items-center gap-2 mb-2">
|
||||||
title: "Donderdag", description: "18:00-19:30 Beginners - Nog een gelegenheid voor beginners om deel te nemen aan fundamentele bokstraining. 19:30-21:00 Wedstrijdboxers - Voorbereiding en training voor competitieve boxers.", icon: Clock,
|
<Users className="w-5 h-5" />
|
||||||
},
|
<h3 className="text-xl font-semibold">Volwassenen - Gevorderden</h3>
|
||||||
{
|
</div>
|
||||||
title: "Vrijdag", description: "18:00-19:30 Jeugd (8-16 jaar) - Tweede jeugdsessie van de week met focus op plezier en veiligheid. 19:30-21:00 Gevorderden - Afrondingsdag van de week voor gevorderde trainers.", icon: Clock,
|
<p className="text-foreground/80 mb-2">Dinsdag & Donderdag</p>
|
||||||
},
|
<p className="text-lg font-medium">19:30 - 21:00</p>
|
||||||
{
|
<p className="text-sm text-foreground/60 mt-2">Intensieve training voor deelnemers met voorgaande bokskaart</p>
|
||||||
title: "Zaterdag", description: "09:00-10:30 Familie Boksen - Een unieke training waar families samen kunnen trainen en het boksen ontdekken. 10:30-12:00 Gevorderden - Weekend-sessie voor intensieve training en voorbereiding.", icon: Clock,
|
</div>
|
||||||
},
|
|
||||||
]}
|
<div className="border border-foreground/20 rounded-lg p-6 bg-card">
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/happy-young-brunette-relaxing-getting-ready-working-out-gym_662251-1301.jpg"
|
<div className="flex items-center gap-2 mb-2">
|
||||||
imageAlt="boxing training schedule and classes"
|
<Award className="w-5 h-5" />
|
||||||
mediaAnimation="slide-up"
|
<h3 className="text-xl font-semibold">Jeugd (12-18 jaar)</h3>
|
||||||
textboxLayout="default"
|
</div>
|
||||||
useInvertedBackground={false}
|
<p className="text-foreground/80 mb-2">Woensdag & Zaterdag</p>
|
||||||
imagePosition="right"
|
<p className="text-lg font-medium">17:00 - 18:30</p>
|
||||||
/>
|
<p className="text-sm text-foreground/60 mt-2">Speciaal ontworpen training voor jongeren met focus op vaardigheden en zelfvertrouwen</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="border border-foreground/20 rounded-lg p-6 bg-card">
|
||||||
|
<div className="flex items-center gap-2 mb-2">
|
||||||
|
<Clock className="w-5 h-5" />
|
||||||
|
<h3 className="text-xl font-semibold">Vrouwen - Groep</h3>
|
||||||
|
</div>
|
||||||
|
<p className="text-foreground/80 mb-2">Maandag & Vrijdag</p>
|
||||||
|
<p className="text-lg font-medium">18:00 - 19:30</p>
|
||||||
|
<p className="text-sm text-foreground/60 mt-2">Exclusieve vrouwengroep waar je op je gemak kunt trainen</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="mb-12">
|
||||||
|
<h2 className="text-3xl md:text-4xl font-bold mb-6">Speciale Programma's</h2>
|
||||||
|
<div className="space-y-6">
|
||||||
|
<div className="border border-foreground/20 rounded-lg p-6 bg-card">
|
||||||
|
<h3 className="text-xl font-semibold mb-2">Privétrainingen</h3>
|
||||||
|
<p className="text-foreground/80 mb-2">Op afspraak</p>
|
||||||
|
<p className="text-sm text-foreground/60">Persoonlijke coaching voor specifieke doelen en voorbereiding op wedstrijden</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="border border-foreground/20 rounded-lg p-6 bg-card">
|
||||||
|
<h3 className="text-xl font-semibold mb-2">Wedstrijdtraining</h3>
|
||||||
|
<p className="text-foreground/80 mb-2">Dinsdag & Vrijdag</p>
|
||||||
|
<p className="text-lg font-medium">20:00 - 21:30</p>
|
||||||
|
<p className="text-sm text-foreground/60 mt-2">Intensieve voorbereiding voor competitieve boxers</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="border border-foreground/20 rounded-lg p-6 bg-card">
|
||||||
|
<h3 className="text-xl font-semibold mb-2">Zaterdag Groepsclass</h3>
|
||||||
|
<p className="text-foreground/80 mb-2">Zaterdag</p>
|
||||||
|
<p className="text-lg font-medium">10:00 - 11:30</p>
|
||||||
|
<p className="text-sm text-foreground/60 mt-2">Ontspannen groepstraining voor recreatieve deelnemers</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="bg-background-accent/10 border border-background-accent rounded-lg p-8 text-center">
|
||||||
|
<h3 className="text-2xl font-bold mb-4">Klaar om te starten?</h3>
|
||||||
|
<p className="text-foreground/80 mb-6">Neem contact op of boek je gratis proefles vandaag nog</p>
|
||||||
|
<div className="flex gap-4 justify-center flex-wrap">
|
||||||
|
<a href="mailto:secretaris@boxing-a80.nl" className="px-6 py-3 bg-primary-cta text-primary-cta-text rounded-full font-semibold hover:opacity-90 transition">
|
||||||
|
E-mail verzenden
|
||||||
|
</a>
|
||||||
|
<a href="tel:0639493895" className="px-6 py-3 bg-secondary-cta text-secondary-cta-text border border-foreground/20 rounded-full font-semibold hover:opacity-90 transition">
|
||||||
|
Bel ons
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="footer" data-section="footer">
|
<div id="footer" data-section="footer">
|
||||||
<FooterMedia
|
<FooterMedia
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/pair-gloves-boxing-sport_23-2150367634.jpg"
|
imageSrc="http://img.b2bpic.net/free-photo/pair-gloves-boxing-sport_23-2150367634.jpg?_wi=2"
|
||||||
imageAlt="boxing ring close-up ropes detail"
|
imageAlt="boxing ring close-up ropes detail"
|
||||||
logoText="Boxing A80"
|
logoText="Boxing A80"
|
||||||
copyrightText="© 2025 Boxing A80 - Authentieke Boksacademie van Amersfoort"
|
copyrightText="© 2025 Boxing A80 - Authentieke Boksacademie van Amersfoort"
|
||||||
@@ -109,10 +151,9 @@ export default function SchedulePage() {
|
|||||||
{
|
{
|
||||||
title: "Club", items: [
|
title: "Club", items: [
|
||||||
{ label: "Over Ons", href: "/" },
|
{ label: "Over Ons", href: "/" },
|
||||||
{ label: "Trainingsschema", href: "/schedule" },
|
{ label: "Trainingsprogramma", href: "/#features" },
|
||||||
{ label: "Trainers", href: "/" },
|
{ label: "Waarden", href: "/#values" },
|
||||||
{ label: "Waarden", href: "/" },
|
{ label: "Getuigenissen", href: "/#testimonials" },
|
||||||
{ label: "Getuigenissen", href: "/" },
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user