diff --git a/WEBROOT/services/zeiterfassung.php b/WEBROOT/services/zeiterfassung.php index b8ec170..478d257 100644 --- a/WEBROOT/services/zeiterfassung.php +++ b/WEBROOT/services/zeiterfassung.php @@ -12,59 +12,23 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['add_overtime'])) { $conn->query($insert_sql); } -// --- Daten laden --- -$daten = []; -$sql = "SELECT `DATUM`, `PROZESS_1`, `PROZESS_2`, `PROZESS_3`, `PROZESS_4`, `BEGINN`, `ENDE_REAL`, `OVERTIME` FROM Firmenberichte ORDER BY `DATUM` DESC"; -if ($erg = $conn->query($sql)) { - while ($datensatz = $erg->fetch_object()) { $daten[] = $datensatz; } - $erg->free(); -} - // --- Gesamtsumme berechnen --- $minuten_berichte = 0; $res1 = $conn->query("SELECT SUM(OVERTIME) AS summe FROM Firmenberichte"); if ($row = $res1->fetch_object()) { $minuten_berichte = intval($row->summe); } -$minuten_extra = 0; -$res2 = $conn->query("SELECT SUM(MINUTEN) AS summe FROM Ueberstunden"); -if ($row = $res2->fetch_object()) { $minuten_extra = intval($row->summe); } +$minuten_abbau = 0; +$res2 = $conn->query("SELECT SUM(MINUTEN) AS summe FROM Ueberstunden WHERE GRUND = 'Abbau'"); +if ($row = $res2->fetch_object()) { $minuten_abbau = intval($row->summe); } -$gesamt_minuten = $minuten_berichte - $minuten_extra; +$minuten_aufbau = 0; +$res2 = $conn->query("SELECT SUM(MINUTEN) AS summe FROM Ueberstunden WHERE GRUND = 'Aufbau'"); +if ($row = $res2->fetch_object()) { $minuten_aufbau = intval($row->summe); } + +$gesamt_minuten = $minuten_berichte - $minuten_abbau + $minuten_aufbau; ?>
\ No newline at end of file diff --git a/WEBROOT/style.css b/WEBROOT/style.css index 062dc7c..e2e8a2c 100644 --- a/WEBROOT/style.css +++ b/WEBROOT/style.css @@ -1043,4 +1043,31 @@ body.dark-mode .db-table tr:nth-child(even) { body.dark-mode .sidebar::-webkit-scrollbar-thumb, body.dark-mode .content::-webkit-scrollbar-thumb { background: #444; +} + +.form-group { + display: flex; + flex-direction: column; + gap: 5px; + flex-grow: 1; +} + +.form-group label { + font-size: 0.85rem; + font-weight: 600; + color: var(--text); +} + +/* Optional: schöner Dropdown Pfeil */ +select { + appearance: none; + background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg fill='%23666' height='20' viewBox='0 0 20 20' width='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 7l5 5 5-5z'/%3E%3C/svg%3E"); + background-repeat: no-repeat; + background-position: right 10px center; + background-size: 16px; +} + +/* Dark Mode Pfeil */ +body.dark-mode select { + background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg fill='%23ccc' height='20' viewBox='0 0 20 20' width='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 7l5 5 5-5z'/%3E%3C/svg%3E"); } \ No newline at end of file