Commit graph

122 commits

Author SHA1 Message Date
fds2610-bot
69fcc84301 Fix #208: Totmannschalter für den Nextcloud-Import
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-20 17:25:26 +02:00
fds2610-bot
c90f2b0623 Fix #206: Admin-Prüfung bei GET /settings ergänzt
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-20 08:55:23 +02:00
fds2610-bot
47ec4ed1b9 Fix #203: Admin-Prüfung im BankinstituteController ergänzt 2026-08-26 07:31:37 +02:00
fds2610-bot
6fef9eff24 Fix #202: Admin-Prüfung bei /settings/logo (Logo-Upload) ergänzt 2026-08-26 07:26:28 +02:00
fds2610-bot
9c6bb597d2 Fix #200: Admin-Prüfung für alle Settings-Verwaltungsendpoints ergänzt 2026-08-24 22:52:00 +02:00
fds2610-bot
71ccbb754c Fix #193: SMTP-SSRF-Schutz per IP-Pinning, Admin-Pflicht für SMTP-Einstellungen 2026-08-21 08:20:03 +02:00
fds2610-bot
23efce3196 Fix #161: Restposten aus Tech-Debt-Analyse (O-CHAT.html, fints.php/bankimport.php, Request-Klasse)
(a) public/O-CHAT.html nach BEISPIELE/ verschoben, Test 93 hält den Webroot sauber.
(b) bank/fints.php in Teil-Views + public/static/js/fints.js aufgeteilt.
(c) settings/bankimport.php in Teil-Views + public/static/js/bankimport.js aufgeteilt.
(d) src/Request.php angelegt, BankController als erster Controller umgestellt.
2026-08-18 13:12:12 +02:00
fds2610-bot
458d007107 Fix #187: Bankleitzahlen-Verzeichnis unter Einstellungen 2026-08-18 09:12:19 +02:00
fds2610-bot
1e043524fc Fix #183: SSRF-Schutz für SMTP-Einstellungen (mail_smtp_host) 2026-08-12 16:51:55 +02:00
fds2610-bot
74b9f0cc17 Fix #159: Überlange Methoden zerlegt (FinTsFetchService::run, Booking::create/reverse, Bank-/InvoiceController) 2026-08-11 07:17:41 +02:00
fds2610-bot
857989cf65 Fix #158: Kontengruppierung, Kontrastfarbe und Helper-Boilerplate in View gebündelt 2026-08-11 06:24:47 +02:00
fds2610-bot
3acd0cea5c Fix #156: Direkte SQL-Aufrufe aus Controllern in die Modellschicht verschoben 2026-08-10 21:13:11 +02:00
fds2610-bot
cc9f497165 Fix #147: Benutzerverwaltung nur noch für Admins zugänglich 2026-08-09 20:21:04 +02:00
fds2610-bot
88d9cc53ff Fix #155: AfA-Buchungen laufen jetzt über Booking::createAfa()/reverseAfa()
AssetController setzte INSERT INTO bookings bislang direkt ab und umging
damit die Sperre des Geschäftsjahres, den transaktionalen Schutz der
Nummernvergabe und ordnete Stornos dem falschen Geschäftsjahr zu.
2026-08-03 22:09:16 +02:00
fds2610-bot
3ba3912fa4 Fix #167: Dashboard-Kacheln rechnen wie die EÜR und führen auf ihre Einzelbuchungen 2026-08-02 16:50:42 +02:00
fds2610-bot
c9afc3e33f Fix #165: Ereignisse zeigen Fehler und Warnungen aus dem ganzen System 2026-08-02 16:50:18 +02:00
fds2610-bot
e81df45382 Fix #170: Tests laufen als www-data und räumen angelegte Dateien selbst auf 2026-08-02 16:12:47 +02:00
fds2610-bot
7cea573ffc Fix #e2e: E2E-Tests ergänzt, /accounts/new und /assets/new lieferten HTTP 500
Steuerkram an den e2e-runner angebunden (tests/e2e/, 44 Playwright-Tests).
Der erste Smoke-Lauf fand zwei Seiten mit HTTP 500: AccountController::create
las $_GET['from'] ungeprüft, assets/form.php nutzte $testMode und
$defaultKontoId außerhalb des Bearbeiten-Zweigs. Beides war bis zur
Fehler-Härtung (#142) nur eine stille Warning.

Test 67 räumt sein Belegverzeichnis jetzt mit ab - es blieb als root-eigenes
Verzeichnis liegen und blockierte spätere echte Uploads mit HTTP 500.

Test 77 (neu) sichert die Löschsperre von Beleg::delete() ab.
2026-08-02 11:58:33 +02:00
fds2610-bot
934532fac9 Fix #zahlungsstatus: Rechnungsstatus folgt automatisch den erfassten Zahlungen 2026-07-31 20:01:32 +02:00
fds2610-bot
117c9a5c88 Fix #xml-rechnung: XML-Download (EN 16931 / XRechnung 3.0) in der Rechnungs-Detailansicht
XML-Symbol neben dem PDF-Symbol lädt die Rechnung als reine XML-Datei
(Profil XRechnung 3.0, CIUS von EN 16931). Fehlende Stamm- oder
Rechnungsdaten verhindern den Download nicht, werden aber mit BT-Nummer
in der Detailansicht ausgewiesen. Die PDF-Einbettung bleibt bei
Factur-X EN16931.
2026-07-31 18:20:16 +02:00
fds2610-bot
54fa6dee58 Fix #150: Logo-Upload repariert, Nutzdaten nach data/ getrennt, Backups vollständig 2026-07-31 16:22:09 +02:00
fds2610-bot
ed675c8e01 Fix #135: Stored XSS über XSLT in hochgeladenen XML-Belegen behoben 2026-07-27 12:13:55 +02:00
fds2610-bot
64898195a3 Fix #132: Reflektiertes XSS über _error-Parameter behoben 2026-07-27 12:07:29 +02:00
fds2610-bot
fc7ad72b96 Fix #131: CSV-Formel-Injection im Anlagelisten-Export behoben 2026-07-27 12:03:49 +02:00
fds2610-bot
254761082f Fix #136: CSRF-Schutz für GET /bank/direkt/{id}/run ergänzt 2026-07-27 11:53:48 +02:00
fds2610-bot
3e92662d92 Fix #138: Lieferanten-Typeahead in der Belegliste ergänzt 2026-07-27 07:12:37 +02:00
fds2610-bot
87ccb00f95 Fix #139: Ereignisanzeige aktualisiert sich automatisch (Ein-/Aus-Button) 2026-07-26 16:35:36 +02:00
fds2610-bot
e3c47f7d89 Fix #127: SSRF-Schutz für nextcloud_url beim Belegimport 2026-07-12 06:13:56 +02:00
fds2610-bot
eeeec1e94d Fix #121: Session-Cookie mit HttpOnly, SameSite und Secure gehärtet 2026-07-10 14:43:30 +02:00
fds2610-bot
1d93ab8662 Fix #122: Brute-Force-Schutz für /login (Account-Lockout nach Fehlversuchen) 2026-07-10 14:37:22 +02:00
fds2610-bot
6292c90fc5 Fix #119: SMTP-/Nextcloud-Passwörter verschlüsselt gespeichert, kein Klartext im HTML mehr 2026-07-08 07:48:16 +02:00
fds2610-bot
f6eb71ddd7 Fix #118: SSRF über fints_url-Feld bei Bankverbindungen verhindert 2026-07-08 07:45:08 +02:00
fds2610-bot
d57f334229 Fix #117: E-Mail-Header-/SMTP-Command-Injection über Empfänger-/CC-Adressen verhindert 2026-07-08 07:41:44 +02:00
fds2610-bot
649684a77b Fix #116: Beleg-Uploads aus dem Web-Root entfernt (nach data/uploads verschoben) 2026-07-08 07:37:45 +02:00
fds2610-bot
d4602368e7 Fix #111: Zwei zusätzliche CC-E-Mail-Adressen pro Kunde 2026-07-02 21:08:11 +02:00
fds2610-bot
1fec39da9b Fix #109: Ereignisse-Log für Nextcloud-Import 2026-06-29 18:21:05 +02:00
fds2610-bot
6ce2c72cd9 Fix #108: Lieferant in Belegliste inline bearbeiten 2026-06-29 18:15:39 +02:00
FDS
8b6ab6820e fix: CSV-Importformat in Direktverbindungs-Dialog ergänzen (closes #102) 2026-06-11 19:03:43 +02:00
FDS
1a23b3e11d Fix #55: Verbindungsfehler-Fallback – kein Retry-Loop, spezifische Fehlermeldung 2026-06-08 21:20:33 +02:00
FDS
54f7d9bd38 Fix #55: LLM-Verbindungstest mit Diagnoseausgabe
- LlmService::testConnection() gibt cURL-Fehler, HTTP-Code, Antwortzeit und verfügbare Modelle zurück
- probeOllama() schreibt cURL-Fehler ins PHP-Fehlerlog
- Einstellungsseite: Button "Verbindung testen" mit Inline-Diagnose und Firewall-Hinweis
- Route POST /settings/llm-test
2026-06-08 21:03:54 +02:00
fds2610-bot
308a826c3e Feature: PayPal-Import – STATUS-Fix, Auto-Regeln (Authorization ignorieren, Transfer/Bank-Gegenbuchung paaren) 2026-06-08 17:00:41 +02:00
fds2610-bot
6bff984ca0 Fix: Buchungs-Redirect, Steuerart-Label, Bankbuchungs-Listenansicht
- Nach Buchung aus Bank-Kontext bleibt Ansicht auf dem Beleg (kein Redirect zu /bank)
- Steuerart-Option 'Normal' umbenannt in 'Normal (Inland/Drittland)'
- Offene-Belege-Tabelle: erste drei Spalten gestapelt, kein doppeltes €-Zeichen
2026-05-30 14:23:05 +02:00
fds2610-bot
af83ae8592 Feature: E-Mail-Betreff und -Text pro Kunde statt global
- Felder mail_subject_template / mail_body_template in customers-Tabelle
- Kundenformular um E-Mail-Vorlage-Abschnitt erweitert
- EmailService verwendet Kundenvorlage mit Fallback auf Standardtext
- Globale E-Mail-Text-Einstellung in Einstellungen entfernt
- Migration 082: neue Spalten in customers
2026-05-30 14:22:57 +02:00
fds2610-bot
3fe5015027 Feature: Buchungsvorlagen – Bankbuchung verknüpfen, Zahldatum, Standard-Lieferant
- Vorlagenbuchung verknüpft jetzt korrekt die Bankbuchung (bank_tx_id)
- Buchungs-Redirect bleibt nach Vorlagenbuchung auf dem Beleg
- Zahldatum (Wertstellung der Bankbuchung) im Vorlagendialog neben Belegdatum
- USt-Felder im Vorlagendialog als Text (nicht mehr als editierbare Inputs)
- Standard-Lieferant pro Vorlage speicherbar; wird im Buchungsdialog vorbelegt
- Migration 081: spalte standard_lieferant in buchungsvorlagen
2026-05-30 14:22:48 +02:00
fds2610-bot
f9b6a5d303 Feature: Buchungsvorlagen im Buchungsdialog
Neues Vorlagen-Badge zwischen Bank-Badge und Buchungsformular in
/belege/{id}. Vorlage auswählen öffnet modalen Dialog mit Feldgruppen
(Metadaten, USt-Zeilen mit Live-Berechnung, Zahlungskonto). Buchungen
werden per VorlageBuchungsService aus JSON-Regeln in der DB erstellt.
Pflege-UI unter /einstellungen/buchungsvorlagen (CRUD inkl. Felder und
Regeln). Initiale Vorlage "Essensbeleg n. abzugsfähig (nur USt.)" via
Migration 080 eingespielt. Test 42 prüft CRUD und Buchungsausführung.
2026-05-28 21:57:04 +02:00
fds2610-bot
5546c1a9e7 Bugfixes und Kleinigkeiten Anlagegüter 2026-05-24 15:22:18 +02:00
fds2610-bot
b637b7b5ab Anlagevermögen überarbeitet, AFA 2026-05-24 12:56:21 +02:00
fds2610-bot
4eb622fa7d Fix: Belegsumme und Bankzuordnung nach Storno korrekt berechnen 2026-05-23 15:23:56 +02:00
fds2610-bot
4b25961190 Feature: FinTS-TAN-Verfahren per Verbindung konfigurierbar + Decoupled-Polling-Fix 2026-05-23 13:51:18 +02:00
fds2610-bot
6ba281cfc1 Feature: "Abrufen ab"-Auswahl im Bearbeiten-Dialog der Direktverbindungen 2026-05-22 13:02:32 +02:00