diff --git a/frontend/src/routes/adventures/[id]/+page.svelte b/frontend/src/routes/adventures/[id]/+page.svelte index 6d54d85..4d5d335 100644 --- a/frontend/src/routes/adventures/[id]/+page.svelte +++ b/frontend/src/routes/adventures/[id]/+page.svelte @@ -10,6 +10,8 @@ import DOMPurify from 'dompurify'; // @ts-ignore import toGeoJSON from '@mapbox/togeojson'; + // @ts-ignore + import { DateTime } from 'luxon'; import LightbulbOn from '~icons/mdi/lightbulb-on'; import WeatherSunset from '~icons/mdi/weather-sunset'; @@ -412,33 +414,41 @@

{#each adventure.visits as visit} -
-
-

- {#if isAllDay(visit.start_date)} - - {new Date(visit.start_date).toLocaleDateString(undefined, { - timeZone: 'UTC' - })} +

+ {#if isAllDay(visit.start_date)} +

+ All Day + {visit.start_date.split('T')[0]} – {visit.end_date.split('T')[0]} +

+ {:else} +

+ {#if visit.timezone} + + 🕓 {visit.timezone}
+ {DateTime.fromISO(visit.start_date, { zone: 'utc' }) + .setZone(visit.timezone) + .toLocaleString(DateTime.DATETIME_MED)} – + {DateTime.fromISO(visit.end_date, { zone: 'utc' }) + .setZone(visit.timezone) + .toLocaleString(DateTime.DATETIME_MED)} {:else} - - {new Date(visit.start_date).toLocaleDateString()} ({new Date( - visit.start_date - ).toLocaleTimeString()}) + + 🕓 Local Time
+ {DateTime.fromISO(visit.start_date).toLocaleString( + DateTime.DATETIME_MED + )} – + {DateTime.fromISO(visit.end_date).toLocaleString( + DateTime.DATETIME_MED + )} {/if}

- {#if visit.end_date && visit.end_date !== visit.start_date} -

- - {new Date(visit.end_date).toLocaleDateString(undefined, { - timeZone: 'UTC' - })} - {#if !isAllDay(visit.end_date)} - ({new Date(visit.end_date).toLocaleTimeString()}) - {/if} -

- {/if} -
-

{visit.notes}

+ {/if} + + {#if visit.notes} +

"{visit.notes}"

+ {/if}
{/each}
@@ -527,13 +537,29 @@ 'T' )[0]} {:else} - {new Date(visit.start_date).toLocaleString()} – {new Date( - visit.end_date - ).toLocaleString()} + + Local: + {DateTime.fromISO(visit.start_date).toLocaleString( + DateTime.DATETIME_MED + )} – + {DateTime.fromISO(visit.end_date).toLocaleString( + DateTime.DATETIME_MED + )} + {/if}

- + {#if !isAllDay(visit.start_date) && visit.timezone} +

+ {visit.timezone}: + {DateTime.fromISO(visit.start_date, { zone: 'utc' }) + .setZone(visit.timezone) + .toLocaleString(DateTime.DATETIME_MED)} – + {DateTime.fromISO(visit.end_date, { zone: 'utc' }) + .setZone(visit.timezone) + .toLocaleString(DateTime.DATETIME_MED)} +

+ {/if} {#if visit.notes}