From 8d8f6cde1a9bae6ff6011c3474150eb845525d44 Mon Sep 17 00:00:00 2001 From: ejminguez Date: Wed, 3 Sep 2025 10:38:36 +0800 Subject: [PATCH 1/3] feat: updated pycon davao 2025 registration link --- app/(home)/components/UpcomingEvents.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/(home)/components/UpcomingEvents.tsx b/app/(home)/components/UpcomingEvents.tsx index 12ef113..fb1866b 100644 --- a/app/(home)/components/UpcomingEvents.tsx +++ b/app/(home)/components/UpcomingEvents.tsx @@ -19,7 +19,7 @@ const EVENTS: Event[] = [ date: 'October 25, 2025', location: 'Ateneo de Davao University', variant: 'main', - link: '', // TODO: Update Link + link: 'https://techtix.durianpy.org/pycon-davao-2025', // TODO: Update Link }, { title: 'PyCon Davao Sprint Day', From 801f6e22aa5d3bfb70981f34ae4005a6b05873b8 Mon Sep 17 00:00:00 2001 From: seangaaab Date: Thu, 4 Sep 2025 00:25:04 +0800 Subject: [PATCH 2/3] feat: update event card to handle multi date event --- app/(home)/components/EventCard.tsx | 21 ++++++++++++++---- app/(home)/components/UpcomingEvents.tsx | 28 +++++++++--------------- 2 files changed, 27 insertions(+), 22 deletions(-) diff --git a/app/(home)/components/EventCard.tsx b/app/(home)/components/EventCard.tsx index 6202be8..e6ba268 100644 --- a/app/(home)/components/EventCard.tsx +++ b/app/(home)/components/EventCard.tsx @@ -3,15 +3,28 @@ import { cn } from '@/lib/utils'; import CountdownTimer from './CountdownTimer'; import Link from 'next/link'; -interface Event { +export interface Event { title: string; - date: string; + date: string | string[]; location: string; variant: 'main' | 'regular'; // "main" for the featured event, "regular" for other events link: string; } export default function EventCard({ event }: { event: Event }) { + const getDisplayDate = (date: string | string[]) => { + if (Array.isArray(date)) { + if (date.length === 0) return ''; + if (date.length === 1) return date[0]; + return `${date[0]} - ${date[date.length - 1]}`; + } + return date; + }; + + const getFirstDateString = (date: string | string[]) => { + return Array.isArray(date) ? (date[0] ?? '') : date; + }; + return (
- {event.date}
{event.location} + {getDisplayDate(event.date)}
{event.location}

{event.variant === 'main' && (
)} diff --git a/app/(home)/components/UpcomingEvents.tsx b/app/(home)/components/UpcomingEvents.tsx index fb1866b..b143859 100644 --- a/app/(home)/components/UpcomingEvents.tsx +++ b/app/(home)/components/UpcomingEvents.tsx @@ -2,31 +2,17 @@ import { Container } from '@/components/ui/container'; import React from 'react'; import EventCard from './EventCard'; import CountdownTimer from './CountdownTimer'; +import { type Event } from './EventCard'; // import { Button } from '@/components/ui/button'; // import Link from 'next/link'; -interface Event { - title: string; - date: string; - location: string; - variant: 'main' | 'regular'; - link: string; -} - const EVENTS: Event[] = [ { title: 'PyCon Davao 2025', - date: 'October 25, 2025', + date: ['October 25, 2025', 'October 26, 2025'], location: 'Ateneo de Davao University', variant: 'main', - link: 'https://techtix.durianpy.org/pycon-davao-2025', // TODO: Update Link - }, - { - title: 'PyCon Davao Sprint Day', - date: 'October 26, 2025', - location: 'TBA', - variant: 'regular', - link: '', // TODO: Update Link + link: 'https://techtix.durianpy.org/pycon-davao-2025', }, ]; @@ -43,7 +29,13 @@ const UpcomingEvents = () => { {/* Countdown Timer */}
- +
{/* Other events */} From 2b607edd5f5a852014476aabbe51a3c8d3db4169 Mon Sep 17 00:00:00 2001 From: seangaaab Date: Fri, 5 Sep 2025 11:13:09 +0800 Subject: [PATCH 3/3] fix: update registration link and added target to open link in new tab --- app/(home)/components/EventCard.tsx | 4 +++- app/(home)/components/UpcomingEvents.tsx | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/app/(home)/components/EventCard.tsx b/app/(home)/components/EventCard.tsx index e6ba268..1f33336 100644 --- a/app/(home)/components/EventCard.tsx +++ b/app/(home)/components/EventCard.tsx @@ -60,7 +60,9 @@ export default function EventCard({ event }: { event: Event }) { className="mx-auto mt-5 text-[10px] font-medium text-dark-green px-[10px] py-[6px] bg-primary hover:scale-105 hover:bg-primary transition-transform duration-300 rounded-full md:py-[9px] md:px-5 md:text-[12px] lg:py-[12px] lg:px-6 lg:text-[16px] xl:mx-0 xl:text-2xl" > {event.link ? ( - Register Here + + Register Here + ) : ( Registration coming soon )} diff --git a/app/(home)/components/UpcomingEvents.tsx b/app/(home)/components/UpcomingEvents.tsx index b143859..830b3ed 100644 --- a/app/(home)/components/UpcomingEvents.tsx +++ b/app/(home)/components/UpcomingEvents.tsx @@ -12,7 +12,7 @@ const EVENTS: Event[] = [ date: ['October 25, 2025', 'October 26, 2025'], location: 'Ateneo de Davao University', variant: 'main', - link: 'https://techtix.durianpy.org/pycon-davao-2025', + link: 'https://techtix.durianpy.org/pycon-davao-2025/register', }, ];