From df8da5254da7361cd01309dfa7e4bd88ea5baff0 Mon Sep 17 00:00:00 2001 From: mashehu Date: Wed, 20 Sep 2023 14:28:08 +0200 Subject: [PATCH] try to run the time conversion in browser --- .../event/EventBannerElement.svelte | 81 ++++++++++--------- 1 file changed, 44 insertions(+), 37 deletions(-) diff --git a/src/components/event/EventBannerElement.svelte b/src/components/event/EventBannerElement.svelte index 7adec35ee0..f1038cb884 100644 --- a/src/components/event/EventBannerElement.svelte +++ b/src/components/event/EventBannerElement.svelte @@ -3,6 +3,7 @@ import { formatDistanceToNow, set } from 'date-fns'; import ExportEventButton from '@components/event/ExportEventButton.svelte'; import VideoButton from '@components/VideoButton.svelte'; + import { onMount } from 'svelte'; export let events = []; export let event_time_category: string = ''; @@ -15,42 +16,6 @@ if (event.data.title.toLowerCase().match('bytesize')) { event.data.type = 'bytesize'; } - if (event.data.start_date === event.data.end_date) { - event.data.duration = - event.data.start.toLocaleString('en-US', { - year: 'numeric', - month: 'short', - day: 'numeric', - hour: 'numeric', - minute: 'numeric', - hour12: false, - }) + - '-' + - event.data.end.toLocaleString('en-US', { - hour: 'numeric', - minute: 'numeric', - hour12: false, - }); - } else { - event.data.duration = - event.data.start.toLocaleString('en-US', { - year: 'numeric', - month: 'short', - day: 'numeric', - hour: 'numeric', - minute: 'numeric', - hour12: false, - }) + - ' - ' + - event.data.end.toLocaleString('en-US', { - year: 'numeric', - month: 'short', - day: 'numeric', - hour: 'numeric', - minute: 'numeric', - hour12: false, - }); - } }) .sort((a, b) => { return new Date(a.data.start) - new Date(b.data.start); @@ -98,7 +63,49 @@ EventIsOngoing.set(false); } } - + onMount(() => { + events.map((event) => { + $: event_duration(event); + }); + }); + $: event_duration = (event) => { + if (event.data.start_date === event.data.end_date) { + event.data.duration = + event.data.start.toLocaleString('en-US', { + year: 'numeric', + month: 'short', + day: 'numeric', + hour: 'numeric', + minute: 'numeric', + hour12: false, + }) + + '-' + + event.data.end.toLocaleString('en-US', { + hour: 'numeric', + minute: 'numeric', + hour12: false, + }); + } else { + event.data.duration = + event.data.start.toLocaleString('en-US', { + year: 'numeric', + month: 'short', + day: 'numeric', + hour: 'numeric', + minute: 'numeric', + hour12: false, + }) + + ' - ' + + event.data.end.toLocaleString('en-US', { + year: 'numeric', + month: 'short', + day: 'numeric', + hour: 'numeric', + minute: 'numeric', + hour12: false, + }); + } + }; let heading_title = event_time_category.charAt(0).toUpperCase() + event_time_category.slice(1) + ' event'; heading_title = events.length > 1 ? heading_title + 's' : heading_title;