Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 6836b89106 | |||
| e7c96a3e96 | |||
| 4231c20f2f | |||
| 0e87305454 | |||
| 1792a79499 | |||
| d96f84006e | |||
| 31a92f6e8c | |||
| 9b268ca51e |
1439
src/app/layout.tsx
1439
src/app/layout.tsx
File diff suppressed because it is too large
Load Diff
@@ -18,7 +18,7 @@ export default function HomePage() {
|
|||||||
{ name: "Home", id: "/" },
|
{ name: "Home", id: "/" },
|
||||||
{ name: "About", id: "/about" },
|
{ name: "About", id: "/about" },
|
||||||
{ name: "Teams", id: "/teams" },
|
{ name: "Teams", id: "/teams" },
|
||||||
{ name: "Join", id: "/join" },
|
{ name: "Shop", id: "/shop" },
|
||||||
{ name: "Contact", id: "/contact" },
|
{ name: "Contact", id: "/contact" },
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -135,8 +135,7 @@ export default function HomePage() {
|
|||||||
"Sessions techniques", "Préparation physique", "Équipe coaching"],
|
"Sessions techniques", "Préparation physique", "Équipe coaching"],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "3", value: "8+", title: "Événements Sociaux", items: [
|
id: "3", value: "8+", title: "Événements Sociaux", items: ["Repas d'équipe", "Sorties groupe", "Célébrations"],
|
||||||
"Repas d'équipe", "Sorties groupe", "Célébrations"],
|
|
||||||
},
|
},
|
||||||
]}
|
]}
|
||||||
animationType="slide-up"
|
animationType="slide-up"
|
||||||
@@ -201,4 +200,4 @@ export default function HomePage() {
|
|||||||
</div>
|
</div>
|
||||||
</ThemeProvider>
|
</ThemeProvider>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
174
src/app/shop/page.tsx
Normal file
174
src/app/shop/page.tsx
Normal file
@@ -0,0 +1,174 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
|
import NavbarStyleFullscreen from "@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen";
|
||||||
|
import HeroLogoBillboardSplit from "@/components/sections/hero/HeroLogoBillboardSplit";
|
||||||
|
import ProductCardThree from "@/components/sections/product/ProductCardThree";
|
||||||
|
import ContactCTA from "@/components/sections/contact/ContactCTA";
|
||||||
|
import FooterLogoReveal from "@/components/sections/footer/FooterLogoReveal";
|
||||||
|
import { ShoppingCart, Zap } from "lucide-react";
|
||||||
|
import { useState } from "react";
|
||||||
|
|
||||||
|
export default function ShopPage() {
|
||||||
|
const navItems = [
|
||||||
|
{ name: "Home", id: "/" },
|
||||||
|
{ name: "About", id: "/about" },
|
||||||
|
{ name: "Teams", id: "/teams" },
|
||||||
|
{ name: "Shop", id: "/shop" },
|
||||||
|
{ name: "Contact", id: "/contact" },
|
||||||
|
];
|
||||||
|
|
||||||
|
const [cart, setCart] = useState<{ [key: string]: number }>({});
|
||||||
|
|
||||||
|
const shopProducts = [
|
||||||
|
{
|
||||||
|
id: "jersey-home", name: "Maillot de Rugby - Domicile", price: "€45.00", imageSrc: "http://img.b2bpic.net/free-photo/male-rugby-player-standing-ground_23-2150034490.jpg", imageAlt: "Rugby jersey home", onQuantityChange: (quantity: number) => {
|
||||||
|
setCart((prev) => ({
|
||||||
|
...prev,
|
||||||
|
"jersey-home": quantity,
|
||||||
|
}));
|
||||||
|
},
|
||||||
|
initialQuantity: 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "jersey-away", name: "Maillot de Rugby - Extérieur", price: "€45.00", imageSrc: "http://img.b2bpic.net/free-photo/american-football-player-uniform-training-field_23-2150034543.jpg", imageAlt: "Rugby jersey away", onQuantityChange: (quantity: number) => {
|
||||||
|
setCart((prev) => ({
|
||||||
|
...prev,
|
||||||
|
"jersey-away": quantity,
|
||||||
|
}));
|
||||||
|
},
|
||||||
|
initialQuantity: 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "shorts", name: "Short de Rugby", price: "€35.00", imageSrc: "http://img.b2bpic.net/free-photo/fit-athletic-young-man-training_23-2147955631.jpg", imageAlt: "Rugby shorts", onQuantityChange: (quantity: number) => {
|
||||||
|
setCart((prev) => ({
|
||||||
|
...prev,
|
||||||
|
shorts: quantity,
|
||||||
|
}));
|
||||||
|
},
|
||||||
|
initialQuantity: 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "socks", name: "Chaussettes de Rugby (Paire)", price: "€12.00", imageSrc: "http://img.b2bpic.net/free-photo/close-up-young-athlete-feet-footwear_23-2150067338.jpg", imageAlt: "Rugby socks", onQuantityChange: (quantity: number) => {
|
||||||
|
setCart((prev) => ({
|
||||||
|
...prev,
|
||||||
|
socks: quantity,
|
||||||
|
}));
|
||||||
|
},
|
||||||
|
initialQuantity: 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "scarf", name: "Écharpe Club Cadaujacais", price: "€18.00", imageSrc: "http://img.b2bpic.net/free-photo/winter-accessories-isolated-white-background_23-2150067418.jpg", imageAlt: "Club scarf", onQuantityChange: (quantity: number) => {
|
||||||
|
setCart((prev) => ({
|
||||||
|
...prev,
|
||||||
|
scarf: quantity,
|
||||||
|
}));
|
||||||
|
},
|
||||||
|
initialQuantity: 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "cap", name: "Casquette Club Cadaujacais", price: "€22.00", imageSrc: "http://img.b2bpic.net/free-photo/baseball-cap-isolated-white_23-2150067428.jpg", imageAlt: "Club cap", onQuantityChange: (quantity: number) => {
|
||||||
|
setCart((prev) => ({
|
||||||
|
...prev,
|
||||||
|
cap: quantity,
|
||||||
|
}));
|
||||||
|
},
|
||||||
|
initialQuantity: 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "backpack", name: "Sac à Dos Club Cadaujacais", price: "€65.00", imageSrc: "http://img.b2bpic.net/free-photo/red-stylish-backpack-isolated-white-background_23-2150067435.jpg", imageAlt: "Club backpack", onQuantityChange: (quantity: number) => {
|
||||||
|
setCart((prev) => ({
|
||||||
|
...prev,
|
||||||
|
backpack: quantity,
|
||||||
|
}));
|
||||||
|
},
|
||||||
|
initialQuantity: 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "bottle", name: "Gourde de Rugby - 750ml", price: "€28.00", imageSrc: "http://img.b2bpic.net/free-photo/water-bottle-isolated-white_23-2150067442.jpg", imageAlt: "Rugby water bottle", onQuantityChange: (quantity: number) => {
|
||||||
|
setCart((prev) => ({
|
||||||
|
...prev,
|
||||||
|
bottle: quantity,
|
||||||
|
}));
|
||||||
|
},
|
||||||
|
initialQuantity: 1,
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
|
return (
|
||||||
|
<ThemeProvider
|
||||||
|
defaultButtonVariant="elastic-effect"
|
||||||
|
defaultTextAnimation="background-highlight"
|
||||||
|
borderRadius="pill"
|
||||||
|
contentWidth="small"
|
||||||
|
sizing="largeSmallSizeMediumTitles"
|
||||||
|
background="circleGradient"
|
||||||
|
cardStyle="glass-depth"
|
||||||
|
primaryButtonStyle="flat"
|
||||||
|
secondaryButtonStyle="glass"
|
||||||
|
headingFontWeight="extrabold"
|
||||||
|
>
|
||||||
|
<div id="nav" data-section="nav">
|
||||||
|
<NavbarStyleFullscreen
|
||||||
|
navItems={navItems}
|
||||||
|
brandName="Rugby Club Cadaujacais"
|
||||||
|
bottomLeftText="Cadaujac, France"
|
||||||
|
bottomRightText="contact@rugbycadaujac.fr"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="hero" data-section="hero" className="mx-auto px-4 md:px-6">
|
||||||
|
<HeroLogoBillboardSplit
|
||||||
|
logoText="Boutique Officielle"
|
||||||
|
description="Découvrez notre collection exclusive de vêtements et accessoires aux couleurs du Rugby Club Cadaujacais. Équipements de qualité pour les joueurs et les supporters."
|
||||||
|
background={{ variant: "plain" }}
|
||||||
|
buttons={[
|
||||||
|
{ text: "Parcourir la Boutique", href: "#products" },
|
||||||
|
{ text: "Retour à l'Accueil", href: "/" },
|
||||||
|
]}
|
||||||
|
layoutOrder="default"
|
||||||
|
imageSrc="http://img.b2bpic.net/free-photo/close-up-people-holding-shopping-bags_23-2148901695.jpg"
|
||||||
|
imageAlt="Shopping experience"
|
||||||
|
frameStyle="card"
|
||||||
|
mediaAnimation="slide-up"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="products" data-section="products" className="mx-auto px-4 md:px-6 py-20">
|
||||||
|
<ProductCardThree
|
||||||
|
title="Notre Catalogue de Produits"
|
||||||
|
description="Sélectionnez vos articles préférés et ajoutez-les au panier. Livraison rapide et sécurisée pour toutes les commandes."
|
||||||
|
tag="Nouveautés"
|
||||||
|
products={shopProducts}
|
||||||
|
gridVariant="four-items-2x2-equal-grid"
|
||||||
|
animationType="slide-up"
|
||||||
|
textboxLayout="default"
|
||||||
|
useInvertedBackground={false}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="cta-section" data-section="cta-section" className="mx-auto px-4 md:px-6 py-20">
|
||||||
|
<ContactCTA
|
||||||
|
tag="Panier Plein?"
|
||||||
|
tagIcon={ShoppingCart}
|
||||||
|
title="Procédez au Paiement"
|
||||||
|
description="Finalisez votre commande en toute sécurité. Nous acceptons tous les modes de paiement principaux. Livraison gratuite à partir de €50."
|
||||||
|
buttons={[
|
||||||
|
{ text: "Voir le Panier", href: "#cart" },
|
||||||
|
{ text: "Continuer les Achats", href: "#products" },
|
||||||
|
]}
|
||||||
|
background={{ variant: "plain" }}
|
||||||
|
useInvertedBackground={false}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterLogoReveal
|
||||||
|
logoText="Rugby Club Cadaujacais"
|
||||||
|
leftLink={{ text: "Politique de Confidentialité", href: "#privacy" }}
|
||||||
|
rightLink={{ text: "Conditions d'Utilisation", href: "#terms" }}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -10,15 +10,15 @@
|
|||||||
--accent: #ffffff;
|
--accent: #ffffff;
|
||||||
--background-accent: #ffffff; */
|
--background-accent: #ffffff; */
|
||||||
|
|
||||||
--background: #f5f5f5;
|
--background: #1a0d0d;
|
||||||
--card: #ffffff;
|
--card: #2e1515;
|
||||||
--foreground: #1c1c1c;
|
--foreground: #ffe6e6;
|
||||||
--primary-cta: #341f51;
|
--primary-cta: #d63031;
|
||||||
--primary-cta-text: #f5f5f5;
|
--primary-cta-text: #f5f5f5;
|
||||||
--secondary-cta: #ffffff;
|
--secondary-cta: #1a0d0d;
|
||||||
--secondary-cta-text: #1c1c1c;
|
--secondary-cta-text: #1c1c1c;
|
||||||
--accent: #6139e6;
|
--accent: #8b2d2d;
|
||||||
--background-accent: #b3a8e8;
|
--background-accent: #ff3d4a;
|
||||||
|
|
||||||
/* text sizing - set by ThemeProvider */
|
/* text sizing - set by ThemeProvider */
|
||||||
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);
|
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);
|
||||||
|
|||||||
Reference in New Issue
Block a user