Skip to content

Commit

Permalink
feat: add photos and vods for meetup Tunis and Hanoi (#172)
Browse files Browse the repository at this point in the history
* feat: add photos and vods for meetups

* fix: error props

* fix: remove unnecessary div

* fix: replay button style on mobile devices
  • Loading branch information
houssembaltii authored Dec 12, 2024
1 parent 90df88a commit 445ae8a
Show file tree
Hide file tree
Showing 14 changed files with 46 additions and 8 deletions.
11 changes: 10 additions & 1 deletion src/app/(homepage)/past-events.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,17 @@ export const PastEvents = async () => {
href={`/meetups/${meetup.metadata.slug}`}
title="Homepage of the event"
>
<MeetupCard meetup={meetup} />
<MeetupCard meetup={meetup} className="rounded-b-none" />
</Link>
{meetup.postMeetupPhotosUrl && (
<div className="flex gap-4 rounded-b-lg border-2 border-t-0 border-gray-700 bg-gray-900 p-6">
<Button asChild>
<a href={meetup.postMeetupPhotosUrl} target="_blank">
Explore all the photos
</a>
</Button>
</div>
)}
</div>
))}
{pastEvents.map((event) => (
Expand Down
19 changes: 18 additions & 1 deletion src/app/meetups/[slug]/talks/[talk]/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,25 @@ export default async function TalkPage({ params }: TalkPageProps) {
<Content />
</div>

<div className="flex flex-col justify-between gap-8 sm:flex-row sm:items-center">
<div className="flex flex-row justify-between gap-8 sm:items-center">
<LanguageBadge language={talk.language} />
{talk.replayUrl && (
<Button
asChild
variant="outline"
size="sm"
className="w-fit"
>
<Link
href={talk.replayUrl}
className="flex gap-2"
target="_blank"
>
Replay
<ExternalLink className="h-4 w-4" />
</Link>
</Button>
)}
<div className="flex flex-row items-center justify-between gap-4">
{talk.feedback && (
<Button
Expand Down
8 changes: 4 additions & 4 deletions src/components/meetup-card.tsx
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { Button } from "@/components/ui/button";
import { Meetup } from "@/content/collections";
import { formatDateTime } from "@/lib/utils";
import { cn, formatDateTime } from "@/lib/utils";
import { Calendar, MapPin } from "lucide-react";
import Image from "next/image";

type MeetupCardProps = { meetup: Meetup };
type MeetupCardProps = { meetup: Meetup ,className? : string};

export const MeetupCard = (props: MeetupCardProps) => {
export const MeetupCard = ({className,...props}:MeetupCardProps) => {
return (
<article className="flex flex-col rounded-lg border-2 border-gray-700 bg-gray-900 p-6 md:p-8">
<article className={cn("flex flex-col rounded-lg border-2 border-gray-700 bg-gray-900 p-6 md:p-8",className)}>
<div className="flex flex-col justify-between gap-6 sm:flex-row">
<div className="flex flex-col gap-6">
<h3 className="flex flex-col font-heading text-3xl text-primary">
Expand Down
4 changes: 3 additions & 1 deletion src/content/collections.ts
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,8 @@ const collections = {
}),
)
.optional(),
}),
postMeetupPhotosUrl:z.string().url().optional(),
}),
}),
speaker: defineCollection({
folder: "speaker",
Expand Down Expand Up @@ -290,6 +291,7 @@ const collections = {
})
.optional(),
hosts: z.string().array().optional(),
replayUrl: z.string().optional(),
}),
}),
} as const;
Expand Down
1 change: 1 addition & 0 deletions src/content/meetup/2024-09-24-tunis.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ schedule:
duration: 60
status: EventScheduled
attendanceMode: OfflineEventAttendanceMode
postMeetupPhotosUrl: https://photos.app.goo.gl/bpwJ45YH3QKrt5hj6
---

