# CHANGELOG MODULE KUNDENKARTE FOR [DOLIBARR ERP CRM](https://www.dolibarr.org) ## 7.5 (2026-03) ### Neue Features - **FI/RCD-Schutzgruppen**: Equipment kann Schutzgeraeten zugeordnet werden - Farbliche Markierung der Schutzgruppen im Schaltplan - Dropdown zur Auswahl des Schutzgeraets im Equipment-Dialog - Visuelle Verbindung durch farbige Raender - **Gebuendelte Terminals**: Multi-Phasen-Abgaenge fuer Drehstrom-Verbraucher - "Alle buendeln" Option fuer E-Herd, Durchlauferhitzer etc. - Ein Abgang belegt alle Terminals des Equipment - Zentrierter Pfeil ueber alle Terminals - **Terminal-Konfiguration**: Korrekte Terminal-Anzahl aus Typ-Konfiguration - Neozed 3F zeigt 3 statt 4 Terminals (trotz 4 TE Breite) - Neue `getTerminalCount()` Hilfsfunktion - **Zuletzt bearbeitete Kunden**: Quick-Access auf Search-Screen - Speichert die letzten 5 bearbeiteten Kunden - Schneller Zugriff ohne Suche - **Medium-Typen aus Datenbank**: Dynamisches Kabeltyp-Dropdown - Kategorisierte Auswahl (NYM, NYY, Datenkabel, etc.) - Querschnitt-Spezifikationen als Unter-Dropdown - Offline-Cache fuer die Auswahl ### Verbesserungen - Terminal-Labels anklickbar zum direkten Bearbeiten - Kontextmenue fuer leere Terminals (Wahl Input/Output) - Equipment-Block-Value (B16A) kleiner dargestellt (8px) - Terminals direkt am Equipment-Block ausgerichtet - Block-Label mit Einheiten und Leerzeichen (40A 30mA) ### Bugfixes - Abgaenge werden nach Positionswechsel (oben/unten) korrekt angezeigt - Bundle-Option nur bei Equipment mit mehr als 1 Terminal sichtbar - Login-Fehler durch doppelte Variable-Deklaration behoben ### Datenbank-Aenderungen - Neue Spalte `bundled_terminals` in `llx_kundenkarte_equipment_connection` - Neue Spalten `fk_protection`, `protection_label` in `llx_kundenkarte_equipment` --- ## 5.2.0 (2026-02) ### Neue Features - **PWA Mobile App**: Offline-faehige Progressive Web App fuer Elektriker - Schaltschrank-Dokumentation direkt vor Ort im Keller (ohne Internet) - Kundensuche, Anlagen-Auswahl, Felder/Hutschienen/Automaten erfassen - Token-basierte Authentifizierung (15 Tage gueltig) - Automatische Synchronisierung wenn wieder online - Installierbar auf dem Smartphone Home Screen - Touch-optimiertes Dark Mode Design - Quick-Select fuer Automaten-Werte (B16, C32, etc.) - **Schaltplan-Editor: Block Hover-Tooltip** - Zeigt alle Felder mit `show_in_hover=1` Einstellung - Produktinfo mit Icon wenn Produkt zugewiesen - Position und Breite in TE - Schickes dunkles Design - **Schaltplan-Editor: Produkt-Zuordnung** - Autocomplete-Suche fuer Produkte beim Hinzufuegen/Bearbeiten - Produktinfo im Klick-Popup angezeigt ### Verbesserungen - Equipment-Popup zeigt jetzt Produktinfo mit Cube-Icon - Loeschbestaetigung fuer Panels und Hutschienen mit Inhalt ### Neue Dateien - `pwa.php` - PWA Haupteinstieg - `pwa_auth.php` - Token-basierte Authentifizierung - `ajax/pwa_api.php` - PWA AJAX API - `js/pwa.js` - PWA JavaScript App - `css/pwa.css` - PWA Mobile Styles - `sw.js` - Service Worker (Offline-Cache) - `manifest.json` - PWA Web App Manifest - `img/pwa-icon-192.png`, `img/pwa-icon-512.png` - App Icons --- ## 5.1.0 (2026-02) ### Verbesserungen - **Graph-Ansicht: Intelligente Feldanzeige** - Felder nach `position` sortiert (nicht mehr nach JSON-Reihenfolge) - Nur Felder mit `show_in_tree=1` werden auf den Graph-Nodes angezeigt - Nur Felder mit `show_in_hover=1` erscheinen im Tooltip - Badge-Werte im Graph mit Feldbezeichnung (z.B. "Hersteller: ABB") - Tooltip: Typ/System entfernt (redundant mit Graph-Node) - Tooltip: Farbige Badge-Kaesten wie in der Baumansicht - Shared Library `lib/graph_view.lib.php` fuer Toolbar/Container/Legende ### Neue Dateien - `lib/graph_view.lib.php` - Gemeinsame Graph-Funktionen (Toolbar, Container, Legende) --- ## 5.0.0 (2026-02) ### Neue Features - **Cytoscape.js Graph-Ansicht**: Neue interaktive Netzwerk-Visualisierung - Raeume als Compound-Container, Geraete als Nodes darin - Kabelverbindungen als sichtbare Edges (auch raumuebergreifend) - Durchgeschleifte Leitungen als gestrichelte Linien - Dagre-Layout: Hierarchischer Stromfluss top-down - Zoom/Pan/Fit-Controls, Mausrad-Zoom Toggle - Kabeltyp-Legende mit Farben - **Bearbeitungsmodus**: Nodes nur per "Anordnen"-Button verschiebbar, Positionen per "Speichern"-Button fest, "Abbrechen" setzt zurueck - Viewport-Persistenz (Zoom/Pan bleibt beim Seitenwechsel) - Klick auf Node/Edge oeffnet Detail-/Bearbeitungsseite - Suche als Overlay im Graph-Container (Nodes hervorheben/abdunkeln) - Kontextmenue (Rechtsklick): Ansehen, Bearbeiten, Kopieren, Loeschen - PNG-Export des Graphen - Admin-Setting: Ansichtsmodus (Baum/Graph) in Setup waehlbar - Toolbar zweizeilig: Aktionen oben, Graph-Steuerung unten - **Verbindungsformular verbessert** - Select-Dropdowns zeigen nur Geraete (keine Gebaeude/Raeume) - Icons (FontAwesome) in Select-Optionen via select2 - Gebaeude-Pfad als Kontext (z.B. "EG > Zahlerschrank") - Systemuebergreifende Geraete-Auswahl (kein Systemfilter) ### Neue Dateien - `js/kundenkarte_cytoscape.js` - Graph-Namespace (~750 Zeilen) - `css/kundenkarte_cytoscape.css` - Graph-Styles mit Dark Mode - `ajax/graph_data.php` - AJAX: Baum+Verbindungen → Cytoscape-Format - `ajax/graph_save_positions.php` - AJAX: Node-Positionen speichern - `js/cytoscape.min.js`, `js/dagre.min.js`, `js/cytoscape-dagre.js`, `js/cytoscape-cose-bilkent.js` - Bibliotheken ### Bugfixes - **Contact-Filter im Graph**: Graph zeigte faelschlicherweise Kontakt-Elemente auf Kunden-Ebene - Fix: `fk_contact` Filter in `graph_data.php` analog zum Baum - **Verbindung hinzufuegen**: Formular zeigte "Feld erforderlich"-Fehler beim Oeffnen - Ursache: `action=create` in URL triggerte Handler vor Formular-Anzeige - Fix: Korrekte Dolibarr-Konvention (create=Formular, add=Verarbeitung) - **Leere Dropdowns**: Quelle/Ziel-Auswahl war leer wenn System keine Elemente hatte - Fix: Kein System-Filter mehr (Kabel koennen systemuebergreifend sein) - **Kontakt-Redirect**: Nach Verbindung-Bearbeiten landete man auf Kundenansicht statt Kontaktansicht - Fix: `contactid` wird jetzt in allen Edit-URLs mitgegeben - **Kontakt-Anlagen**: Auf Stand von Kunden-Anlagen gebracht - tree_display_mode, badge_color, Schaltplan-Editor, Drag&Drop Upload ### Datenbank-Aenderungen - Neue Spalten `graph_x`, `graph_y` in `llx_kundenkarte_anlage` (Node-Positionen) - Neue Spalte `fk_building_node` in `llx_kundenkarte_anlage` (vorbereitet fuer Phase 2) ### Admin-Settings - `KUNDENKARTE_DEFAULT_VIEW`: `tree` (Standard) oder `graph` --- ## 4.0.1 (2026-02) ### Neue Features - **Badge-Farben pro Feld**: Individuelle Farben fuer Badges im Baum konfigurierbar - Neue Spalte in Admin > Element-Typen > Felder - Color-Picker fuer einfache Farbauswahl - Hex-Format (#RRGGBB) - **Datei-Vorschau Tooltip**: Hover ueber Datei-Badge zeigt Vorschau - Thumbnails fuer Bilder - Icons fuer Dokumente (PDF, Word, Excel, etc.) - Neuer AJAX-Endpoint `ajax/file_preview.php` - **Mobile/Kompakte Ansicht**: Optimiert fuer mobile Geraete - Kompakt-Modus Toggle-Button - Einheitliche Button-Groessen auf mobilen Geraeten - 2x2 Grid-Layout auf sehr kleinen Bildschirmen - Touch-freundliche Bedienelemente ### Bugfixes - **Dolibarr App Navigation**: Vor/Zurueck-Pfeile funktionieren jetzt korrekt - Module akzeptieren nun `id` UND `socid`/`contactid` Parameter - Kunden-Kontext bleibt beim Navigieren erhalten - Betroffene Dateien: alle Tab-PHP-Files - **Datei-Badge Icon**: Zeigt jetzt Bueroklammer-Icon statt nur Zahl - **Kontakt-Anlagen Kategorie-Filter**: Fehlende Kategorie-Auswahl hinzugefuegt - Gebaeude/Standort vs. Technisches Element jetzt auch bei Kontakten waehlbar - Strom-Typen sind jetzt auswaehlbar - **Schematic Editor**: Hutschiene hinzufuegen Button bei leerem Panel - Button erscheint jetzt auch wenn noch keine Hutschiene existiert - **Panel-Hoehe**: Korrektur der Berechnung bei mehreren Hutschienen - Unterer Rand wird nicht mehr abgeschnitten ### Datenbank-Aenderungen - Neue Spalte `badge_color` in `llx_kundenkarte_anlage_type_field` --- ## 3.5.0 (2026-02) ### Neue Features - **Drag & Drop Sortierung**: Elemente im Anlagenbaum per Drag & Drop umsortieren - Geschwister-Elemente auf gleicher Ebene verschieben - Visuelle Drop-Indikatoren (blaue Linie) - Reihenfolge wird sofort per AJAX gespeichert (kein Seitenreload) - Funktioniert in Kunden- und Kontakt-Anlagen ### Bugfixes - **Duplicate-Key-Fehler behoben**: UNIQUE KEY `uk_kundenkarte_societe_system` um `fk_contact` erweitert - Systeme koennen nun gleichzeitig auf Kunden- und Kontaktebene existieren - Migration wird automatisch beim Modul-Aktivieren ausgefuehrt ### Verbesserungen - Visueller Abstand zwischen Root-Elementen im Anlagenbaum - INSERT fuer Kunden-Systeme setzt explizit `fk_contact = 0` --- ## 2.0 (2026-01) ### Neue Features - **PDF Export mit Vorlage**: Briefpapier/Hintergrund-PDF kann als Vorlage hochgeladen werden - Upload im Admin-Bereich unter Einstellungen - Vorlage wird als Hintergrund auf allen Seiten verwendet - **PDF Schriftgroessen konfigurierbar**: Anpassbare Schriftgroessen fuer den PDF-Export - Ueberschriften (7-14pt) - Inhalte (6-12pt) - Feldbezeichnungen (5-10pt) - **Verbesserte PDF-Baumdarstellung**: Professionelle Darstellung der Anlagenstruktur - Farbcodierte Header pro Hierarchie-Ebene (dezente Grauabstufungen) - Abgerundete Rahmen um Elemente - Visuelle Verbindungslinien zwischen Elementen - Bessere Einrueckung und Lesbarkeit ### Verbesserungen - Logo aus PDF-Export entfernt (ersetzt durch Vorlagen-System) - Dynamische Felder fuer Element-Typen (Ueberschrift als neuer Feldtyp) - Kopierfunktion fuer Elemente und Typen --- ## 1.1 (2026-01) ### Neue Features - **Kontakt/Adressen-Unterstuetzung**: Favoriten und Anlagen koennen nun auch auf Kontakt-/Adressebene verwaltet werden - Ideal fuer Kunden mit mehreren Gebaeuden/Standorten - Neue Tabs "Favoriten" und "Anlagen" auf Kontaktkarten - Vollstaendige Trennung der Daten zwischen Kunde und Kontakten ### Verbesserungen - Mengen-Eingabe bei Favoriten vereinfacht (Textfeld + Speichern-Button) - Modul-Icon geaendert zu fa-id-card - Dokumentation aktualisiert ### Datenbank-Aenderungen - Neue Spalte `fk_contact` in Tabelle `llx_kundenkarte_favorite_products` - Neue Spalte `fk_contact` in Tabelle `llx_kundenkarte_anlage` - Neue Spalte `fk_contact` in Tabelle `llx_kundenkarte_societe_system` ### Hinweis zum Upgrade Nach dem Update bitte das Modul einmal deaktivieren und wieder aktivieren, damit die SQL-Aenderungen ausgefuehrt werden. --- ## 1.0 ### Features - Favoriten-Produkte fuer Kunden - Produkte als Favoriten markieren - Standardmengen festlegen - Bestellungen aus Favoriten generieren - Sortierbare Liste - Technische Anlagen (Baumstruktur) - Systemkategorien (Strom, Internet, Kabel, Sat) - Konfigurierbare Element-Typen - Individuelle Felder pro Typ - Datei-Upload mit Vorschau - Hierarchische Struktur - Admin-Bereich - Systeme verwalten - Typen verwalten - Felder konfigurieren Initial version