Skip to content

Commit da01121

Browse files
committed
Randomize workshop links on client
1 parent 00d9bd2 commit da01121

File tree

1 file changed

+28
-25
lines changed

1 file changed

+28
-25
lines changed

src/components/Workshops.astro

Lines changed: 28 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import julioCesar from "../assets/images/workshops/Julio-Cesar-Ruiz.jpg"
1010
1111
const workshops = [
1212
{
13+
id: "1",
1314
date: "Vie. 19 abril 2024",
1415
links: [
1516
"https://www.facebook.com/gdgsucre/videos/1605607886943684/",
@@ -34,10 +35,11 @@ const workshops = [
3435
],
3536
},
3637
{
38+
id: "2",
3739
date: "Mar. 23 abril 2024",
3840
links: [
39-
"https://www.facebook.com/GDGSantaCruz/videos/980815600258593/",
4041
"https://www.facebook.com/gdgsucre/videos/1661837077980123/",
42+
"https://www.facebook.com/GDGSantaCruz/videos/980815600258593/",
4143
"https://www.facebook.com/GDGCochabamba/videos/956867209435782/",
4244
],
4345
details: [
@@ -72,31 +74,32 @@ const workshops = [
7274
<h2 class="text-2xl sm:text-3xl font-bold mx-auto">Talleres previos</h2>
7375

7476
{
75-
workshops.map(({ date, links, details }) => {
76-
// choose a random link to avoid favoring any particular chapter
77-
const videoLink = links[Math.floor(Math.random() * links.length)]
78-
79-
return (
80-
<div class="space-y-4">
81-
<div class="flex items-center space-x-4 mt-6">
82-
<span class="w-60 md:w-fit text-nowrap font-bold text-lg md:text-2xl">{date}</span>
83-
<hr class="w-full border-blue-500" />
84-
<a
85-
target="_blank"
86-
rel="noopener noreferrer"
87-
href={videoLink}
88-
class="text-nowrap text-red-500 hover:bg-red-500 hover:text-black font-semibold border px-1 md:text-lg md:px-2"
89-
>
90-
Ver en Facebook
91-
</a>
92-
</div>
93-
94-
{details?.map(detail => (
95-
<WorkshopDetail {...detail} />
96-
))}
77+
workshops.map(({ id, date, details }) => (
78+
<div class="space-y-4">
79+
<div class="flex items-center space-x-4 mt-6">
80+
<span class="w-60 md:w-fit text-nowrap font-bold text-lg md:text-2xl">{date}</span>
81+
<hr class="w-full border-blue-500" />
82+
<a
83+
id={id}
84+
target="_blank"
85+
rel="noopener noreferrer"
86+
class="text-nowrap text-red-500 hover:bg-red-500 hover:text-black font-semibold border px-1 md:text-lg md:px-2"
87+
>
88+
Ver en Facebook
89+
</a>
9790
</div>
98-
)
99-
})
91+
92+
{details?.map(detail => (
93+
<WorkshopDetail {...detail} />
94+
))}
95+
</div>
96+
))
10097
}
10198
</div>
10299
</div>
100+
101+
<script is:inline define:vars={{ workshops }}>
102+
for ({ id, links } of workshops) {
103+
document.getElementById(id).href = links[Math.floor(Math.random() * links.length)]
104+
}
105+
</script>

0 commit comments

Comments
 (0)