|
|
56954d68f3
|
Konfigurierbare Tracking-Patterns mit Live-Vorschau [deploy]
Deploy mahnung / deploy (push) Failing after 4s
Datenmodell:
- Neue Tabelle llx_mahnung_trackingpattern (provider, label, regex,
url_template, priority, active). Auto-Anlage + Default-Seed im setup.php
und in modMahnung::init() — idempotent.
Default-Patterns (priority hoeher = spezifischer, zuerst gepruef):
- DHL Paket 20-stellig (90), DPAG Einschreiben RR...DE (85), UPS 1Z... (80),
- DHL 11-stellig Online-Frankierung (30), Hermes 14-stellig (25), DPD (20).
Setup-Seite admin/tracking_patterns.php:
- CRUD (Anlegen/Bearbeiten/Aktivieren-Deaktivieren/Loeschen)
- Live-Vorschau: Regex + Beispieltext + URL-Template werden waehrend
des Tippens (debounce 300ms) via ajax/regex_preview.php ausgewertet.
UI zeigt: Regex-Syntax-Status, gefundene Sendungsnummer, vollstaendige
Tracking-URL (anklickbar).
- Validierung: Delimiter / # ~ Whitelist, https://-Pflicht, {nr}-Platzhalter,
max 255 Zeichen Regex.
AJAX-Endpoint ajax/regex_preview.php:
- ReDoS-Schutz: max 10 KB Sample, pcre.backtrack_limit=100k.
- POST-only (mit Setup-Recht), JSON-Response.
card.php:
- tracking-URL kommt jetzt aus MahnungTrackingPattern::urlFor() (DB-Lookup
nach Provider) statt hardcoded Mahnung::trackingUrl() — letztere bleibt
als Fallback.
Setup-Seite: neuer Button "Tracking-Muster (Regex)" oben rechts.
Lang-Keys: 23 neue (de_DE + en_US) fuer Pattern-CRUD + Live-Vorschau.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-05-11 12:04:42 +02:00 |
|