Files
flask-webservice/app/static/js/max_time_diff.js
T
2024-11-29 14:00:20 +01:00

44 lines
1.9 KiB
JavaScript

document.getElementById('calculateButton').addEventListener('click', () => {
const startDate = document.getElementById('startDate').value;
const endDate = document.getElementById('endDate').value;
const startTime = document.getElementById('startTime').value || '00:00';
const endTime = document.getElementById('endTime').value || '23:59';
if (!startDate || !endDate) {
alert('Bitte sowohl Start- als auch End-Datum auswählen!');
return;
}
fetch(`/max_time_diff?start_date=${startDate}&end_date=${endDate}&start_time=${startTime}&end_time=${endTime}`)
.then(response => {
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
return response.json();
})
.then(data => {
console.log('Max-Diff-Daten:', data);
const resultElement = document.getElementById('maxTimeDiff');
if (data.error) {
resultElement.textContent = `Fehler: ${data.error}`;
} else if (data.max_time_diff_seconds !== undefined) {
const maxDiff = data.max_time_diff_seconds;
const hours = Math.floor(maxDiff / 3600);
const minutes = Math.floor((maxDiff % 3600) / 60);
const seconds = maxDiff % 60;
const startTime = data.start_time;
const endTime = data.end_time;
resultElement.textContent = `Maximale Zeitdifferenz: ${hours}h ${minutes}m ${seconds}s zwischen ${startTime} und ${endTime}`;
} else {
resultElement.textContent = 'Keine Daten verfügbar.';
}
})
.catch(err => {
console.error('Fehler bei der Max-Diff-Anfrage:', err);
document.getElementById('maxTimeDiff').textContent = 'Fehler beim Abrufen der Daten.';
});
});