From fe293cf6753cd66f4eed712479043252652a245b Mon Sep 17 00:00:00 2001 From: Fuwn Date: Sat, 17 Feb 2024 20:33:20 -0800 Subject: feat(events): all events page --- src/lib/Events/Event.svelte | 63 ++++++++++++++++++++++++++ src/routes/api/events/+server.ts | 8 +++- src/routes/events/+page.svelte | 26 +++++++++++ src/routes/events/group/[group]/+page.svelte | 67 ++-------------------------- 4 files changed, 99 insertions(+), 65 deletions(-) create mode 100644 src/lib/Events/Event.svelte create mode 100644 src/routes/events/+page.svelte (limited to 'src') diff --git a/src/lib/Events/Event.svelte b/src/lib/Events/Event.svelte new file mode 100644 index 00000000..986db071 --- /dev/null +++ b/src/lib/Events/Event.svelte @@ -0,0 +1,63 @@ + + + +
+ {#if event} + + {/if} + +
+
+

+ + {event.title} + +
+ {$locale().dateFormatter(new Date(event.created_at))} +

+ +

{event.description}

+
+
+
+ + + diff --git a/src/routes/api/events/+server.ts b/src/routes/api/events/+server.ts index 987eecae..65347874 100644 --- a/src/routes/api/events/+server.ts +++ b/src/routes/api/events/+server.ts @@ -1,4 +1,8 @@ -import { getGroupEvents } from '$lib/Database/events'; +import { getEvents, getGroupEvents } from '$lib/Database/events'; export const GET = async ({ url }) => - Response.json(await getGroupEvents(url.searchParams.get('group') || '')); + Response.json( + url.searchParams.get('group') + ? await getGroupEvents(url.searchParams.get('group') || '') + : await getEvents() + ); diff --git a/src/routes/events/+page.svelte b/src/routes/events/+page.svelte new file mode 100644 index 00000000..eed87958 --- /dev/null +++ b/src/routes/events/+page.svelte @@ -0,0 +1,26 @@ + + +{#await fetch(root(`/api/events`))} + +{:then eventsResponse} + {#await eventsResponse.json()} + + {:then events} + {#if events} + {#each events as rawEvent, i} + + + {#if i < events.length - 1} +

+ {/if} + {/each} + {/if} + {:catch} + Error parsing events. + {/await} +{/await} diff --git a/src/routes/events/group/[group]/+page.svelte b/src/routes/events/group/[group]/+page.svelte index 8dd09118..ef920254 100644 --- a/src/routes/events/group/[group]/+page.svelte +++ b/src/routes/events/group/[group]/+page.svelte @@ -1,11 +1,11 @@ {#await groupsResponse} @@ -50,35 +50,7 @@ {:then events} {#if events} {#each events as rawEvent, i} - {@const event = asEvent(rawEvent)} - - -

- {#if event} - - {/if} - -
-
-

- - {event.title} - -
- {$locale().dateFormatter(new Date(event.created_at))} -

- -

{event.description}

-
-
-
- + {#if i < events.length - 1}

@@ -100,34 +72,3 @@ {:catch} Error loading group. {/await} - - -- cgit v1.2.3