Info display tweaks

This commit is contained in:
James Pattinson
2025-12-10 13:29:12 +00:00
parent 86f1dc65f4
commit f4b69aace0
6 changed files with 103 additions and 31 deletions

View File

@@ -454,6 +454,41 @@
console.log('Source:', window.PPR_CONFIG?.apiBase ? 'config.js' : 'fallback');
console.log('=======================');
// Track if user has manually edited ETD
let etdManuallyEdited = false;
// Function to update ETD based on ETA (2 hours later)
function updateETDFromETA() {
// Only auto-update if user hasn't manually edited ETD
if (etdManuallyEdited) {
return;
}
const etaDate = document.getElementById('eta-date').value;
const etaTime = document.getElementById('eta-time').value;
if (etaDate && etaTime) {
// Parse ETA
const eta = new Date(`${etaDate}T${etaTime}`);
// Calculate ETD (2 hours after ETA)
const etd = new Date(eta.getTime() + 2 * 60 * 60 * 1000);
// Format ETD
const etdDateStr = `${etd.getFullYear()}-${String(etd.getMonth() + 1).padStart(2, '0')}-${String(etd.getDate()).padStart(2, '0')}`;
const etdTimeStr = `${String(etd.getHours()).padStart(2, '0')}:${String(etd.getMinutes()).padStart(2, '0')}`;
// Update ETD fields
document.getElementById('etd-date').value = etdDateStr;
document.getElementById('etd-time').value = etdTimeStr;
}
}
// Function to mark ETD as manually edited
function markETDAsManuallyEdited() {
etdManuallyEdited = true;
}
// Iframe resizing functionality
function sendHeightToParent() {
const height = document.body.scrollHeight || document.documentElement.scrollHeight;
@@ -814,9 +849,9 @@
const nextHour = new Date(now);
nextHour.setHours(now.getHours() + 1, 0, 0, 0);
// ETD is 1 hour after ETA
// ETD is 2 hours after ETA
const etd = new Date(nextHour);
etd.setHours(nextHour.getHours() + 1);
etd.setHours(nextHour.getHours() + 2);
// Format date and time for separate inputs
function formatDate(date) {
@@ -845,6 +880,14 @@
document.addEventListener('DOMContentLoaded', function() {
initializeTimeDropdowns();
setDefaultDateTime();
// Add event listeners to ETA fields to auto-update ETD
document.getElementById('eta-date').addEventListener('change', updateETDFromETA);
document.getElementById('eta-time').addEventListener('change', updateETDFromETA);
// Add event listeners to ETD fields to mark as manually edited
document.getElementById('etd-date').addEventListener('change', markETDAsManuallyEdited);
document.getElementById('etd-time').addEventListener('change', markETDAsManuallyEdited);
});
</script>
</body>