From 287e45a2ad8c58f7de73db9069ce89191a0156ee Mon Sep 17 00:00:00 2001 From: Ushie Date: Mon, 14 Jul 2025 14:02:19 -0900 Subject: [PATCH] fix: Set timezone to UTC for all announcements --- src/routes/announcements/[slug]/AdminButtons.svelte | 13 ++++++++++++- src/util/formatUtc.ts | 3 +++ 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 src/util/formatUtc.ts diff --git a/src/routes/announcements/[slug]/AdminButtons.svelte b/src/routes/announcements/[slug]/AdminButtons.svelte index da99fe1..941012a 100644 --- a/src/routes/announcements/[slug]/AdminButtons.svelte +++ b/src/routes/announcements/[slug]/AdminButtons.svelte @@ -16,6 +16,7 @@ import Show from 'svelte-material-icons/EyeOutline.svelte'; import Hide from 'svelte-material-icons/EyeOffOutline.svelte'; import Unarchive from 'svelte-material-icons/ArchiveArrowUpOutline.svelte'; + import { formatUTC } from '$util/formatUtc'; export let isEditing: boolean; export let isCreating: boolean; @@ -67,6 +68,11 @@ const save = async () => { if (!isValid()) return; + Object.assign(draftInputs, { + created_at: formatUTC(draftInputs.created_at), + archived_at: formatUTC(draftInputs.archived_at) + }); + await admin.update_announcement(announcementIdNumber!, sanitize(draftInputs)); await $query?.refetch(); @@ -76,8 +82,13 @@ const createAnnouncement = async () => { if (!isValid()) return; + Object.assign(draftInputs, { + created_at: formatUTC(draftInputs.created_at), + archived_at: formatUTC(draftInputs.archived_at) + }); + await admin.create_announcement(sanitize(draftInputs)); - await client.invalidateQueries(queries['announcements']()); + await client.invalidateQueries(queries.announcements()); goto('/announcements', { invalidateAll: true }); }; diff --git a/src/util/formatUtc.ts b/src/util/formatUtc.ts new file mode 100644 index 0000000..624ef21 --- /dev/null +++ b/src/util/formatUtc.ts @@ -0,0 +1,3 @@ +import moment from 'moment'; + +export const formatUTC = (d: any) => d && moment(d).utc().format('YYYY-MM-DDTHH:mm[Z]');