diff --git a/public/css/style.css b/public/css/style.css index 8e0863a..28b4fa1 100644 --- a/public/css/style.css +++ b/public/css/style.css @@ -388,9 +388,12 @@ table input[type="text"] { } .summary-item { - display: flex; - justify-content: space-between; font-size: 18px; + margin-bottom: 10px; +} + +.summary-item strong { + margin-right: 5px; } /* Actions */ @@ -410,6 +413,13 @@ table input[type="text"] { padding: 30px; border-radius: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.1); + width: 100%; +} + +/* Admin Container - volle Breite */ +.admin-container .container { + max-width: 100%; + padding: 20px; } .add-user-form { diff --git a/public/js/dashboard.js b/public/js/dashboard.js index 05dd25e..408d890 100644 --- a/public/js/dashboard.js +++ b/public/js/dashboard.js @@ -61,9 +61,6 @@ document.addEventListener('DOMContentLoaded', async function() { console.warn('Konnte letzte Woche nicht vom Server laden:', error); } - // Statistiken laden - loadUserStats(); - // Ping-IP laden loadPingIP(); @@ -495,16 +492,6 @@ function renderWeek() { } }); - // Überstunden-Anzeige erstellen (falls noch nicht vorhanden) - let overtimeDisplay = document.getElementById('overtimeDisplay'); - if (!overtimeDisplay) { - const summaryDiv = document.querySelector('.summary'); - overtimeDisplay = document.createElement('div'); - overtimeDisplay.id = 'overtimeDisplay'; - overtimeDisplay.className = 'summary-item'; - summaryDiv.appendChild(overtimeDisplay); - } - // Überstunden-Berechnung aufrufen updateOvertimeDisplay(); @@ -609,17 +596,15 @@ function updateOvertimeDisplay() { // Überstunden = (Tatsächliche Stunden + Urlaubsstunden) - Sollstunden const totalHoursWithVacation = totalHours + vacationHours; const overtimeHours = totalHoursWithVacation - sollStunden; - const remainingOvertime = overtimeHours - overtimeTaken; // Überstunden-Anzeige aktualisieren - const overtimeDisplay = document.getElementById('overtimeDisplay'); - if (overtimeDisplay) { - overtimeDisplay.innerHTML = ` - Überstunden diese Woche: - ${overtimeHours.toFixed(2)} h - ${overtimeTaken > 0 ? `
Davon genommen: ${overtimeTaken.toFixed(2)} h` : ''} - ${remainingOvertime !== overtimeHours ? `
Verbleibend: ${remainingOvertime.toFixed(2)} h` : ''} - `; + const overtimeSummaryItem = document.getElementById('overtimeSummaryItem'); + const overtimeHoursSpan = document.getElementById('overtimeHours'); + if (overtimeSummaryItem && overtimeHoursSpan) { + overtimeSummaryItem.style.display = 'block'; + const sign = overtimeHours >= 0 ? '+' : ''; + overtimeHoursSpan.textContent = `${sign}${overtimeHours.toFixed(2)} h`; + overtimeHoursSpan.style.color = overtimeHours >= 0 ? '#27ae60' : '#e74c3c'; } } @@ -1187,7 +1172,7 @@ async function submitWeekWithReason(versionReason) { const versionText = result.version ? ` (Version ${result.version})` : ''; alert(`Stundenzettel wurde erfolgreich eingereicht${versionText}!`); loadWeek(); // Neu laden um Status zu aktualisieren - loadUserStats(); // Statistiken aktualisieren + // Statistiken werden durch updateOvertimeDisplay() aktualisiert } else { console.error('Fehler-Details:', result); alert(result.error || 'Fehler beim Einreichen des Stundenzettels'); diff --git a/views/admin.ejs b/views/admin.ejs index 1ea9144..8f541ca 100644 --- a/views/admin.ejs +++ b/views/admin.ejs @@ -25,8 +25,9 @@ -
-
+
+
+

Benutzerverwaltung

@@ -112,9 +113,9 @@
-