import { About } from "./2024-09-24-tunis/about";
Expand Down
1 change: 1 addition & 0 deletions src/content/meetup/2024-10-17-hanoi.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ schedule:
status: EventScheduled
attendanceMode: OfflineEventAttendanceMode
isFree : true
postMeetupPhotosUrl: https://photos.app.goo.gl/wRQu4Byv75qCjUwF9
---

import { About } from "./2024-10-17-hanoi/about";
Expand Down
1 change: 1 addition & 0 deletions src/content/meetup/2024-10-22-kuala-lumpur.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ partnersOrganizersLogos:
- src: "/partners/french-tech-malaysia-no-bg.png"
alt: French Tech Malaysia
href: https://lafrenchtech.my/
postMeetupPhotosUrl: https://photos.app.goo.gl/SD81bdUVpdfm1iRg7
---

import { About } from "./2024-10-22-kuala-lumpur/about";
Expand Down
1 change: 1 addition & 0 deletions src/content/meetup/2024-11-05-bangkok.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ partnersOrganizersLogos:
- src: "/partners/atawad-agency-no-bg.png"
alt: Atawad agency
href: https://atawadagency.com/
postMeetupPhotosUrl: https://photos.app.goo.gl/k74fQxdhqyX5gBWa9
---

import { About } from "./2024-11-05-bangkok/about";
Expand Down
1 change: 1 addition & 0 deletions src/content/meetup/2024-11-15-da-nang.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ partnersOrganizersLogos:
- src: "/partners/smart-dev-no-bg.png"
alt: SmartDev
href: https://www.smartdev.com/
postMeetupPhotosUrl: https://photos.app.goo.gl/kH76NbdFiNHzKbsD6
---

import { About } from "./2024-11-15-da-nang/about";
Expand Down
1 change: 1 addition & 0 deletions src/content/meetup/2024-11-28-casablanca.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ partnersOrganizersLogos:
- src: "/partners/docaposte-blanc.png"
alt: "Docaposte"
href: https://www.docaposte.com/
postMeetupPhotosUrl: https://photos.app.goo.gl/r69idnA4gxWJj4U46
---

import { About } from "./2024-11-28-casablanca/about";
Expand Down
3 changes: 2 additions & 1 deletion src/content/talk/concevoir-avec-efficacite.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ title: "Concevoir avec efficacité : Maîtriser le Temps, le Coût et la Valeur"
speakers:
- sofiane-boukhris
language: french
replayUrl: https://www.youtube.com/watch?v=_vBbADc-JhA
---

Dans un monde où la rapidité, la rentabilité et la création de valeur sont
Expand All @@ -16,4 +17,4 @@ coûts, mais aussi en maximisant la valeur pour les clients.

Nous aborderons comment équilibrer ces trois axes pour délivrer des
produits de qualité qui répondent aux exigences du marché tout en
respectant les contraintes budgétaires et temporelles.
respectant les contraintes budgétaires et temporelles.
1 change: 1 addition & 0 deletions src/content/talk/deployment-as-a-service.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ title: 'Le "Deployment as a service" (DaaS) ou comment transformer son "infrastr
speakers:
- idriss-neumann
language: french
replayUrl: https://www.youtube.com/watch?v=_vBbADc-JhA
---

On va voir ensemble comment on peut utiliser Pulumi, une technologie concurrente de Terraform qui permet de faire de l'infrastructure as code avec son
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,6 @@ title: "From project to product: rethinking how IT initiatives should be funded.
speakers:
- vu-tuan-anh
language: english
replayUrl: https://youtu.be/mJbd2oPwFQg
---
This talk summarizes my 10 years of experience working on IT projects for enterprises, highlighting the shift in IT investments from a project-based approach to a product-centric model.
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ title: "We don't want to migrate to TypeScript, there is too much to learn!"
speakers:
- yoann-fleury
language: english
replayUrl: https://youtu.be/5vmA8tbyNlY
---

Switch from JavaScript to TypeScript is not that complicated when we know how to do it.
Expand Down

0 comments on commit 445ae8a

Please sign in to comment.