v2026-02-17.6 - Incident Journal Import, Icons & Search
New Features
-
Excel/CSV Import (#58): Import existing incident documentation from
.xlsxor.csvfiles. Auto-detects column mapping (date, title, description), handles German date formats (DD.MM.,DD.MM.YYYY), and recognizes month headers (e.g. "November 2023") for year context. Preview with checkboxes and duplicate detection before confirming import. -
Auto-detect Theme Icons: Incident titles are automatically matched against keyword categories (phone, technician, outage, mail, complaint, contract, measurement, authority, billing, hardware, documentation, legal) with appropriate SVG icons displayed in the journal table, modal, and import preview.
-
Customizable Icons: Users can override auto-detected icons via an icon picker in the incident edit modal. Three-tier resolution: manual override > auto-detect > none.
-
Full-text Search: Debounced search bar with result highlighting across date, title, and description fields. Result count display with clear button.
-
Month/Year Grouping: Sticky month/year section headers in the journal table when sorted by date.
-
Batch Delete: "Delete All" button with double confirmation (confirm dialog + type "DELETE") for clearing the entire journal.
Improvements
- Full i18n Support: All 42+ new UI strings fully localized in German, English, Spanish, and French, including localized month names for group headers and icon tooltips.
- Word-boundary Icon Matching: Icon keyword detection uses regex word boundaries to prevent false positives (e.g. "Brief upstream power fluctuation" no longer triggers the mail icon).
Technical
- New
app/import_parser.pymodule for Excel/CSV parsing withopenpyxl - New API endpoints:
POST /api/incidents/import/preview,POST /api/incidents/import/confirm,DELETE /api/incidents/batch - SQLite schema migration:
icon TEXTcolumn added to incidents table - Search via
GET /api/incidents?search=querywith LIKE matching