Skip to content

Commit dc77c7c

Browse files
authored
Merge pull request #49 from python-chile/43-agregar-patrocinador-solotodo
43 agregar patrocinador solotodo
2 parents 5d2413e + 4caf12b commit dc77c7c

4 files changed

Lines changed: 100 additions & 20 deletions

File tree

18 KB
Loading

src/app/globals.css

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,12 @@
77

88
:root {
99
--primary-green: #3D8B37;
10+
--py-sponsor-gold: #F59E0B; /* Naranja */
11+
--py-sponsor-gold-rgb: 245,158,11;
12+
--py-sponsor-silver: silver; /* Plata */
13+
--py-sponsor-silver-rgb: 192,192,192;
14+
--py-sponsor-bronze: darkred; /* Rojo */
15+
--py-sponsor-bronze-rgb: 139,0,0;
1016
/* Cuerpo de la serpiente */
1117
--accent-yellow: #FFE141;
1218
/* Panza en tono intermedio */
@@ -149,6 +155,61 @@ body {
149155
.sponsors-container:hover {
150156
box-shadow: 0 0 80px -20px rgba(var(--primary-green-rgb), 0.45);
151157
}
158+
/* Estilos específicos para patrocinadores gold */
159+
.sponsor-gold-container {
160+
border-color: rgba(var(--py-sponsor-gold-rgb), 0.3) !important;
161+
box-shadow: 0 0 80px -15px rgba(var(--py-sponsor-gold-rgb), 0.25) !important;
162+
}
163+
.sponsor-gold-title {
164+
color: var(--py-sponsor-gold) !important;
165+
}
166+
.sponsor-gold-underline {
167+
border-bottom-color: var(--py-sponsor-gold) !important;
168+
}
169+
.sponsor-gold-border {
170+
border-color: rgba(var(--py-sponsor-gold-rgb), 0.2) !important;
171+
}
172+
.sponsor-gold-border-hover:hover {
173+
border-color: rgba(var(--py-sponsor-gold-rgb), 0.4) !important;
174+
box-shadow: 0 0 40px -10px rgba(var(--py-sponsor-gold-rgb), 0.35) !important;
175+
}
176+
/* Estilos específicos para patrocinadores silver */
177+
.sponsor-silver-container {
178+
border-color: rgba(var(--py-sponsor-silver-rgb), 0.3) !important;
179+
box-shadow: 0 0 80px -15px rgba(var(--py-sponsor-silver-rgb), 0.25) !important;
180+
}
181+
.sponsor-silver-title {
182+
color: var(--py-sponsor-silver) !important;
183+
}
184+
.sponsor-silver-underline {
185+
border-bottom-color: var(--py-sponsor-silver) !important;
186+
}
187+
.sponsor-silver-border {
188+
border-color: rgba(var(--py-sponsor-silver-rgb), 0.2) !important;
189+
}
190+
.sponsor-silver-border-hover:hover {
191+
border-color: rgba(var(--py-sponsor-silver-rgb), 0.4) !important;
192+
box-shadow: 0 0 40px -10px rgba(var(--py-sponsor-silver-rgb), 0.35) !important;
193+
}
194+
/* Estilos específicos para patrocinadores bronze */
195+
.sponsor-bronze-container {
196+
border-color: rgba(var(--py-sponsor-bronze-rgb), 0.3) !important;
197+
box-shadow: 0 0 80px -15px rgba(var(--py-sponsor-bronze-rgb), 0.25) !important;
198+
}
199+
.sponsor-bronze-title {
200+
color: var(--py-sponsor-bronze) !important;
201+
}
202+
.sponsor-bronze-underline {
203+
border-bottom-color: var(--py-sponsor-bronze) !important;
204+
}
205+
.sponsor-bronze-border {
206+
border-color: rgba(var(--py-sponsor-bronze-rgb), 0.2) !important;
207+
}
208+
.sponsor-bronze-border-hover:hover {
209+
border-color: rgba(var(--py-sponsor-bronze-rgb), 0.4) !important;
210+
box-shadow: 0 0 40px -10px rgba(var(--py-sponsor-bronze-rgb), 0.35) !important;
211+
}
212+
152213

153214
/* Efectos para los logos de sponsors */
154215
.sponsor-logo-effect {

src/app/sponsors/components/SponsorList.js

Lines changed: 33 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { motion } from "framer-motion";
44
import SponsorLogo from "@/app/sponsors/components/SponsorLogo";
55
import sponsorsData from "@/data/sponsors";
66

7-
function SponsorGrid({ items, importance }) {
7+
function SponsorGrid({ items, type, importance }) {
88
// Reducimos significativamente el padding
99
const paddingByImportance = {
1010
large: "p-3 md:p-4", // Patrocinadores: padding reducido
@@ -26,7 +26,6 @@ function SponsorGrid({ items, importance }) {
2626
return "grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 place-items-center";
2727
}
2828
};
29-
3029
return (
3130
<div
3231
className={`
@@ -47,15 +46,19 @@ function SponsorGrid({ items, importance }) {
4746
bg-gradient-to-br from-[var(--primary-green)]/8 via-[var(--accent-yellow)]/5 to-[var(--primary-green)]/8
4847
backdrop-blur-lg rounded-xl transition-all duration-500 hover:duration-300
4948
hover:shadow-[0_0_40px_-10px_rgba(61,139,55,0.4)]
50-
border-2 border-[var(--primary-green)]/20 hover:border-[var(--accent-yellow)]/40
49+
border-2
50+
${type ? `sponsor-${type}-border sponsor-${type}-border-hover` : "border-[var(--primary-green)]/20 hover:border-[var(--accent-yellow)]/40"}
5151
transform-gpu hover:-translate-y-2 cursor-pointer w-full max-w-[200px]`}
5252
/>
5353
))}
5454
</div>
5555
);
5656
}
5757

58-
function SponsorSection({ title, year, items, importance = "medium" }) {
58+
function SponsorSection({ title, year, items, type, importance = "medium"}) {
59+
if (items.length == 0) {
60+
return null;
61+
}
5962
const titleSizes = {
6063
large: "text-4xl md:text-4xl",
6164
medium: "text-3xl md:text-4xl",
@@ -88,7 +91,7 @@ function SponsorSection({ title, year, items, importance = "medium" }) {
8891
</div>
8992

9093
{/* Grid de logos con padding dinámico */}
91-
<SponsorGrid items={items} importance={importance} />
94+
<SponsorGrid items={items} type={type} importance={importance} />
9295
</motion.div>
9396
);
9497
}
@@ -109,6 +112,10 @@ export default function SponsorList({
109112
// Filtrar según las props
110113
const organizers = showOrganizers ? sponsors.filter((s) => s.type === "organizer") : [];
111114
const sponsorsOnly = showSponsors ? sponsors.filter((s) => s.type === "sponsor") : [];
115+
const goldSponsors = sponsorsOnly.filter(s => s.tier == "gold");
116+
const silverSponsors = sponsorsOnly.filter(s => s.tier == "silver");
117+
const bronzeSponsors = sponsorsOnly.filter(s => s.tier == "bronze");
118+
112119
const communities = showCommunities ? sponsors.filter((s) => s.type === "community") : [];
113120

114121
// Verificar si hay al menos una sección para mostrar
@@ -123,15 +130,27 @@ export default function SponsorList({
123130
>
124131
{hasAnySponsors ? (
125132
<div className="space-y-16">
126-
{sponsorsOnly.length > 0 && (
127-
<SponsorSection
128-
title="Patrocinadores"
129-
year="2026"
130-
items={sponsorsOnly}
131-
importance="large"
132-
/>
133-
)}
134-
133+
<SponsorSection
134+
title="Patrocinadores Gold"
135+
year="2026"
136+
items={goldSponsors}
137+
type="gold"
138+
importance="large"
139+
/>
140+
<SponsorSection
141+
title="Patrocinadores Silver"
142+
year="2026"
143+
items={silverSponsors}
144+
type="silver"
145+
importance="large"
146+
/>
147+
<SponsorSection
148+
title="Patrocinadores Bronze"
149+
year="2026"
150+
items={bronzeSponsors}
151+
type="bronze"
152+
importance="large"
153+
/>
135154
{organizers.length > 0 && (
136155
<SponsorSection
137156
title="Organizadores"
@@ -140,7 +159,6 @@ export default function SponsorList({
140159
importance="medium"
141160
/>
142161
)}
143-
144162
{communities.length > 0 && (
145163
<SponsorSection
146164
title="Comunidades Amigas"

src/data/sponsors.js

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -70,16 +70,17 @@ const organizers = [
7070
// PATROCINADORES (financieros)
7171
const sponsors = [
7272
{
73-
_id: 6,
74-
name: "Python Software Foundation",
75-
url: "https://www.python.org/psf-landing/",
73+
_id: 8,
74+
name: "Solotodo",
75+
url: "https://www.solotodo.cl/",
7676
logo: {
7777
asset: {
78-
url: "/images/sponsors/psf_logo.webp"
78+
url: "/images/sponsors/solotodo.webp"
7979
}
8080
},
8181
type: "sponsor",
82-
cities: ["santiago", "valparaiso", "copiapo"]
82+
tier: "gold",
83+
cities: ["santiago"]
8384
},
8485
];
8586

0 commit comments

Comments
 (0)