Reporting and TZ updates

This commit is contained in:
2026-06-28 07:37:41 -04:00
parent 5e12561fb2
commit c2e4d2adeb
18 changed files with 719 additions and 268 deletions
+11 -19
View File
@@ -508,7 +508,7 @@
}
// Sort by call_dt most recent
overflights.sort((a, b) => new Date(b.call_dt) - new Date(a.call_dt));
overflights.sort((a, b) => parseUtcDate(b.call_dt) - parseUtcDate(a.call_dt));
tbody.innerHTML = '';
@@ -625,7 +625,7 @@
departed.sort((a, b) => {
const aTime = a.departed_dt;
const bTime = b.departed_dt;
return new Date(aTime) - new Date(bTime);
return parseUtcDate(aTime) - parseUtcDate(bTime);
});
tbody.innerHTML = '';
@@ -730,7 +730,7 @@
parked.sort((a, b) => {
if (!a.landed_dt) return 1;
if (!b.landed_dt) return -1;
return new Date(a.landed_dt) - new Date(b.landed_dt);
return parseUtcDate(a.landed_dt) - parseUtcDate(b.landed_dt);
});
tbody.innerHTML = '';
@@ -763,16 +763,14 @@
arrivedDisplay = formatTimeOnly(ppr.landed_dt);
} else {
// Not today - show date (DD/MM)
const date = new Date(ppr.landed_dt);
arrivedDisplay = date.toLocaleDateString('en-GB', { day: '2-digit', month: '2-digit' });
arrivedDisplay = formatUtcDayMonth(ppr.landed_dt);
}
}
// Format ETD as just the date (DD/MM)
let etdDisplay = '-';
if (ppr.etd) {
const etdDate = new Date(ppr.etd);
etdDisplay = etdDate.toLocaleDateString('en-GB', { day: '2-digit', month: '2-digit' });
etdDisplay = formatUtcDayMonth(ppr.etd);
}
row.innerHTML = `
@@ -834,7 +832,7 @@
}
// Sort by ETA date and time
upcoming.sort((a, b) => new Date(a.eta) - new Date(b.eta));
upcoming.sort((a, b) => parseUtcDate(a.eta) - parseUtcDate(b.eta));
tbody.innerHTML = '';
// Don't auto-expand, keep collapsed by default
@@ -845,10 +843,7 @@
row.style.cssText = 'font-size: 0.85rem !important;';
// Format date as Day DD/MM (e.g., Wed 11/12)
const etaDate = new Date(ppr.eta);
const dayName = etaDate.toLocaleDateString('en-GB', { weekday: 'short' });
const dateStr = etaDate.toLocaleDateString('en-GB', { day: '2-digit', month: '2-digit' });
const dateDisplay = `${dayName} ${dateStr}`;
const dateDisplay = formatUtcWeekdayDayMonth(ppr.eta);
// Create notes indicator if notes exist
const notesIndicator = ppr.notes && ppr.notes.trim() ?
@@ -930,7 +925,7 @@
const bTime = b.eta || b.departure_dt;
if (!aTime) return 1;
if (!bTime) return -1;
return new Date(aTime) - new Date(bTime);
return parseUtcDate(aTime) - parseUtcDate(bTime);
});
tbody.innerHTML = '';
document.getElementById('arrivals-table-content').style.display = 'block';
@@ -975,7 +970,7 @@
let departureTime = flight.departed_dt || flight.etd;
let etaTime = departureTime;
if (departureTime && flight.duration) {
const departTime = new Date(departureTime);
const departTime = parseUtcDate(departureTime);
etaTime = new Date(departTime.getTime() + flight.duration * 60000).toISOString(); // duration is in minutes
}
eta = etaTime ? formatTimeOnly(etaTime) : '-';
@@ -1126,7 +1121,7 @@
const bTime = b.etd || b.created_dt;
if (!aTime) return 1;
if (!bTime) return -1;
return new Date(aTime) - new Date(bTime);
return parseUtcDate(aTime) - parseUtcDate(bTime);
});
tbody.innerHTML = '';
document.getElementById('departures-table-content').style.display = 'block';
@@ -1359,10 +1354,7 @@
}
function getLocalDateString(date = new Date()) {
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
return `${year}-${month}-${day}`;
return date.toISOString().split('T')[0];
}
function isTodayDateTime(value) {