252 lines
7.8 KiB
TypeScript
252 lines
7.8 KiB
TypeScript
/**
|
||
* ===========================================
|
||
* DATOS DEL EVENTO — ZoukLambadaBCN
|
||
* ===========================================
|
||
*
|
||
* Este archivo centraliza TODOS los datos editables del evento.
|
||
* Para modificar cualquier información, simplemente edita las
|
||
* constantes de este archivo.
|
||
*
|
||
* NOTA: Las imágenes deben colocarse en src/assets/ e importarse.
|
||
*/
|
||
|
||
// ---- INFORMACIÓN GENERAL DEL EVENTO ----
|
||
export const EVENT_INFO = {
|
||
name: "ZoukLambadaBCN Beach Festival",
|
||
subtitle: "by ZoukLambadaBCN",
|
||
/** Fecha del evento — formato ISO para el countdown */
|
||
date: "2026-09-04T12:00:00",
|
||
/** Fecha legible para mostrar */
|
||
dateDisplay: "04 al 07 de Setiembre de 2026",
|
||
city: "Santa Susana, Barcelona, España",
|
||
venue: "[Nombre del Venue]",
|
||
venueAddress: "[Dirección del venue, Barcelona]",
|
||
/** Google Maps embed URL — reemplazar con la URL real */
|
||
mapEmbedUrl: "https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2993.5!2d2.1734!3d41.3851!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x0%3A0x0!2zNDHCsDIzJzA2LjQiTiAywrAxMCcyNC4yIkU!5e0!3m2!1ses!2ses!4v1234567890",
|
||
totalSeats: 150,
|
||
};
|
||
|
||
// ---- WEBHOOK N8N ----
|
||
/**
|
||
* CONFIGURACIÓN DEL WEBHOOK:
|
||
*
|
||
* 1. En n8n, crea un nuevo workflow con un nodo "Webhook"
|
||
* 2. Configura el webhook como POST
|
||
* 3. Copia la URL generada y pégala aquí abajo
|
||
* 4. En n8n, conecta el webhook a tu destino (Google Sheets, Airtable, etc.)
|
||
*
|
||
* Ejemplo de payload que se envía:
|
||
* {
|
||
* "name": "Juan García",
|
||
* "email": "juan@example.com",
|
||
* "seats": "2",
|
||
* "country": "España",
|
||
* "comment": "Primera vez en el festival"
|
||
* }
|
||
*/
|
||
export const WEBHOOK_URL = "https://n8n.hacecalor.net/webhook/event-reservation";
|
||
|
||
// ---- SOBRE EL EVENTO ----
|
||
export const ABOUT_EVENT = {
|
||
title: "Sobre el Evento",
|
||
description: `[Descripción del evento. Explica qué hace especial esta edición,
|
||
qué pueden esperar los asistentes, y por qué no se lo pueden perder.]`,
|
||
lambadaInfo: `La Lambada es un baile brasileño nacido en los años 80,
|
||
conocido por su sensualidad, conexión y ritmo envolvente.
|
||
Mezcla influencias de forró, merengue y carimbó,
|
||
creando una experiencia de baile única y apasionante.`,
|
||
highlights: [
|
||
"Workshops con artistas internacionales",
|
||
"Social dancing durante toda la noche",
|
||
"Shows en vivo",
|
||
"DJ sets tropicales",
|
||
],
|
||
};
|
||
|
||
// ---- SOBRE ZOUKLAMBADABCN ----
|
||
export const ABOUT_ORG = {
|
||
title: "ZoukLambadaBCN",
|
||
history: `[Historia del grupo organizador. Cuándo se fundó,
|
||
cómo empezó, qué han logrado hasta ahora.]`,
|
||
philosophy: `[Filosofía del grupo. Qué valores defienden,
|
||
qué quieren aportar a la comunidad de baile.]`,
|
||
socials: {
|
||
instagram: "https://instagram.com/zouklambadabcn",
|
||
facebook: "https://facebook.com/zouklambadabcn",
|
||
youtube: "https://youtube.com/@zouklambadabcn",
|
||
},
|
||
};
|
||
|
||
// ---- STAFF DEL EVENTO ----
|
||
/**
|
||
* Para añadir un nuevo miembro del staff,
|
||
* simplemente agrega un nuevo objeto al array.
|
||
*/
|
||
export const STAFF = [
|
||
{
|
||
id: "1",
|
||
name: "[Nombre Instructor 1]",
|
||
role: "Instructor" as const,
|
||
description: "[Breve biografía del instructor]",
|
||
/** Reemplazar con ruta a foto real */
|
||
image: "",
|
||
socials: {
|
||
instagram: "",
|
||
},
|
||
},
|
||
{
|
||
id: "2",
|
||
name: "[Nombre Instructor 2]",
|
||
role: "Instructor" as const,
|
||
description: "[Breve biografía del instructor]",
|
||
image: "",
|
||
socials: {
|
||
instagram: "",
|
||
},
|
||
},
|
||
{
|
||
id: "3",
|
||
name: "[Nombre DJ]",
|
||
role: "DJ" as const,
|
||
description: "[Breve biografía del DJ]",
|
||
image: "",
|
||
socials: {
|
||
instagram: "",
|
||
soundcloud: "",
|
||
},
|
||
},
|
||
{
|
||
id: "4",
|
||
name: "[Nombre Organizador]",
|
||
role: "Organizador" as const,
|
||
description: "[Breve biografía del organizador]",
|
||
image: "",
|
||
socials: {
|
||
instagram: "",
|
||
},
|
||
},
|
||
];
|
||
|
||
// ---- PROGRAMA DEL EVENTO ----
|
||
export const SCHEDULE = [
|
||
{
|
||
day: "Viernes 20 Junio",
|
||
events: [
|
||
{ time: "18:00 – 19:30", title: "[Workshop 1]", type: "workshop" as const },
|
||
{ time: "19:30 – 20:00", title: "Pausa", type: "break" as const },
|
||
{ time: "20:00 – 21:30", title: "[Workshop 2]", type: "workshop" as const },
|
||
{ time: "22:00 – 03:00", title: "Social Dance + DJ Set", type: "social" as const },
|
||
],
|
||
},
|
||
{
|
||
day: "Sábado 21 Junio",
|
||
events: [
|
||
{ time: "12:00 – 13:30", title: "[Workshop 3]", type: "workshop" as const },
|
||
{ time: "14:00 – 15:30", title: "[Workshop 4]", type: "workshop" as const },
|
||
{ time: "16:00 – 17:30", title: "[Workshop 5]", type: "workshop" as const },
|
||
{ time: "21:00 – 22:00", title: "Shows en Vivo", type: "show" as const },
|
||
{ time: "22:00 – 04:00", title: "Social Dance + DJ Sets", type: "social" as const },
|
||
],
|
||
},
|
||
{
|
||
day: "Domingo 22 Junio",
|
||
events: [
|
||
{ time: "12:00 – 13:30", title: "[Workshop 6]", type: "workshop" as const },
|
||
{ time: "14:00 – 15:30", title: "[Workshop 7]", type: "workshop" as const },
|
||
{ time: "17:00 – 22:00", title: "Farewell Party", type: "social" as const },
|
||
],
|
||
},
|
||
];
|
||
|
||
// ---- HABITACIONES DE HOTEL ----
|
||
/**
|
||
* Para añadir habitaciones, agrega objetos al array.
|
||
* El botón "Reservar" abre el link en nueva pestaña.
|
||
*/
|
||
export const HOTEL_ROOMS = [
|
||
{
|
||
id: "1",
|
||
name: "[Habitación Individual]",
|
||
price: "[XX€/noche]",
|
||
description: "[Descripción breve de la habitación]",
|
||
/** Reemplazar con URL de imagen real */
|
||
image: "",
|
||
link: "https://hotel-example.com/booking",
|
||
},
|
||
{
|
||
id: "2",
|
||
name: "[Habitación Doble]",
|
||
price: "[XX€/noche]",
|
||
description: "[Descripción breve de la habitación]",
|
||
image: "",
|
||
link: "https://hotel-example.com/booking",
|
||
},
|
||
{
|
||
id: "3",
|
||
name: "[Suite]",
|
||
price: "[XX€/noche]",
|
||
description: "[Descripción breve de la habitación]",
|
||
image: "",
|
||
link: "https://hotel-example.com/booking",
|
||
},
|
||
];
|
||
|
||
// ---- INFORMACIÓN PRÁCTICA ----
|
||
export const PRACTICAL_INFO = {
|
||
airports: [
|
||
{ name: "Aeropuerto de Barcelona-El Prat (BCN)", distance: "~15 km del venue" },
|
||
{ name: "Aeropuerto de Girona (GRO)", distance: "~100 km del venue" },
|
||
{ name: "Aeropuerto de Reus (REU)", distance: "~110 km del venue" },
|
||
],
|
||
howToGet: [
|
||
{ method: "Metro", details: "[Línea y parada más cercana]" },
|
||
{ method: "Bus", details: "[Líneas de bus cercanas]" },
|
||
{ method: "Taxi/Uber", details: "Disponible desde cualquier punto de Barcelona" },
|
||
],
|
||
};
|
||
|
||
// ---- PROFESORES ----
|
||
/**
|
||
* Para añadir un profesor, agrega un objeto al array.
|
||
* Importa la imagen desde src/assets/ si es local.
|
||
*/
|
||
export const PROFESORES = [
|
||
{ name: "[Profesor 1]", image: "", origin: "[País]" },
|
||
{ name: "[Profesor 2]", image: "", origin: "[País]" },
|
||
{ name: "[Profesor 3]", image: "", origin: "[País]" },
|
||
{ name: "[Profesor 4]", image: "", origin: "[País]" },
|
||
{ name: "[Profesor 5]", image: "", origin: "[País]" },
|
||
{ name: "[Profesor 6]", image: "", origin: "[País]" },
|
||
];
|
||
|
||
// ---- GALERÍA ----
|
||
/**
|
||
* Añade URLs o importaciones de imágenes.
|
||
* Para importar: import img from "@/assets/gallery/photo1.jpg"
|
||
*/
|
||
export const GALLERY_IMAGES = [
|
||
{ src: "", alt: "[Descripción foto 1]" },
|
||
{ src: "", alt: "[Descripción foto 2]" },
|
||
{ src: "", alt: "[Descripción foto 3]" },
|
||
{ src: "", alt: "[Descripción foto 4]" },
|
||
{ src: "", alt: "[Descripción foto 5]" },
|
||
{ src: "", alt: "[Descripción foto 6]" },
|
||
];
|
||
|
||
// ---- NAVEGACIÓN ----
|
||
export const NAV_LINKS = [
|
||
{ label: "Sobre", href: "#about" },
|
||
{ label: "Staff", href: "#staff" },
|
||
{ label: "Programa", href: "#schedule" },
|
||
{ label: "Reservar", href: "#booking" },
|
||
{ label: "Hotel", href: "#hotel" },
|
||
{ label: "Info", href: "#info" },
|
||
{ label: "Galería", href: "#gallery" },
|
||
];
|
||
|
||
// ---- FOOTER ----
|
||
export const FOOTER = {
|
||
email: "[email@zouklambadabcn.com]",
|
||
copyright: `© ${new Date().getFullYear()} ZoukLambadaBCN. Todos los derechos reservados.`,
|
||
};
|