Important info
CI/CD Deploy / test (push) Successful in 2m54s
CI/CD Deploy / build-push (push) Successful in 1m53s
CI/CD Deploy / deploy (push) Successful in 33s

This commit is contained in:
Antoni Nuñez Romeu
2026-09-02 23:38:03 +02:00
parent a5538f0b9f
commit 8e63b859a3
5 changed files with 61 additions and 14 deletions
+4 -1
View File
@@ -28,7 +28,10 @@ const HotelSection = () => {
<h2 className="font-display text-4xl md:text-5xl lg:text-7xl break-words font-bold pt-4 pb-10 leading-[1.8] text-gradient"> <h2 className="font-display text-4xl md:text-5xl lg:text-7xl break-words font-bold pt-4 pb-10 leading-[1.8] text-gradient">
{t("hotel.title")} {t("hotel.title")}
</h2> </h2>
<p className="text-muted-foreground max-w-2xl mx-auto">{t("hotel.subtitle")}</p> <p className="text-muted-foreground max-w-2xl mx-auto mb-4">{t("hotel.subtitle")}</p>
<p className="text-sm text-primary font-medium bg-primary/5 inline-block px-3 py-1.5 rounded-full">
{t("info.hotelFullBoard")}
</p>
</motion.div> </motion.div>
<div className="grid sm:grid-cols-2 lg:grid-cols-3 gap-6 max-w-5xl mx-auto"> <div className="grid sm:grid-cols-2 lg:grid-cols-3 gap-6 max-w-5xl mx-auto">
+13 -1
View File
@@ -1,5 +1,5 @@
import { motion } from "framer-motion"; import { motion } from "framer-motion";
import { EVENT_INFO, PRACTICAL_INFO } from "@/data/event-data"; import { EVENT_INFO, PRACTICAL_INFO, RECEPTION_INFO, EXTRA_NOTES } from "@/data/event-data";
import { MapPin, Plane, Train } from "lucide-react"; import { MapPin, Plane, Train } from "lucide-react";
import { useTranslation } from "react-i18next"; import { useTranslation } from "react-i18next";
@@ -109,6 +109,18 @@ const PracticalSection = () => {
})} })}
</div> </div>
</div> </div>
{/* Notas Festival */}
<div className="bg-card rounded-lg p-4 space-y-3 border border-primary/20">
<p className="text-sm text-foreground font-semibold">{t("info.reception")}</p>
<p className="text-xs text-muted-foreground">
{t("info.receptionHours")} · {RECEPTION_INFO.location}
</p>
<p className="text-xs text-muted-foreground">{t("info.noFullPass")}</p>
<p className="text-xs text-muted-foreground">{t("info.looseClass")}</p>
<p className="text-xs text-muted-foreground">{t("info.poolParties")}</p>
<p className="text-xs text-muted-foreground">{t("info.showsNight")}</p>
</div>
</motion.div> </motion.div>
</div> </div>
</div> </div>
+18
View File
@@ -408,6 +408,24 @@ export const PRACTICAL_INFO = {
], ],
}; };
// ---- INFORMACIÓN EXTRA FESTIVAL ----
export const RECEPTION_INFO = {
openDay: "Viernes",
openTime: "15:00h",
location: "Zouklambada Beach",
};
export const EXTRA_NOTES = {
noFullPassEntryFee: 25,
noFullPassEntryFeeCurrency: "€",
looseClassReserveLocation: "Recepción",
looseClassPrice: 25,
looseClassCurrency: "€",
poolPartyIncludedWith: "Alojamiento en Hotel Don Ángel",
showsNightTime: "01:00h",
fullBoardPeriod: "De la cena del viernes a la comida del lunes",
};
// ---- GALERÍA ---- // ---- GALERÍA ----
/** /**
* Añade URLs o importaciones de imágenes. * Añade URLs o importaciones de imágenes.
+12 -5
View File
@@ -92,8 +92,8 @@
"passType": "Pass Type", "passType": "Pass Type",
"amount": "Amount", "amount": "Amount",
"country": "Country", "country": "Country",
"countryPlaceholder": "Search country...", "countryPlaceholder": "Search country...",
"countryNoResults": "No countries found" "countryNoResults": "No countries found"
}, },
"validation": { "validation": {
"nameMin": "Name must be at least 2 characters", "nameMin": "Name must be at least 2 characters",
@@ -111,8 +111,8 @@
"eventInProgressDescription": "Disabled reservations.", "eventInProgressDescription": "Disabled reservations.",
"error": "Error sending reservation. Please try again." "error": "Error sending reservation. Please try again."
}, },
"priceSummaryLabel": "Total Price", "priceSummaryLabel": "Total Price",
"priceSummaryNote": "No online payment • Pay at the event", "priceSummaryNote": "No online payment • Pay at the event",
"buyButton": "Send Reservation", "buyButton": "Send Reservation",
"reservationId": "Reservation ID" "reservationId": "Reservation ID"
}, },
@@ -182,7 +182,14 @@
"viewInfo": "View info", "viewInfo": "View info",
"venue": "Event Venue", "venue": "Event Venue",
"mapTitle": "Event Location", "mapTitle": "Event Location",
"viewOnMap": "View on map" "viewOnMap": "View on map",
"reception": "Zouklambada Reception",
"receptionHours": "Open from Friday 15:00h",
"noFullPass": "No Full Pass → Every party costs €25 cash at entry",
"looseClass": "Drop-in class — Book at Reception (€25 cash)",
"poolParties": "Pool parties included with accommodation",
"showsNight": "Night Shows — 01:00h",
"hotelFullBoard": "Hotel Don Ángel — Full Board (dinner Friday to lunch Monday)"
}, },
"gallery": { "gallery": {
"title": "Gallery" "title": "Gallery"
+12 -5
View File
@@ -92,8 +92,8 @@
"passType": "Tipo de Pase", "passType": "Tipo de Pase",
"amount": "Cantidad", "amount": "Cantidad",
"country": "País", "country": "País",
"countryPlaceholder": "Buscar país...", "countryPlaceholder": "Buscar país...",
"countryNoResults": "No se encontraron países" "countryNoResults": "No se encontraron países"
}, },
"validation": { "validation": {
"nameMin": "El nombre debe tener al menos 2 caracteres", "nameMin": "El nombre debe tener al menos 2 caracteres",
@@ -111,8 +111,8 @@
"eventInProgressDescription": "La reserva de pases ha finalizado.", "eventInProgressDescription": "La reserva de pases ha finalizado.",
"error": "Error al enviar la reserva. Inténtalo de nuevo." "error": "Error al enviar la reserva. Inténtalo de nuevo."
}, },
"priceSummaryLabel": "Precio Total", "priceSummaryLabel": "Precio Total",
"priceSummaryNote": "Sin pago online • Paga en el evento", "priceSummaryNote": "Sin pago online • Paga en el evento",
"buyButton": "Enviar Reserva", "buyButton": "Enviar Reserva",
"reservationId": "ID de Reserva" "reservationId": "ID de Reserva"
}, },
@@ -182,7 +182,14 @@
"viewInfo": "Ver info", "viewInfo": "Ver info",
"venue": "Lugar del Evento", "venue": "Lugar del Evento",
"mapTitle": "Ubicación del evento", "mapTitle": "Ubicación del evento",
"viewOnMap": "Ver en mapa" "viewOnMap": "Ver en mapa",
"reception": "Recepción Zouklambada",
"receptionHours": "Abierta desde viernes 15:00h",
"noFullPass": "Sin Full Pass → Todas las fiestas 25€ en efectivo al entrar",
"looseClass": "Clase suelta — Reserva en Recepción (25€ efectivo)",
"poolParties": "Fiestas en la piscina incluidas con alojamiento",
"showsNight": "Shows Noche — 01:00h",
"hotelFullBoard": "Hotel Don Ángel — Pensión Completa (cena viernes a comida lunes)"
}, },
"gallery": { "gallery": {
"title": "Galería" "title": "Galería"