# CLAUDE.md — Mahnung-Modul ## Projekt Dolibarr Custom-Modul: 3-stufiges Mahnwesen nach BGB §288. ## Technisches - **numero**: 500038 (NICHT ändern — 500037 ist Eplan) - **Deploy**: nur via Pipeline (`[deploy]` in Commit-Message), NIEMALS manuell kopieren - **Prod-Pfad**: /mnt/appdata/firma/dolibarr-202509/modules/mahnung/ - **Lokal**: Symlink /var/www/dolibarr/custom/mahnung → repo/ - **Test-DB**: dolibarr_test auf 192.168.155.11 ## Dokumentenmodell-System - `commonGenerateDocument()` fügt automatisch `doc_`/`pdf_` Prefix hinzu - DB-Einträge in `llx_document_model.nom` OHNE Prefix speichern - `actions_setmoduleoptions.inc.php` MUSS vor `llxHeader()` stehen (Upload) - ODT-Templates: mahnung_stufe1.odt, mahnung_stufe2.odt, mahnung_stufe3.odt, mahnung.odt (Fallback) ## Widget - `box_mahnung_offen` basiert 1:1 auf `box_factures_imp.php` (Standard-Widget) - Zeigt ALLE offenen Rechnungen, nicht nur überfällige - Mahnstufe-Badge nur wenn Mahnung existiert, sonst Strich ## Dolibarr-Versionshinweise - `f.fk_statut` statt `f.statut` (seit Dolibarr 22.x) - `verifCsrf()` existiert nicht — CSRF via `newToken()` + GETPOST('token') - `dol_mkdir()` gibt 0 zurück wenn Verzeichnis bereits existiert (nicht false) - `dol_dir_list()` gibt `fullname` zurück (nicht `fullpath`)