UI-Redesign: AegisSight Design, Filter-Popover, Header-Umbau

- Session-Timeout auf 60 Minuten erhöht (ACCESS_TOKEN_EXPIRY + SESSION_TIMEOUT)
- AegisSight Light Theme: Gold-Akzent (#C8A851) statt Indigo
- Navigation-Tabs in eigene Zeile unter Header verschoben (HTML-Struktur)
- Filter-Bar durch kompaktes Popover mit Checkboxen ersetzt (Mehrfachauswahl)
- Archiv-Funktion repariert (lädt jetzt per API statt leerem Store)
- Filter-Bugs behoben: Reset-Button ID, Default-Werte, Ohne-Datum-Filter
- Mehrspalten-Layout Feature entfernt
- Online-Status vom Header an User-Avatar verschoben (grüner Punkt)
- Lupen-Icon entfernt
- CLAUDE.md: Docker-Deploy und CSS-Tricks Regeln aktualisiert

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Dieser Commit ist enthalten in:
Server Deploy
2026-03-19 18:49:38 +01:00
Ursprung 99a6b7437b
Commit 4bd57d653f
36 geänderte Dateien mit 5027 neuen und 2897 gelöschten Zeilen

Datei anzeigen

@@ -1,6 +1,509 @@
TASKMATE - CHANGELOG
====================
================================================================================
19.03.2026 - v390 - Filter-Buttons in die View-Tabs-Zeile verschoben
================================================================================
- Filter- und Archiv-Buttons aus separater filter-bar in die view-tabs-bar verschoben (rechts)
- Neue CSS-Klasse filter-bar-actions statt filter-bar/filter-bar-left
- Separate filter-bar Zeile entfernt (eine Zeile weniger im Layout)
- filter-popover bleibt in der view-tabs-bar (absolut positioniert)
- Responsive: filter-bar-actions wird bei 768px ausgeblendet
- board.css: view-tabs-bar auf space-between geaendert
- Cache-Version: 390
================================================================================
19.03.2026 - v389 - View-Tabs in eigene Zeile unter dem Header verschoben
================================================================================
- HTML: div.header-center entfernt, nav.view-tabs-bar nach dem Header eingefuegt
- Tabs sind jetzt ein eigenstaendiges Element unter dem Header (sticky)
- board.css: .header-center durch .view-tabs-bar ersetzt, flex-wrap entfernt
- board.css: overflow-x/scrollbar-hide von .view-tabs entfernt
- responsive.css: .header-center Regeln durch .view-tabs-bar ersetzt
- responsive.css: view-tabs-bar wird auf Mobile versteckt (Mobile Menu uebernimmt)
- Cache-Version auf 389 erhoeht
================================================================================
19.03.2026 - v387 - Connection-Status durch Avatar-Online-Punkt ersetzt
================================================================================
- Connection-Status Indikator (div#connection-status) aus dem Header entfernt
- Gruener Online-Punkt als ::after Pseudo-Element am User-Avatar hinzugefuegt
- Punkt wird rot bei Verbindungsverlust (CSS-Klasse .offline auf body)
- sync.js: Store-Subscriber fuer syncStatus setzt .offline Klasse auf body
- Cache-Version: 386 -> 387
================================================================================
19.03.2026 - v386 - Lupen-Icon aus Suchfeld entfernt
================================================================================
- SVG-Element mit class "search-icon" aus dem Header entfernt
- Suchfeld (search-input) und search-container bleiben erhalten
- Cache-Version: 385 -> 386
================================================================================
19.03.2026 - v385 - Filter-Checkboxen statt Dropdowns
- Filter-Popover oeffnet sich jetzt rechts statt links
- Filter-Bar Buttons rechtsbuendig ausgerichtet (justify-content: flex-end)
- Alle Select-Dropdowns durch Checkbox-Listen ersetzt (Mehrfachauswahl moeglich)
- Prioritaet: Hoch/Mittel/Niedrig als Checkboxen
- Faelligkeit: Ueberfaellig/Heute/Diese Woche/Ohne Datum als Checkboxen
- Bearbeiter und Labels werden dynamisch als Checkboxen befuellt
- filterTasks in utils.js unterstuetzt jetzt Array-basierte Filter
- Checkbox-Design im AegisSight-Stil mit Custom-Checkmark
- Geaenderte Dateien: index.html, board.css, app.js, utils.js, sw.js
================================================================================
19.03.2026 - v384 - Filter-Bar kompakt mit Popover
- Filter-Bar umgebaut: statt 4 Dropdowns in einer Zeile jetzt kompakter Filter-Button + Archiv-Button
- Filter oeffnet sich als Popover-Dropdown mit allen 4 Filter-Optionen
- Filter-Button zeigt Anzahl aktiver Filter an ("Filter (2)")
- Aktive Filter werden visuell hervorgehoben (Primary-Farbe)
- Klick ausserhalb des Popovers schliesst es automatisch
- Geaenderte Dateien: index.html, app.js, board.css, sw.js
================================================================================
19.03.2026 - v383 - Filter-System Bugfixes (3 Bugs)
- Bug 1: Reset-Button funktionierte nicht (ID-Mismatch btn-reset-filters vs btn-clear-filters)
- Bug 2: Default-Werte konsistent auf leeren String umgestellt (HTML, Store, Filter-Logik)
- Bug 3: "Ohne Datum" Filter (value=none) zeigt jetzt nur Tasks ohne Faelligkeitsdatum
- Geaenderte Dateien: app.js, store.js, utils.js, sw.js
================================================================================
19.03.2026 - v382 - AegisSight Light Theme implementiert
- CSS-Variablen in variables.css auf AegisSight-Farbpalette umgestellt
- Primary/Accent: Indigo (#4F46E5) ersetzt durch Gold (#C8A851)
- Hintergruende angepasst (bg-main, bg-tertiary, bg-hover, bg-active)
- Info-Farben auf gedaempftes Blaugrau (#7C8DB5) geaendert
- Scrollbar-Farben und Focus-Schatten aktualisiert
- Hardcodierte alte Farbreferenzen in 5 CSS-Dateien ersetzt:
gitea.css, knowledge.css, board.css, coding.css, reminders.css
- Status-Farben (success, warning, error) und Prioritaetsfarben unveraendert
================================================================================
19.03.2026 - v381 - Mehrspalten-Layout Feature komplett entfernt
- Button #btn-toggle-layout aus index.html entfernt
- Alle Layout-Methoden aus board.js entfernt (loadLayoutPreference, saveLayoutPreference, toggleLayout, applyLayoutClass, checkAndApplyDynamicLayout)
- Multi-Column CSS-Regeln aus board.css entfernt
- Resize-Event-Listener und setTimeout-Aufrufe fuer Layout entfernt
================================================================================
19.03.2026 - v380 - Archiv-Modal laedt archivierte Tasks jetzt per API
- Problem: Archiv-Modal war immer leer, weil archivierte Tasks nie vom Backend geladen wurden
- Ursache: openArchiveModal nutzte nur store.get("tasks").filter(t => t.archived), aber der Store enthielt nur aktive Tasks (Backend filtert mit archived=0)
- Loesung: openArchiveModal ruft jetzt api.getTasks(projectId, { archived: true }) auf und laedt archivierte Tasks per API
- renderArchiveList bekommt Tasks als Parameter statt nochmal den Store zu filtern
- restoreTask und deleteArchivedTask laden die Archivliste nach Aktion neu vom Server
- Ladeindikator waehrend API-Anfrage
- Geaenderte Dateien: frontend/js/app.js, frontend/sw.js (v380)
================================================================================
19.03.2026 - v379 - Header-Tabs immer in eigener zweiter Zeile
- Problem: .header-center (Tabs) rutschte bei breitem Fenster neben Avatar in Zeile 1
- Ursache: width:100% + flex-basis:100% reicht nicht, Flex-Container bricht nicht um wenn genug Platz
- Loesung: flex: 0 0 100% (nicht wachsen, nicht schrumpfen, Basis 100%) erzwingt Umbruch zuverlaessig
================================================================================
19.03.2026 - v378 - Search-Container Layout-Fix im Header
- Problem: width:100% im .search-container drueckte die Lupe aus header-right heraus
- Loesung: width:100% ersetzt durch flex:1 1 auto + min-width:150px
- Container nimmt jetzt nur verfuegbaren Platz ein, dehnt sich nicht ueber header-right hinaus
================================================================================
19.03.2026 - v376 - Navigation-Tabs in eigene Header-Zeile verschoben
================================================================================
- Navigation-Tabs werden jetzt in einer separaten zweiten Zeile im Header angezeigt
- Zeile 1: Logo + Projekt + Suche + Online + Timer + Avatar
- Zeile 2: Tabs (volle Breite, zentriert)
- Zeile 3: Filter-Bar (unveraendert)
- Nur CSS-Aenderungen in board.css (kein HTML geaendert)
- Geaenderte Dateien: frontend/css/board.css, frontend/sw.js
================================================================================
31.01.2026 - v374 - Mobile Board komplett ueberarbeitet
================================================================================
## VERBESSERUNG
### Board auf Smartphone deutlich groesser und besser lesbar
- Task-Titel: 14px -> 16px (bzw. 18px auf kleinen Screens)
- Task-Cards: mehr Padding, groessere Labels
- Task-Meta-Infos: 12px -> 14px, groessere Icons
- Priority-Sterne: 12px -> 16px
- Assignee-Avatare: 24px -> 32px
### Filter & Stats-Bar optimiert
- Filter-Selects: groesser (48px Hoehe), volle Breite auf kleinen Screens
- Stats-Bar: groessere Icons (40px), groessere Zahlen
- Horizontales Scrollen fuer Stats wenn noetig
### Week-Strip groesser
- Navigation-Buttons: 28px -> 40px
- Tages-Nummern: 14px -> 18px
### Spalten-Header groesser
- Titel: 14px -> 16px (18px auf kleinen Screens)
- Task-Count Badge: 24px -> 28px
- Mehr Padding
### Add-Task-Button groesser
- Min-Hoehe: 52px (56px auf kleinen Screens)
- Schrift: 14px -> 16px (18px auf kleinen Screens)
### Modal-Optimierungen
- Fullscreen auf sehr kleinen Screens (< 480px)
- Groessere Form-Labels
- Mehr Padding
### Geaenderte Dateien
- frontend/css/mobile.css - Umfangreiche Board-Optimierungen
================================================================================
31.01.2026 - v373 - Mobile UX Optimierung
================================================================================
## VERBESSERUNG
### Mobile Touch & iOS Kompatibilitaet
- Input-Schriftgroesse auf 16px erhoeht (verhindert iOS Zoom bei Focus)
- Modal Close Button auf 44px Touch Target vergroessert
- Dropdown Items mit min-height 44px fuer bessere Touch-Bedienung
- Safe Area Support fuer Mobile Column Indicator (iOS Notch/Home Bar)
- Safe Area Support fuer Toast Container auf Mobile
- Safe Area Support fuer Lightbox Close Button
### Geaenderte Dateien
- frontend/css/components.css - Input font-size, Dropdown min-height
- frontend/css/modal.css - Modal close 44px, Lightbox safe-area
- frontend/css/mobile.css - Column indicator safe-area
- frontend/css/responsive.css - Toast container safe-area
================================================================================
24.01.2026 - v372 - UI: Navigation-Tabs vertikal und zentriert
================================================================================
## VERBESSERUNG
### Vertikale Navigation-Tabs
- Tabs sind jetzt immer vertikal: Icon oben, Text darunter
- Kompakteres Layout, alle 7 Tabs passen besser nebeneinander
- Tabs bleiben bei allen Bildschirmbreiten zentriert (nicht nach rechts)
### Geaenderte Dateien
- frontend/css/board.css - Basis-Styles fuer .view-tab
- frontend/css/responsive.css - justify-content: center hinzugefuegt
================================================================================
24.01.2026 - v369 - Bugfix: Spalte loeschen mit archivierten Aufgaben
================================================================================
## BUG BEHOBEN
### Spalte loeschen funktioniert jetzt korrekt
- Problem: Spalten mit archivierten Aufgaben konnten nicht geloescht werden
- Ursache: Frontend pruefte nur aktive Tasks, Backend zaehlte alle (inkl. archivierte)
- Spalte wanderte nach rechts statt geloescht zu werden
- Loesung: Backend prueft jetzt nur aktive (nicht-archivierte) Tasks
### Archivierte Aufgaben bleiben erhalten
- Archivierte Aufgaben werden NICHT geloescht wenn Spalte geloescht wird
- Stattdessen: column_id wird auf NULL gesetzt
- Bei Wiederherstellung: Spaltenauswahl-Dialog erscheint
- Benutzer waehlt neue Spalte fuer die wiederhergestellte Aufgabe
### Neues Modal: Spaltenauswahl
- Neues Modal "column-select-modal" in index.html
- Event-Handler "column-select:show" in app.js
- Wird verwendet bei Wiederherstellung von Aufgaben ohne gueltige Spalte
================================================================================
23.01.2026 - v368 - Kontakte & Board: UI-Verbesserungen
================================================================================
## KONTAKTE-MODUL
### Filter-Buttons
- Text durch Icons ersetzt (Personen-Icon / Gebaeude-Icon)
- Inline-SVGs fuer bessere Kompatibilitaet
### Icons repariert
- Alle xlink:href Referenzen durch Inline-SVGs ersetzt
- Betroffene Icons: edit, trash, arrow-left, plus, x, mail, phone, users
- Kontaktdetails und Interaktionen nutzen jetzt Inline-SVGs
### Avatar-Darstellung
- Typ-Badges (Person/Institution) komplett entfernt
- Stattdessen Icons im Avatar-Kreis (Personen-Icon / Gebaeude-Icon)
- Weisse Icons auf farbigem Hintergrund
### Caching-Problem behoben
- Cache-Control Headers im Backend hinzugefuegt
- Kontakte werden jetzt immer frisch geladen (kein 304 Not Modified)
### Filter-Zaehlung korrigiert
- Von Server-seitiger zu Client-seitiger Filterung gewechselt
- Alle Kontakte werden einmal geladen, dann lokal gefiltert
- Zaehlung zeigt jetzt korrekte Werte (z.B. 7+5 statt 5+4)
### Neue Kontakte hinzugefuegt
- Barbara Banczyk (LfM)
- Torsten Giebel (LfM)
- Anna Heinzmann (LKA BW)
- Stephanie Kaschka (LKA HH)
- Kilian Bieker (ohne Institution)
- Marc Restemeyer (LAFP NRW)
## BOARD-MODUL
### Spalten-Buttons verbessert
- Edit/Delete-Buttons von absoluter zu Flexbox-Positionierung
- Automatische vertikale Zentrierung
- Keine Ueberlappung mehr mit Spaltentitel
- Lange Titel werden mit "..." abgeschnitten
## TECHNISCH
- Service Worker Cache-Version erhoeht auf v368
================================================================================
23.01.2026 - v362 - Institution: Felder entfernt
================================================================================
## ENTFERNT
- Mitarbeiteranzahl (employee_count) aus Institution entfernt
- Gruendungsjahr (founded_year) aus Institution entfernt
- Steuernummer (tax_number) aus Institution entfernt
- Spalten aus Datenbank entfernt
- Service Worker Cache-Version erhoeht auf v362
================================================================================
23.01.2026 - v361 - Kontakte: Umbenennung Organisation zu Institution
================================================================================
## GEAENDERT
- "Organisation" ueberall zu "Institution" umbenannt
- Service Worker Cache-Version erhoeht auf v361
================================================================================
23.01.2026 - v360 - Kontakte: Zwei Buttons und Umbenennung zu Organisation
================================================================================
## GEAENDERT
- Zwei separate Buttons: "Neuer Kontakt" (Person) und "Neue Organisation"
- "Unternehmen" ueberall zu "Organisation" umbenannt
- Filter-Tab "Unternehmen" -> "Organisationen"
- Formular-Titel passt sich dem Typ an
- Service Worker Cache-Version erhoeht auf v360
================================================================================
22.01.2026 - v359 - Geburtstag-Feld aus Kontakten entfernt
================================================================================
## ENTFERNT
- Geburtstag-Feld aus dem Kontakt-Formular (Person) entfernt
- Geburtstag-Anzeige aus der Kontakt-Detailansicht entfernt
- birth_date Spalte aus der Datenbank entfernt
- birth_date aus Backend-Routes (contacts.js, contacts-extended.js) entfernt
- birth_date aus Migrations-Dateien entfernt
- Service Worker Cache-Version erhoeht auf v359
================================================================================
21.01.2026 - v346 - BUGFIX: Kontakte Event-Binding repariert
================================================================================
## FEHLER BEHOBEN
- "Neuer Kontakt" Button: Event-Binding nach Modal-Schließen repariert
- Modal-Schließen optimiert: Kein komplettes Re-Rendering des Layouts mehr
- Robusteres Event-Binding mit Console-Logging für Debugging
- Service Worker Cache-Version erhöht auf v346
================================================================================
21.01.2026 - BUGFIX: Kontakte Modal-Overlay Fehler behoben
================================================================================
## FEHLER BEHOBEN
- Kontakte-Formular zeigte "undefined" beim Anlegen neuer Kontakte
- Modal-Overlay fehlte beim Kontakt-Formular
- Form-Container hatte keine korrekte Modal-Struktur
- "Neuer Kontakt" Button reagierte nicht - Event-Handling verbessert
- SVG-Icon durch Text-Symbol ersetzt für bessere Kompatibilität
- Modal-CSS-Klasse korrigiert: "visible" statt "show" für korrekte Anzeige
- Z-Index erhöht, um sicherzustellen dass Modal über allem liegt
- Modal-Struktur korrigiert: Overlay und Modal sind jetzt separate Elemente
- Form-Submit Problem behoben: Formular wurde als GET statt POST abgeschickt
- Event-Binding direkt auf Submit-Button statt Form-Submit für bessere Kontrolle
- Validierung für Pflichtfelder (Nachname/Firmenname) hinzugefügt
- Display-Name wird jetzt korrekt im Frontend generiert
- Nach Kontakt-Erstellung werden vollständige Details geladen
- Event-Delegation für Form-Buttons implementiert
- API-Request Syntax korrigiert (object statt separate Parameter)
- Kontakt-Löschung funktioniert jetzt korrekt
- Interaktionen-API ebenfalls korrigiert
- Filter-Sidebar entfernt und in Header-Leiste integriert
- Archiv/Aktiv Filter entfernt - nur noch Alle/Personen/Unternehmen
- Modernes Filter-Button-Design im Header
- Responsive Layout für mobile Geräte
- Service Worker Cache-Version erhöht auf v358
================================================================================
20.01.2026 - UPDATE: Kategoriesystem aus Kontaktmanagement entfernt
================================================================================
## ÄNDERUNGEN
- Kategoriesystem komplett entfernt (Backend und Frontend)
- Vereinfachtes Kontaktmanagement ohne Kategorie-Verknüpfungen
- Saubere UI ohne Kategorie-Filter und -Zuweisungen
================================================================================
20.01.2026 - FEATURE: Kontaktmanagement komplett neu implementiert
================================================================================
## NEUE FUNKTIONEN
- Modernes Kontaktmanagement-Modul (neu entwickelt)
- Unterstützung für Personen und Unternehmen
- Mehrere Kontaktdetails pro Person (E-Mail, Telefon, Adresse)
- Verknüpfung von Personen mit Unternehmen
- Interaktions-Historie (Anrufe, E-Mails, Meetings, Notizen)
- Avatar-Upload für Kontakte
## UI/UX
- Moderne Card-basierte Listenansicht mit alphabetischer Gruppierung
- Sidebar mit Filtern (Alle, Personen, Unternehmen, Aktiv, Archiviert)
- Detailansicht mit allen Kontaktinformationen
- Formular mit Type-Toggle (Person/Unternehmen)
- Dynamische Formularfelder je nach Kontakttyp
- Integration in die globale Suche
## DATENBANK
- Neue optimierte Tabellenstruktur:
- contacts: Haupttabelle für Personen und Unternehmen
- contact_details: Mehrere E-Mails, Telefone etc. pro Kontakt
- contact_categories: Kategorien zur Organisation
- contact_interactions: Interaktions-Historie
- Trigger für automatisches updated_at
- Performance-Indizes für schnelle Abfragen
## TECHNISCHE DETAILS
- Backend: Vollständige REST API in /api/contacts
- Frontend: ES6 Modul contacts.js (ersetzt contacts-basic.js)
- CSS: Komplett neues contacts.css mit responsivem Design
- Cache-Version auf 326 erhöht
================================================================================
19.01.2025 - BUGFIX: User-Dropdown Z-Index korrigiert
================================================================================
## FEHLERBEHEBUNG
- User-Dropdown erscheint jetzt korrekt über anderen Elementen
- Z-Index von 100 auf 300 erhöht (über sticky header mit z-index 200)
- Cache-Version auf 315 erhöht
## TECHNISCHE DETAILS
- Datei: frontend/css/variables.css
- Geändert: --z-dropdown: 300 (vorher 100)
================================================================================
19.01.2025 - FEATURE: Wissen-Modul elegant überarbeitet
================================================================================
## NEUE FUNKTIONEN
- Eleganter Ansichtstyp-Umschalter im Header (Liste/Karten/Kompakt)
- Template-Auswahl direkt im Entry-Modal als Tabs:
- Allgemein: Flexibler Eintrag mit allen Feldern
- Link: Optimiert für Weblinks (URL-Feld erforderlich)
- Dokument: Fokus auf Datei-Anhänge (URL ausgeblendet)
- Notiz: Erweiterte Notizen (URL ausgeblendet, größeres Textfeld)
- Verbessertes Karten-Design mit sauberen SVG-Icons statt Emojis
## UI/UX VERBESSERUNGEN
- View-Switcher nahtlos in Header integriert (TaskMate-Stil)
- Template-Tabs ändern dynamisch die Formular-Felder
- Karten zeigen URL-Domain statt voller URL
- Notizen-Vorschau in Karten auf 150 Zeichen
- View-Präferenz wird gespeichert
- Mobile: View-Switcher ausgeblendet, automatisch Karten
## TECHNISCHE DETAILS
- Template-System ohne separates Modal implementiert
- Dynamische Feld-Sichtbarkeit basierend auf Template-Typ
- Kompakte View-Switcher Komponente
- SVG-Icons für bessere Performance und Konsistenz
## BUGFIXES
✅ Sperrige UI-Elemente entfernt und durch elegante Lösungen ersetzt
✅ Template-Flow intuitiver gestaltet
✅ Visuelles Design konsistent mit TaskMate-Stil
================================================================================
17.01.2026 - FEATURE: Responsive Design-Verbesserungen
================================================================================
## NEUE FUNKTIONEN
- Anwendung passt sich automatisch an Browsergröße an
- Kein horizontales Scrollen mehr nötig
- Navigation zeigt bei mittleren Bildschirmen (1200px) nur Icons
- Tooltips beim Hover über Navigations-Icons
## IMPLEMENTIERUNG
✅ Globale responsive CSS-Regeln hinzugefügt (overflow-x: hidden)
✅ Navigation-Tabs zeigen ab 1200px nur noch Icons
✅ data-tooltip Attribute für alle View-Tabs hinzugefügt
✅ Header-Elemente optimiert für verschiedene Bildschirmgrößen
✅ Project Selector und Search Container werden bei kleineren Bildschirmen schmaler
✅ View-Tabs sind bei Bedarf horizontal scrollbar (ohne sichtbare Scrollbar)
## TECHNISCHE DETAILS
- Neue Media Query für max-width: 1200px
- Touch-optimiertes horizontales Scrollen für View-Tabs
- Minimale Touch-Target-Größe von 44px beibehalten
- Box-sizing: border-box global angewendet
## BUGFIXES
✅ Elemente verschwinden nicht mehr bei kleinen Bildschirmen
✅ Horizontales Scrollen komplett eliminiert
✅ Search Input hat keine feste Breite mehr (max-width statt width)
✅ Project Select nutzt responsive Breiten
✅ Board und Columns nutzen flexible Breiten
✅ Header-Layout für kleine Bildschirme optimiert (keine Wrapping-Probleme mehr)
✅ Mobile Board-Columns nutzen 100% Breite statt calc(100vw - 32px)
================================================================================
11.01.2025 - BUGFIX: Mobile Ansicht für Liste und Kalender repariert
================================================================================
## PROBLEM
Liste und Kalender wurden in der mobilen Ansicht nicht angezeigt
## LÖSUNG
✅ CSS-Konflikt zwischen hidden-Klasse und active-Display behoben
✅ Mobile-spezifische Responsive-Anpassungen für beide Views
✅ Verbesserte Touch-Scrolling für Tabellen in der Listenansicht
✅ Optimierte Kalender-Darstellung auf kleinen Bildschirmen
================================================================================
11.01.2025 - FEATURE: Verbesserte mobile Navigation mit Swipe-Gesten
================================================================================
## NEUE FUNKTIONEN
- Board-View zeigt jetzt nur eine Statuskarte auf einmal
- Swipe links/rechts wechselt zwischen den Statuskarten
- Swipe in der Header-Leiste wechselt zwischen den Views (Board, Liste, etc.)
- Visuelle Indikatoren zeigen aktuelle Spalte und verfügbare Navigationsoptionen
## IMPLEMENTIERUNG
✅ Neues mobile-swipe.js Modul für erweiterte Touch-Gesten
✅ Eine Spalte pro Bildschirm in mobiler Ansicht
✅ Spalten-Indikator mit Punkten und Spaltenname
✅ View-Hints beim Swipen in der Header-Leiste
✅ Responsive Anpassungen für optimale mobile Experience
================================================================================
11.01.2025 - BUGFIX: Wissenseinträge - Benachrichtigungen aktiviert
================================================================================
## PROBLEM
Beim Erstellen neuer Wissenseinträge erhielten andere Nutzer keine Benachrichtigung
## LÖSUNG
✅ Benachrichtigungen werden jetzt als persistent gespeichert
✅ Alle Nutzer erhalten eine Inbox-Benachrichtigung bei neuen Einträgen
✅ Klick auf Benachrichtigung navigiert direkt zum Wissenseintrag
================================================================================
11.01.2025 - FEATURE: Coding-Modul - Freie Pfad-Eingabe
================================================================================