# Changelog

## 1.1.0 — 2026-04-08

### Phase 1 Bericht-Modul Erweiterungen

**1.6 Verknüpfte Sicht Auftrag↔Rechnung**
- Bericht-Übersicht zeigt drei Sektionen: direkt zugeordnet, zusätzlich verknüpft, aus verknüpften Aufträgen
- "→ Übernehmen"-Button erstellt llx_element_element-Eintrag (n:m-Verknüpfung)
- "Lösen"-Button entfernt Verknüpfung
- Beim Finalisieren landet das PDF auch unter den verknüpften Elementen im ECM

**1.1 Live-PDF-Vorschau**
- 👁️ Vorschau-Button im Editor → Modal mit eingebettetem PDF
- Neuer Endpoint `ajax/preview_pdf.php` (kein ECM-Insert, kein Status-Wechsel)
- ESC oder Klick auf Backdrop schließt das Modal

**1.2 Anhänge löschen**
- 🗑️ Icon neben jedem Anhang in der linken Spalte
- Confirm-Dialog mit Auftrags-/Rechnungs-Referenz
- Path-Whitelist (nur facture/, commande/, propal/), Thumbs + ECM-Eintrag werden mitgelöscht

**1.3 Seitengröße A4/A3/A5/Letter + Hoch/Quer**
- Format und Orientation in der Bericht-Meta wählbar
- Auto-Save bei Änderung
- Bilder werden dynamisch auf die Seitengröße skaliert

**1.4 + 1.5 Mehrere Bilder pro Seite (DB-Schema)**
- Neue Tabelle `llx_bericht_page_image` für Multi-Image-Seiten
- Spalten `layout`, `image_scale`, `image_align` in `llx_bericht_page`
- Grid-Rendering im Editor + PDF folgt im nächsten Commit

**1.7 Tab „Berichte" auf Kundenkarte**
- Read-only Übersicht aller Berichte des Kunden
- Flache Tabelle sortiert nach Datum
- Springt zum Bericht oder zur Quelle (Auftrag/Rechnung/Angebot)
- Konstante `BERICHT_TAB_ON_THIRDPARTY` zum Aktivieren

### Sonstiges
- DB-Migrationen im `init()` für bestehende Installationen (ALTER TABLE mit Error-Suppress)
- `bericht_burn_annotations` und `bericht_render_cover_internal` in `lib/bericht.lib.php` zentralisiert (gemeinsam von generate_pdf + preview_pdf genutzt)
- Modal-CSS für Vorschau im Dolibarr Dark-Theme

## 1.0.0 — 2026-04-08

Initiales Release.

- Modul-Scaffold mit Reiter „Bericht" auf Rechnungen, Aufträgen und Angeboten
- CRUD für `Bericht` und `BerichtPage` (Tabellen `llx_bericht`, `llx_bericht_page`)
- Browser-Editor mit PDF.js + Fabric.js: Pfeile, Kreise, Rechtecke, Freihand, Text, Undo/Redo
- Anhänge-Browser zeigt eigene Anhänge + Anhänge verknüpfter Objekte
- Datei-Upload direkt in den Bericht
- Seiten-Verwaltung mit Drag&Drop (SortableJS), Löschen, Drehen
- Notizen pro Seite (werden im PDF gedruckt)
- Admin-Setup mit ODT-Template-Verwaltung (Upload, Löschen, Standard wählen)
- Platzhalter-System für ODT-Templates (`{auftragsnummer}`, `{kunde_name}`, …)
- PDF-Finalisierung mit TCPDF + FPDI, ODT→PDF Konvertierung des Deckblatts via LibreOffice
- Annotationen werden beim Export ins PDF eingebrannt
- Auftragsnummer wird automatisch aus dem vorhandenen Extrafield `options_auftragsnummer` geholt
- Beim Aktivieren werden fehlende Extrafields auf `llx_facture_extrafields` angelegt, vorhandene NICHT überschrieben
- Mehrere Berichte pro Dokument möglich
- Forgejo-Workflow für Deploy nach Dolibarr (Tag `[deploy]`)
