This commit is contained in:
Xantin 2025-10-09 20:14:10 +08:00 committed by GitHub
commit 9a5dd41f2e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -189,9 +189,11 @@ export default class extends Controller {
const now = new Date(); const now = new Date();
const oneHourLater = new Date(now.getTime() + (60 * 60 * 1000)); const oneHourLater = new Date(now.getTime() + (60 * 60 * 1000));
// Format dates for datetime-local input const pad = (n) => n.toString().padStart(2, "0");
const formatDateTime = (date) => { const formatDateTime = (date) => {
return date.toISOString().slice(0, 16); return `${date.getFullYear()}-${pad(date.getMonth() + 1)}-${pad(
date.getDate()
)}T${pad(date.getHours())}:${pad(date.getMinutes())}`;
}; };
const startTime = formatDateTime(now); const startTime = formatDateTime(now);
@ -283,15 +285,20 @@ export default class extends Controller {
const form = event.target; const form = event.target;
const formData = new FormData(form); const formData = new FormData(form);
function localToUTCISOString(localDateTimeString) {
const local = new Date(localDateTimeString);
return local.toISOString();
};
// Get form values // Get form values
const visitData = { const visitData = {
visit: { visit: {
name: formData.get('name'), name: formData.get("name"),
started_at: formData.get('started_at'), started_at: localToUTCISOString(formData.get("started_at")),
ended_at: formData.get('ended_at'), ended_at: localToUTCISOString(formData.get("ended_at")),
latitude: formData.get('latitude'), latitude: formData.get("latitude"),
longitude: formData.get('longitude') longitude: formData.get("longitude"),
} },
}; };
// Validate that end time is after start time // Validate that end time is after start time
@ -450,4 +457,4 @@ export default class extends Controller {
} }
} }
} }
} }