From 8587406fdd012fe2524970bbb9d2d04dbed059f1 Mon Sep 17 00:00:00 2001 From: ankurjuneja Date: Wed, 22 Jul 2026 17:51:08 -0700 Subject: [PATCH 1/7] fix intrument test --- webapp/TargetedMS/js/scheduler.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/webapp/TargetedMS/js/scheduler.js b/webapp/TargetedMS/js/scheduler.js index f289542e2..973255633 100644 --- a/webapp/TargetedMS/js/scheduler.js +++ b/webapp/TargetedMS/js/scheduler.js @@ -385,6 +385,11 @@ $(function() { }); + // datetime-local inputs require a 'T' separator; the container format uses a space, which Firefox (unlike Chrome) rejects. + function toDateTimeLocalValue(date) { + return DateFormat.format.date(date, LABKEY.container.formats.dateTimeFormat).replace(' ', 'T'); + } + function editEvent(event) { let startDate = event.startDate; let endDate = event.endDate; @@ -396,8 +401,8 @@ $(function() { endDate.setDate(endDate.getDate() - 1); } - let startDateFormatted = DateFormat.format.date(startDate, LABKEY.container.formats.dateTimeFormat); - let endDateFormatted = DateFormat.format.date(endDate, LABKEY.container.formats.dateTimeFormat); + let startDateFormatted = toDateTimeLocalValue(startDate); + let endDateFormatted = toDateTimeLocalValue(endDate); // remove the old event log rows removeEventLog(); From 610c756a3542a420c9bfea604500d056aa7c5df2 Mon Sep 17 00:00:00 2001 From: ankurjuneja Date: Thu, 23 Jul 2026 13:08:04 -0700 Subject: [PATCH 2/7] fix intrument test --- webapp/TargetedMS/js/scheduler.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/webapp/TargetedMS/js/scheduler.js b/webapp/TargetedMS/js/scheduler.js index 973255633..0366078e0 100644 --- a/webapp/TargetedMS/js/scheduler.js +++ b/webapp/TargetedMS/js/scheduler.js @@ -385,9 +385,9 @@ $(function() { }); - // datetime-local inputs require a 'T' separator; the container format uses a space, which Firefox (unlike Chrome) rejects. + // datetime-local values use the fixed HTML format 'yyyy-MM-ddTHH:mm', independent of the container's display format; Firefox (unlike Chrome) rejects anything else. function toDateTimeLocalValue(date) { - return DateFormat.format.date(date, LABKEY.container.formats.dateTimeFormat).replace(' ', 'T'); + return DateFormat.format.date(date, 'yyyy-MM-dd') + 'T' + DateFormat.format.date(date, 'HH:mm'); } function editEvent(event) { From 3855e70c9dedca893d7fd30fbb6242ad0fd01e57 Mon Sep 17 00:00:00 2001 From: ankurjuneja Date: Fri, 24 Jul 2026 10:55:24 -0700 Subject: [PATCH 3/7] fix intrument test --- webapp/TargetedMS/js/scheduler.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/webapp/TargetedMS/js/scheduler.js b/webapp/TargetedMS/js/scheduler.js index 0366078e0..7297c3732 100644 --- a/webapp/TargetedMS/js/scheduler.js +++ b/webapp/TargetedMS/js/scheduler.js @@ -153,6 +153,7 @@ $(function() { editEvent({ startDate: arg.start, endDate: arg.end, + allDay: arg.allDay, id: null, name: '', notes: '' @@ -394,7 +395,8 @@ $(function() { let startDate = event.startDate; let endDate = event.endDate; - if (!event.id && startDate.getHours() === 0 && startDate.getMinutes() === 0 && endDate.getHours() === 0 && endDate.getMinutes() === 0) { + // Rely on FullCalendar's allDay flag rather than checking for midnight, which shifts with the browser's timezone + if (!event.id && event.allDay) { // Default to starting at 8AM and ending at 5PM startDate.setHours(8); endDate.setHours(17); From bbc25726eeb157b96744b471909d2f618997d9e8 Mon Sep 17 00:00:00 2001 From: ankurjuneja Date: Sat, 25 Jul 2026 12:37:00 -0700 Subject: [PATCH 4/7] TZDEBUG: log FullCalendar select/eventClick date values --- webapp/TargetedMS/js/scheduler.js | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/webapp/TargetedMS/js/scheduler.js b/webapp/TargetedMS/js/scheduler.js index 7297c3732..0474ca43b 100644 --- a/webapp/TargetedMS/js/scheduler.js +++ b/webapp/TargetedMS/js/scheduler.js @@ -150,6 +150,18 @@ $(function() { }, 200); // Add a delay to allow for hover on the popover }, select: function(arg) { + console.warn('TZDEBUG select ' + JSON.stringify({ + tz: Intl.DateTimeFormat().resolvedOptions().timeZone, + offsetMin: arg.start ? arg.start.getTimezoneOffset() : null, + allDay: arg.allDay, + startStr: arg.startStr, + endStr: arg.endStr, + start: String(arg.start), + end: String(arg.end), + startMs: arg.start ? arg.start.getTime() : null, + endMs: arg.end ? arg.end.getTime() : null, + sameRef: arg.start === arg.end + })); editEvent({ startDate: arg.start, endDate: arg.end, @@ -161,6 +173,14 @@ $(function() { calendar.unselect() }, eventClick: function(arg) { + console.warn('TZDEBUG eventClick ' + JSON.stringify({ + id: arg.event.id, + allDay: arg.event.allDay, + startStr: arg.event.startStr, + endStr: arg.event.endStr, + start: String(arg.event.start), + end: String(arg.event.end) + })); editEvent({ startDate: arg.event.start, endDate: arg.event.end, @@ -406,6 +426,17 @@ $(function() { let startDateFormatted = toDateTimeLocalValue(startDate); let endDateFormatted = toDateTimeLocalValue(endDate); + console.warn('TZDEBUG editEvent ' + JSON.stringify({ + id: event.id, + allDay: event.allDay, + blockRan: !event.id && !!event.allDay, + startAfter: String(startDate), + endAfter: String(endDate), + startFormatted: startDateFormatted, + endFormatted: endDateFormatted, + dateTimeFormat: (window.LABKEY && LABKEY.container && LABKEY.container.formats) ? LABKEY.container.formats.dateTimeFormat : null + })); + // remove the old event log rows removeEventLog(); From afc65d37a1fa0d2bf9cb6366dc50bb495fe1c720 Mon Sep 17 00:00:00 2001 From: ankurjuneja Date: Sat, 25 Jul 2026 19:19:52 -0700 Subject: [PATCH 5/7] Revert "TZDEBUG: log FullCalendar select/eventClick date values" This reverts commit bbc25726eeb157b96744b471909d2f618997d9e8. --- webapp/TargetedMS/js/scheduler.js | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/webapp/TargetedMS/js/scheduler.js b/webapp/TargetedMS/js/scheduler.js index 0474ca43b..7297c3732 100644 --- a/webapp/TargetedMS/js/scheduler.js +++ b/webapp/TargetedMS/js/scheduler.js @@ -150,18 +150,6 @@ $(function() { }, 200); // Add a delay to allow for hover on the popover }, select: function(arg) { - console.warn('TZDEBUG select ' + JSON.stringify({ - tz: Intl.DateTimeFormat().resolvedOptions().timeZone, - offsetMin: arg.start ? arg.start.getTimezoneOffset() : null, - allDay: arg.allDay, - startStr: arg.startStr, - endStr: arg.endStr, - start: String(arg.start), - end: String(arg.end), - startMs: arg.start ? arg.start.getTime() : null, - endMs: arg.end ? arg.end.getTime() : null, - sameRef: arg.start === arg.end - })); editEvent({ startDate: arg.start, endDate: arg.end, @@ -173,14 +161,6 @@ $(function() { calendar.unselect() }, eventClick: function(arg) { - console.warn('TZDEBUG eventClick ' + JSON.stringify({ - id: arg.event.id, - allDay: arg.event.allDay, - startStr: arg.event.startStr, - endStr: arg.event.endStr, - start: String(arg.event.start), - end: String(arg.event.end) - })); editEvent({ startDate: arg.event.start, endDate: arg.event.end, @@ -426,17 +406,6 @@ $(function() { let startDateFormatted = toDateTimeLocalValue(startDate); let endDateFormatted = toDateTimeLocalValue(endDate); - console.warn('TZDEBUG editEvent ' + JSON.stringify({ - id: event.id, - allDay: event.allDay, - blockRan: !event.id && !!event.allDay, - startAfter: String(startDate), - endAfter: String(endDate), - startFormatted: startDateFormatted, - endFormatted: endDateFormatted, - dateTimeFormat: (window.LABKEY && LABKEY.container && LABKEY.container.formats) ? LABKEY.container.formats.dateTimeFormat : null - })); - // remove the old event log rows removeEventLog(); From 36ab535576e072a9d1a6b312ac6f0e6d27de9dc8 Mon Sep 17 00:00:00 2001 From: ankurjuneja Date: Sat, 25 Jul 2026 19:25:08 -0700 Subject: [PATCH 6/7] TZDEBUG: surface FullCalendar date values in modal DOM --- resources/views/scheduleInstrument.html | 3 +++ webapp/TargetedMS/js/scheduler.js | 11 +++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/resources/views/scheduleInstrument.html b/resources/views/scheduleInstrument.html index fcfd9e7c0..74b6ed410 100644 --- a/resources/views/scheduleInstrument.html +++ b/resources/views/scheduleInstrument.html @@ -89,6 +89,9 @@
+
+
+