From 0e1e666f42fb271a8195d57772059dfa86480b65 Mon Sep 17 00:00:00 2001 From: tree Date: Sun, 29 Jan 2023 08:42:19 +0100 Subject: [PATCH] Styles update --- src/lib/components/CalendarList.svelte | 51 ++++++++++--------- src/lib/components/CollectionList.svelte | 2 +- src/lib/components/TimelineHeatmap.svelte | 59 ++++++++++++---------- src/routes/[entry]/day/[date]/+page.svelte | 14 ++--- 4 files changed, 67 insertions(+), 59 deletions(-) diff --git a/src/lib/components/CalendarList.svelte b/src/lib/components/CalendarList.svelte index c298f5fd..e4a7acf1 100644 --- a/src/lib/components/CalendarList.svelte +++ b/src/lib/components/CalendarList.svelte @@ -11,32 +11,35 @@
{#each segments as segment} -
-
{format(new Date(segment.startTime), "HH:mm")} - {format(new Date(segment.endTime), "HH:mm")}
-
-
- - - -
-
- {#if !event} - {(segment.event || event)[event && event.shortname ? 'shortname' : 'name']} - {:else} - {event.shortname || event.name} - {/if} - {#if segment.title} - - {segment.title} +
+
{format(new Date(segment.startTime), "HH:mm")} - {format(new Date(segment.endTime), "HH:mm")}
+
+
+ + + + {#if !event} + {(segment.event || event)[event && event.shortname ? 'shortname' : 'name']} + {:else} + {event.shortname || event.name} + {/if} + {#if segment.title} + - {segment.title} + {/if} +
+
+
+ {#if segment.venues || event?.venues} + 📍 {@html ((segment.venues || event.venues).map(vId => { + const place = bundle.places.find(p => p.id === vId) + return `${place.name}` + })).join(", ")} + {:else if (segment.event?.venueName || event?.venueName)} + 📍 {(segment.event?.venueName || event?.venueName)} {/if}
-
- {#if segment.venues || event?.venues} - @ {@html ((segment.venues || event.venues).map(vId => { - const place = bundle.places.find(p => p.id === vId) - return `${place.name}` - })).join(", ")} - {:else if (segment.event?.venueName || event?.venueName)} - @ {(segment.event?.venueName || event?.venueName)} + {#if segment.ecap || event?.attendees || segment.event?.attendees } +
👥 {segment.ecap || event?.attendees || segment.event?.attendees}
{/if}
diff --git a/src/lib/components/CollectionList.svelte b/src/lib/components/CollectionList.svelte index 3fce2b74..0f4d16a4 100644 --- a/src/lib/components/CollectionList.svelte +++ b/src/lib/components/CollectionList.svelte @@ -32,7 +32,7 @@ {#if col === "event"}
{formatItemDate(item)} - {#if item.attendees}
{item.attendees}+ ppl{/if} + {#if item.attendees}
{item.attendees} ppl{/if}
{/if} {#if col === "media-partner"} diff --git a/src/lib/components/TimelineHeatmap.svelte b/src/lib/components/TimelineHeatmap.svelte index 567004cf..0c300736 100644 --- a/src/lib/components/TimelineHeatmap.svelte +++ b/src/lib/components/TimelineHeatmap.svelte @@ -3,6 +3,7 @@ import { goto } from '$app/navigation'; import ItemLogo from '$lib/components/ItemLogo.svelte'; export let data; + export let highlightDay = false; const startDate = "2023-06-02" const endDate = "2023-06-11" @@ -35,7 +36,7 @@ } } - function updateTimelineEvent(time, eventId, attendees) { + function updateTimelineEvent(time, eventId, attendees, eventSegmentId) { for (const day of days) { for (const segment of segments) { const sstart = new Date(`${day}T${segment}`) @@ -45,7 +46,7 @@ const baseScore = attendees ? (attendees > 3000 ? 3000 : (attendees < 200 ? 200 : attendees)) : 0 const target = timelineData[[day, segment].join(';')] target.score += baseScore || 0 - target.events.push(eventId) + target.events.push([eventId, eventSegmentId]) } } } @@ -53,25 +54,14 @@ const defaultTimes = "09:00-18:00" for (const event of bundle.events) { - if (event.segments) { - for (const eventSegment of event.segments) { - const [ tstart, tend ] = (eventSegment.times || defaultTimes).split('-') - const time = { - start: new Date(`${eventSegment.date}T${tstart}`), - end: new Date(`${tend <= tstart ? format(addDays(new Date(eventSegment.date),1), 'yyyy-MM-dd') : eventSegment.date}T${tend}`) - } - updateTimelineEvent(time, event.id, eventSegment.ecap || event.attendees) - } - } else { - const [ tstart, tend ] = (event.times || defaultTimes).split('-').map(t => t.trim()) - const times = [] - for (let i = 0; i < (event.days || 1); i++) { - const time = { - start: addDays(new Date(event.date + "T" + tstart), i), - end: addDays(new Date(event.date + "T" + tend), (tend < tstart ? i+1 : i)) - } - updateTimelineEvent(time, event.id, event.attendees) + for (let i = 0; i < event.segments.length; i++) { + const eventSegment = event.segments[i] + const [ tstart, tend ] = (eventSegment.times || defaultTimes).split('-') + const time = { + start: new Date(`${eventSegment.date}T${tstart}`), + end: new Date(`${tend <= tstart ? format(addDays(new Date(eventSegment.date),1), 'yyyy-MM-dd') : eventSegment.date}T${tend}`) } + updateTimelineEvent(time, event.id, eventSegment.ecap || event.attendees, i) } } @@ -116,34 +106,49 @@
{#if selectedSegment} -
+
{selectedSegment.title}
- {#each selectedSegment.data.events.map(e => eventDetail(e)) as item} + {#each selectedSegment.data.events.map(e => { return [eventDetail(e[0]), e[1]] }) as [item, segmentId]}
{item.shortname || item.name} + {#if item.segments[segmentId].title} + - {item.segments[segmentId].title} + {/if}
{/each}
{/if} -
+
{#each days as day} - -
+
{#each days as day, i} -
+
{#each segments as segment} -
+
{/each}
diff --git a/src/routes/[entry]/day/[date]/+page.svelte b/src/routes/[entry]/day/[date]/+page.svelte index 5c6fd737..abe8f39a 100644 --- a/src/routes/[entry]/day/[date]/+page.svelte +++ b/src/routes/[entry]/day/[date]/+page.svelte @@ -48,13 +48,13 @@

#PBW23.day

+ + +

{format(new Date($page.params.date), "MMMM d, yyyy - EEEE")}

+
+ +
+
- - -

{format(new Date($page.params.date), "MMMM d, yyyy - EEEE")}

-
- -
-
\ No newline at end of file