diff --git a/frontend/src/lib/dashboard/eventList/EListDisplaySettings.svelte b/frontend/src/lib/dashboard/eventList/EListDisplaySettings.svelte index ab25a4b..da68379 100644 --- a/frontend/src/lib/dashboard/eventList/EListDisplaySettings.svelte +++ b/frontend/src/lib/dashboard/eventList/EListDisplaySettings.svelte @@ -1,5 +1,6 @@ -
+
{event.name}
+ {#if displaySettings.displayStyle === "expanded" && event.featured} + FEATURED EVENT + {/if} + {#if displaySettings.showEventName}

{event.name}

{/if}
-

+

+ {#if displaySettings.displayStyle === "expanded"} + + {/if} + +

{#if event.description && displaySettings.showEventDescription} -

{event.description}

+

{event.description}

{/if} {#if event.registrationURL && displaySettings.showEventRegistration} -
- +
+ {/if}
@@ -59,9 +82,16 @@ grid-template-areas: "image" "content"; + background-color: #ffffff; + } + + .card.expanded { + background-color: #f3f3f4; + border: none; + border-radius: 20px; } - @media screen and (min-width: 600px) { + @media screen and (min-width: 850px) { .card { grid-template-columns: 61fr 39fr; grid-template-rows: 1fr; @@ -107,13 +137,46 @@ row-gap: 3px; min-width: 0; min-height: 0; - background-color: #ffffff; } - .event-description { + .card.expanded .content-parent { + padding: 30px; + align-items: flex-start; + } + + .card.expanded h2 { + font-weight: bold; + } + + .card:not(.expanded) .event-description { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; + text-align: center; + } + + .event-description { width: 100%; } + + .buttonparentexpanded { + margin-top: 20px; + display: flex; + gap: 10px; + } + + :global(.buttonexpanded) { + background-color: #000000; + border-radius: 10px; + font-weight: bold; + width: 150px; + height: 40px; + letter-spacing: 0.15ch; + } + + :global(.sharebuttonexpanded) { + border-radius: 100%; + height: 40px; + width: 40px; + } \ No newline at end of file diff --git a/frontend/src/lib/utils.ts b/frontend/src/lib/utils.ts index d93df72..e5bb433 100644 --- a/frontend/src/lib/utils.ts +++ b/frontend/src/lib/utils.ts @@ -138,6 +138,7 @@ export type ImageFeedCustomizations = { } export type ImageListCustomizations = { + displayStyle: "minimal" | "expanded", showEventName: boolean, showEventDescription: boolean, showEventRegistration: boolean, @@ -146,6 +147,7 @@ export type ImageListCustomizations = { } export const defaultImageListCustomizations: ImageListCustomizations = { + displayStyle: "minimal", showEventName: true, showEventDescription: true, showEventRegistration: true, diff --git a/frontend/src/routes/(mainWebsite)/dashboard/event-lists/eventListActions.remote.ts b/frontend/src/routes/(mainWebsite)/dashboard/event-lists/eventListActions.remote.ts index fa8434a..efe132a 100644 --- a/frontend/src/routes/(mainWebsite)/dashboard/event-lists/eventListActions.remote.ts +++ b/frontend/src/routes/(mainWebsite)/dashboard/event-lists/eventListActions.remote.ts @@ -67,13 +67,14 @@ const UpdateEventListSchema = v.object({ description: v.string(), avatarLink: v.optional(v.string()), newAvatar: v.optional(v.any()), - displaySettings: v.optional(v.object({ + displaySettings: v.object({ + displayStyle: v.picklist(["minimal", "expanded"]), showEventName: v.optional(v.boolean(), false), showEventDescription: v.optional(v.boolean(), false), showEventRegistration: v.optional(v.boolean(), false), showUpcomingEventsTextAndDesc: v.optional(v.boolean(), false), setTransparentBackground: v.optional(v.boolean(), false) - }), undefined), + }), filters: v.optional(v.object({ onlyShowFeatured: v.optional(v.boolean(), false), hideUnpublished: v.optional(v.boolean(), false), @@ -94,13 +95,7 @@ export const updateEventListForm = form(UpdateEventListSchema, async (updatedELi let data: Partial = { "name": updatedEList.name, "description": updatedEList.description, - "displaySettings": updatedEList.displaySettings ? updatedEList.displaySettings : { - "showEventName": false, - "showEventDescription": false, - "showEventRegistration": false, - "showUpcomingEventsTextAndDesc": false, - "setTransparentBackground": false - }, + "displaySettings": updatedEList.displaySettings, "filters": updatedEList.filters ? updatedEList.filters : { "hideUnpublished": false, "onlyShowFeatured": false, diff --git a/frontend/src/routes/elist/[slug]/+page.svelte b/frontend/src/routes/elist/[slug]/+page.svelte index 8af8329..43287fb 100644 --- a/frontend/src/routes/elist/[slug]/+page.svelte +++ b/frontend/src/routes/elist/[slug]/+page.svelte @@ -54,7 +54,7 @@
-
+
{#if displaySettings.showUpcomingEventsTextAndDesc}

Upcoming Events

diff --git a/frontend/src/routes/elistPreview/[slug]/+page.svelte b/frontend/src/routes/elistPreview/[slug]/+page.svelte index 43344eb..24e16d8 100644 --- a/frontend/src/routes/elistPreview/[slug]/+page.svelte +++ b/frontend/src/routes/elistPreview/[slug]/+page.svelte @@ -67,7 +67,7 @@
-
+
{#if displaySettings.showUpcomingEventsTextAndDesc}

Upcoming Events