Skip to content

Commit 77f972b

Browse files
committed
Rename event_website to event_page_url and add prominent "Visit event page" button in details panel
1 parent eada58e commit 77f972b

19 files changed

Lines changed: 69 additions & 39 deletions

File tree

.github/ISSUE_TEMPLATE/new-event.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -128,10 +128,11 @@ body:
128128
description: 24-hour time. Leave blank if the end time is not yet determined.
129129
placeholder: "21:30"
130130
- type: input
131-
id: event_website
131+
id: event_page_url
132132
attributes:
133-
label: Event website
134-
placeholder: https://example.org/pcd
133+
label: Event page URL
134+
description: This could be a Meetup or Eventbrite page, a forum thread with event details, or any public URL.
135+
placeholder: https://myevents.com/pcd-my-city-123456789
135136
- type: textarea
136137
id: organizers
137138
attributes:

.github/scripts/process-new-event-issue.mjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,7 @@ const nodeRecord = {
255255
event_end_time: endTime,
256256
event_short_description: shortDescription,
257257
event_activities: activities,
258-
event_website: eventWebsite,
258+
event_page_url: eventWebsite,
259259
forum_thread_url: forumThreadUrl,
260260
city,
261261
country,

pcd-website/src/components/NodePanel.vue

Lines changed: 46 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -196,14 +196,14 @@ async function copyLink(node: Node) {
196196
aria-label="Close event details"
197197
@click="emit('close')"
198198
>
199-
<Icon icon="bi:chevron-right" width="20" height="20" aria-hidden="true" />
199+
<Icon icon="bi:chevron-right" width="1em" height="1em" aria-hidden="true" />
200200
</button>
201201

202202
<div class="panel-scroll">
203203
<template v-if="node">
204204
<div class="panel-mobile-back">
205205
<button class="panel-back-btn" @click="emit('close')">
206-
<Icon icon="bi:chevron-left" width="16" height="16" aria-hidden="true" />
206+
<Icon icon="bi:chevron-left" width="1em" height="1em" aria-hidden="true" />
207207
Back to map
208208
</button>
209209
</div>
@@ -221,12 +221,12 @@ async function copyLink(node: Node) {
221221
:title="linkCopied ? 'Link copied!' : 'Share event'"
222222
@click.stop="shareDropdownOpen = !shareDropdownOpen"
223223
>
224-
<Icon v-if="!linkCopied" icon="bi:box-arrow-up" width="20" height="20" aria-hidden="true" />
225-
<Icon v-else icon="bi:check-lg" width="20" height="20" aria-hidden="true" />
224+
<Icon v-if="!linkCopied" icon="bi:box-arrow-up" width="1.3em" height="1.3em" aria-hidden="true" />
225+
<Icon v-else icon="bi:check-lg" width="1em" height="1em" aria-hidden="true" />
226226
</button>
227227
<div v-show="shareDropdownOpen" class="quick-action-menu share-menu" role="menu">
228228
<button role="menuitem" class="copy-link-btn" @click="copyLink(node)">
229-
<Icon icon="bi:copy" width="14" height="14" aria-hidden="true" />
229+
<Icon icon="bi:copy" width="1em" height="1em" aria-hidden="true" />
230230
Copy link
231231
</button>
232232
<hr class="share-menu-divider" />
@@ -266,11 +266,20 @@ async function copyLink(node: Node) {
266266
</p>
267267
</div>
268268

269+
<!-- Event website CTA -->
270+
<a
271+
v-if="node.event_page_url"
272+
:href="node.event_page_url"
273+
target="_blank"
274+
rel="noopener noreferrer"
275+
class="panel-event-website-btn"
276+
>Visit event page <Icon icon="bi:box-arrow-up-right" width="1em" height="1em" aria-hidden="true" style="margin-left: 0.5rem; vertical-align: -0.1em;" /></a>
277+
269278
<!-- Info Card -->
270279
<div class="panel-info-card">
271280
<!-- Row 1: Date/time -->
272281
<div class="info-card-row">
273-
<Icon icon="bi:calendar-event" width="18" height="18" aria-hidden="true" class="info-card-icon" />
282+
<Icon icon="bi:calendar-event" width="1em" height="1em" aria-hidden="true" class="info-card-icon" />
274283
<div>
275284
<span v-if="node.date_tbd" class="info-card-date info-card-tbd">Date TBD</span>
276285
<span v-else class="info-card-date">{{ formatDateRange(node.event_date ?? '', node.event_end_date) }}</span>
@@ -286,7 +295,7 @@ async function copyLink(node: Node) {
286295
<!-- Row 2: Venue + address (OSM link) or Online platform -->
287296
<div class="info-card-row info-card-venue-row">
288297
<div class="info-card-row-leading">
289-
<Icon icon="bi:link-45deg" width="18" height="18" aria-hidden="true" class="info-card-icon" />
298+
<Icon icon="bi:link-45deg" width="1em" height="1em" aria-hidden="true" class="info-card-icon" />
290299
<div class="info-card-venue">
291300
<span class="info-card-venue-name">{{ node.online_event ? onlinePlatformName(node.event_url) : node.location_tbd ? 'Location TBD' : (node.location_name || node.address) }}</span>
292301
<a
@@ -308,15 +317,15 @@ async function copyLink(node: Node) {
308317
</div>
309318
</div>
310319
<p v-if="node.online_event" class="panel-online-badge info-card-online-badge">
311-
<Icon icon="bi:wifi" width="13" height="13" aria-hidden="true" />
320+
<Icon icon="bi:wifi" width="1em" height="1em" aria-hidden="true" />
312321
Online Event
313322
</p>
314323
</div>
315324
<hr class="info-card-divider" aria-hidden="true" />
316325

317326
<!-- Row 3: Add to calendar (hidden when date is TBD) -->
318327
<div v-if="!node.date_tbd" class="info-card-row info-card-calendar-row">
319-
<Icon icon="bi:calendar-plus" width="18" height="18" aria-hidden="true" class="info-card-icon" />
328+
<Icon icon="bi:calendar-plus" width="1em" height="1em" aria-hidden="true" class="info-card-icon" />
320329
<div class="info-card-cal-trigger-wrap">
321330
<button
322331
class="info-card-cal-trigger"
@@ -375,7 +384,7 @@ async function copyLink(node: Node) {
375384
</div>
376385

377386
<!-- Links section -->
378-
<div v-if="node.event_website || node.primary_contact.email" class="panel-links">
387+
<div v-if="node.event_page_url || node.primary_contact.email" class="panel-links">
379388
<hr class="panel-separator" aria-hidden="true" />
380389
<a
381390
v-if="!node.online_event && !node.location_tbd"
@@ -385,7 +394,7 @@ async function copyLink(node: Node) {
385394
class="panel-link-row"
386395
title="Get directions on OpenStreetMap"
387396
>
388-
<Icon icon="bi:map" width="16" height="16" aria-hidden="true" class="panel-link-icon" />
397+
<Icon icon="bi:map" width="1em" height="1em" aria-hidden="true" class="panel-link-icon" />
389398
<span>Get directions</span>
390399
</a>
391400
<a
@@ -394,19 +403,19 @@ async function copyLink(node: Node) {
394403
class="panel-link-row"
395404
:title="`Email ${node.primary_contact.email}`"
396405
>
397-
<Icon icon="bi:envelope" width="16" height="16" aria-hidden="true" class="panel-link-icon" />
406+
<Icon icon="bi:envelope" width="1em" height="1em" aria-hidden="true" class="panel-link-icon" />
398407
<span>{{ node.primary_contact.email }}</span>
399408
</a>
400409
<a
401-
v-if="node.event_website"
402-
:href="node.event_website"
410+
v-if="node.event_page_url"
411+
:href="node.event_page_url"
403412
target="_blank"
404413
rel="noopener noreferrer"
405414
class="panel-link-row"
406-
:title="`Visit ${node.event_website}`"
415+
:title="`Visit ${node.event_page_url}`"
407416
>
408-
<Icon icon="bi:globe" width="16" height="16" aria-hidden="true" class="panel-link-icon" />
409-
<span>{{ node.event_website }}</span>
417+
<Icon icon="bi:globe" width="1em" height="1em" aria-hidden="true" class="panel-link-icon" />
418+
<span>{{ node.event_page_url }}</span>
410419
</a>
411420
</div>
412421
</div>
@@ -677,6 +686,26 @@ async function copyLink(node: Node) {
677686
color: var(--color-link-hover);
678687
}
679688
689+
/* ─── Event website CTA ─── */
690+
.panel-event-website-btn {
691+
display: block;
692+
width: 100%;
693+
margin-bottom: 1rem;
694+
padding: 0.625rem 1rem;
695+
background: var(--color-link);
696+
color: #fff;
697+
text-align: center;
698+
text-decoration: none;
699+
font-size: 0.9375rem;
700+
font-weight: 600;
701+
border-radius: 6px;
702+
box-sizing: border-box;
703+
}
704+
705+
.panel-event-website-btn:hover {
706+
background: var(--color-link-hover);
707+
}
708+
680709
/* ─── Info Card ─── */
681710
.panel-info-card {
682711
margin-bottom: 1.25rem;

pcd-website/src/content/events/pcd-amsterdam-2026/metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
"event_end_time": "22:00",
2525
"event_short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.",
2626
"event_activities": [],
27-
"event_website": "https://example.nl/pcd",
27+
"event_page_url": "https://example.nl/pcd",
2828
"forum_thread_url": "",
2929
"city": "Amsterdam",
3030
"country": "Netherlands",

pcd-website/src/content/events/pcd-barcelona-2026/metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
"event_end_time": "22:00",
2525
"event_short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore.",
2626
"event_activities": [],
27-
"event_website": "https://example.es/pcd",
27+
"event_page_url": "https://example.es/pcd",
2828
"forum_thread_url": "",
2929
"city": "Barcelona",
3030
"country": "Spain",

pcd-website/src/content/events/pcd-berlin-2026/metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
"event_end_time": "22:00",
3939
"event_short_description": "This is a short description of the Berlin event. It should give a brief overview of what to expect at the event and entice people to click through to learn more.",
4040
"event_activities": [],
41-
"event_website": "https://creativecode.berlin",
41+
"event_page_url": "https://creativecode.berlin",
4242
"forum_thread_url": "https://discourse.processing.org/t/pcd-worldwide-2026/48081",
4343
"city": "Berlin",
4444
"country": "Germany",

pcd-website/src/content/events/pcd-example-2026/metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
"Creative coding jams or hack sessions",
2727
"Other"
2828
],
29-
"event_website": "",
29+
"event_page_url": "",
3030
"forum_thread_url": "",
3131
"city": "Santa-Maria Navarese",
3232
"country": "Italy",

pcd-website/src/content/events/pcd-london-2026/metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
"event_end_time": "21:30",
2626
"event_short_description": "",
2727
"event_activities": [],
28-
"event_website": "https://example.co.uk/pcd",
28+
"event_page_url": "https://example.co.uk/pcd",
2929
"forum_thread_url": "",
3030
"city": "London",
3131
"country": "United Kingdom",

pcd-website/src/content/events/pcd-melbourne-2026/metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
"event_end_time": "21:00",
2525
"event_short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris.",
2626
"event_activities": [],
27-
"event_website": "https://example.com.au/pcd",
27+
"event_page_url": "https://example.com.au/pcd",
2828
"forum_thread_url": "",
2929
"city": "Melbourne",
3030
"country": "Australia",

pcd-website/src/content/events/pcd-nairobi-2026/metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
"event_end_time": "20:00",
2525
"event_short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris.",
2626
"event_activities": [],
27-
"event_website": "https://example.co.ke/pcd",
27+
"event_page_url": "https://example.co.ke/pcd",
2828
"forum_thread_url": "",
2929
"city": "Nairobi",
3030
"country": "Kenya",

0 commit comments

Comments
 (0)