From 3b039c019d2616bb4f26083b33d56204d3f74876 Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 10 Dec 2025 21:50:34 +0000 Subject: [PATCH] Kalender Edition: Verbesserte portable Version mit Schnelleingabe MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Neue kalenderbasierte Tagesansicht mit Navigation - Erweiterte Feiertagsdaten 2024-2030 (statt nur 2025-2026) - Feiertagnamen werden jetzt angezeigt (z.B. "Karfreitag") - Korrektes Variante-2-Streng Regelwerk dokumentiert - Unterscheidung zwischen Feiertag, Vortag, Fr/Sa/So - XSS-Schutz durch Input-Sanitization - Verbesserte UI mit Pfeiltasten-Navigation - Besseres Export-Format mit Versionierung - Abwärtskompatibilität beim Import alter Daten --- Dienstplan_Portable.html | 2076 ++++++++++++++++---------------------- 1 file changed, 875 insertions(+), 1201 deletions(-) diff --git a/Dienstplan_Portable.html b/Dienstplan_Portable.html index 0eadb34..77418ed 100644 --- a/Dienstplan_Portable.html +++ b/Dienstplan_Portable.html @@ -3,551 +3,350 @@ - Dienstplan NRW - Bonus-Berechnung + Dienstplan NRW - Kalender Edition -
-
-

Dienstplan NRW

-

Bonus-Berechnung nach Variante 2 (streng)

-
-
-
-
1
- Mitarbeiter -
-
-
-
2
- Dienste -
-
-
-
3
- Ergebnis -
+
+
+

Dienstplan NRW

+
Variante 2 (Streng) - Kalender Edition
+
+ +
+
+ +
-
- -
-

Schritt 1: Mitarbeiter eingeben

-

Geben Sie alle Mitarbeiter ein, die in diesem Monat Dienste haben.

- -
-
- - -
-
- - -
-
- -
- -
- - -
-
- -
- -
-

Hinweis

-

Sie konnen Mitarbeiter jederzeit hinzufugen oder entfernen. Die Daten werden lokal im Browser gespeichert.

-
- - -
- - -
-

Schritt 2: Dienste eintragen

-

Tragen Sie die Dienste fur ein.

- -
-

Neuen Dienst hinzufugen

-
-
- - -
-
- - -
-
- - -
-
- -
-
-
- -

Kalenderubersicht

-
-
-
-
- WE-Tag (Bonus-Tag) -
-
-
- Dienst eingetragen -
-
- -
-

Eingetragene Dienste (0)

-
-
- - -
- - -
-

Schritt 3: Ergebnis

-

Bonus-Berechnung für

- -
- - -
+
+ + +
- +
+
- - if (savedEmployees) employees = JSON.parse(savedEmployees); - if (savedDuties) duties = JSON.parse(savedDuties); - if (savedMonth !== null) selectedMonth = parseInt(savedMonth); - if (savedYear !== null) selectedYear = parseInt(savedYear); - } catch (e) { - console.log('Laden nicht moglich:', e); - } - } - - // Enter key for employee input - document.addEventListener('DOMContentLoaded', () => { - init(); - document.getElementById('employeeName').addEventListener('keypress', (e) => { - if (e.key === 'Enter') addEmployee(); - }); - }); -