Commit Graph

  • 4ec719ad0a feat(persoenliche-ausruestung): add quantity field and article-grouped replacement flow in order dialog main Matthias Hochmeister 2026-04-24 12:36:28 +02:00
  • 9410441ce2 feat(checklisten): rework checklist scheduling, overview, and execution UI Matthias Hochmeister 2026-04-20 18:37:00 +02:00
  • c55ec55e1b feat(admin): move integration URLs and credentials to GUI settings Matthias Hochmeister 2026-04-20 16:29:12 +02:00
  • 65820805b0 style(frontend): format Lehrgang section in member detail to match other Atemschutz sub-sections Matthias Hochmeister 2026-04-20 11:53:48 +02:00
  • 99792d93dd fix(sync): calculate G26 gueltig_bis (default 5y, override via Anmerkungen) and load all Untersuchungen via URL param Matthias Hochmeister 2026-04-20 11:18:18 +02:00
  • 752dfe474c change dat format in member overview, sync exams to atemschutz tool, rework member detail page Matthias Hochmeister 2026-04-20 10:32:20 +02:00
  • d5291360c9 fix(sync): use frequency-based date column detection for Untersuchungen to find all exam rows Matthias Hochmeister 2026-04-20 08:04:44 +02:00
  • 84254a0b71 fix(sync): use native form submit for Untersuchungen pagination instead of ViewState URL hack Matthias Hochmeister 2026-04-19 19:45:12 +02:00
  • 3b4a14661c fix(sync): use ViewState extraction for Untersuchungen pagination instead of form submit Matthias Hochmeister 2026-04-19 19:37:17 +02:00
  • b401b75b9a fix(sync): await Untersuchungen form navigation to prevent Fahrgenehmigungen page abort Matthias Hochmeister 2026-04-19 19:33:51 +02:00
  • d796fae978 feat(sync): fix exam sync pagination, add AGL/AT20-Theorie lehrgang variants with yellow checkmark Matthias Hochmeister 2026-04-19 19:28:22 +02:00
  • ed3ee143dd fix(sync): load all Untersuchungen via URL param, accept AT20 "mit ausgezeichnetem Erfolg" for atemschutz lehrgang Matthias Hochmeister 2026-04-19 17:47:59 +02:00
  • 8c25cb0d40 feat(admin): add reset-atemschutz option to data management tab Matthias Hochmeister 2026-04-19 17:43:48 +02:00
  • 3f92156115 fix(sync): fix Untersuchungen column parsing, sync exams to atemschutz profile, handle legacy shifted data Matthias Hochmeister 2026-04-19 17:26:37 +02:00
  • 54a110d17b fix(sync): fix Untersuchungen column parsing and sync Leistungstest/Atemschutztauglichkeit dates to atemschutz profile Matthias Hochmeister 2026-04-19 17:08:29 +02:00
  • 0a5402a9e5 feat(admin): add system logs viewer, tabbed data management, fix AT20 sync Matthias Hochmeister 2026-04-18 18:31:22 +02:00
  • 0a6377a64f fix(sync): remove debug file writing and optimize DB queries Matthias Hochmeister 2026-04-18 18:15:40 +02:00
  • 26df8b427e fix(mitglieder): improve Fahrgenehmigungen labels, pagination, and AT20 sync Matthias Hochmeister 2026-04-18 18:00:54 +02:00
  • e1c7f44e56 fix(sync): switch FDISK course scraper from Ausbildungen to Kurse page Matthias Hochmeister 2026-04-18 16:46:35 +02:00
  • 8e6868eb55 fix(permissions): restore sticky left column on permission rows to prevent checkbox overlap Matthias Hochmeister 2026-04-18 16:32:42 +02:00
  • bef5a685a8 fix(permissions): flatten permission matrix table to fix column alignment and scroll lag Matthias Hochmeister 2026-04-18 16:20:44 +02:00
  • fa9f50d982 fix(buchhaltung): show Übersicht tab first and count all booked transactions in budget overview Matthias Hochmeister 2026-04-18 16:16:50 +02:00
  • 219e5f1195 feat(geplante-nachrichten): show age in birthday list Matthias Hochmeister 2026-04-17 14:28:02 +02:00
  • 8ee2b9170d fix(geplante-nachrichten): resolve {{date_range}} template variable in content builders Matthias Hochmeister 2026-04-17 14:24:47 +02:00
  • 968b24156b fix(geplante-nachrichten): fix wrong column refs in content builders — abgesagt bool, join users for names, correct status values Matthias Hochmeister 2026-04-17 14:15:34 +02:00
  • d44f53a8a9 fix(geplante-nachrichten): cache rooms response 60s and pass Nextcloud errors through to frontend Matthias Hochmeister 2026-04-17 13:33:07 +02:00
  • 53c8be0f6d add clear error message for bot api Matthias Hochmeister 2026-04-17 13:29:09 +02:00
  • 72b575478b add error handling for bad credentials Matthias Hochmeister 2026-04-17 13:24:40 +02:00
  • e4c37ba219 fix(ausruestungsanfrage): correct API paths, assignment navigation, and pre-fill user on Zuweisung page Matthias Hochmeister 2026-04-17 13:07:15 +02:00
  • 68e4ed265f fix(geplante-nachrichten): use getAllConversations in getRooms to return full room list instead of top 3 Matthias Hochmeister 2026-04-17 12:47:13 +02:00
  • 169d045e4c feat(ausruestungsanfrage): show vendor order status and delivery progress in request detail Matthias Hochmeister 2026-04-17 12:39:40 +02:00
  • d8afcc1f63 fix(geplante-nachrichten): add /api prefix to all API paths, fix subscribe room token, unmask empty bot credentials, add Einzelnachrichten tab Matthias Hochmeister 2026-04-17 12:33:48 +02:00
  • fcca04cc39 fix(bestellungen): automate delivery status transitions, enable received-qty input for creators, and add im_haus tracking to positionen Matthias Hochmeister 2026-04-17 11:42:12 +02:00
  • 7d2ea57c17 fix(frontend): order status button colors, delivery gate logic, partial delivery chips, and scheduled message form tweaks Matthias Hochmeister 2026-04-17 10:50:42 +02:00
  • b91cf88812 add: add feature to schedule messages Matthias Hochmeister 2026-04-17 10:41:00 +02:00
  • 5811ac201e fix(geplante-nachrichten): distinguish unconfigured bot from unreachable Nextcloud in room picker Matthias Hochmeister 2026-04-17 09:47:31 +02:00
  • 510b44e48c fix(tool-config): merge partial updates instead of replacing, mask bot_app_password Matthias Hochmeister 2026-04-17 09:30:13 +02:00
  • 7532a19326 fix(geplante-nachrichten): read bot credentials from tool_config_nextcloud, add manual trigger endpoint Matthias Hochmeister 2026-04-17 09:20:18 +02:00
  • 8a0c4200ff feat(geplante-nachrichten): scheduled message rule engine with bot delivery, admin UI, and manual trigger Matthias Hochmeister 2026-04-17 09:10:57 +02:00
  • 6614fbaa68 feat(admin): centralize tool & module settings in Werkzeuge tab with per-tool permissions, DB-backed config, connection tests, and cog-button navigation Matthias Hochmeister 2026-04-17 08:37:29 +02:00
  • 6ead698294 refactor(sidebar): remove all dropdown sub-menus, flatten navigation to direct links Matthias Hochmeister 2026-04-16 16:25:06 +02:00
  • 1c071c7768 update docker version Matthias Hochmeister 2026-04-16 16:18:03 +02:00
  • dfcdd44aa4 refactor(admin): consolidate 10 flat tabs into 4 grouped tabs with sub-tabs, remove Bestellungen tab, replace Debug with FDISK Sync Matthias Hochmeister 2026-04-16 16:14:25 +02:00
  • e56075f38a fix(issues): allow priority+status change for assignees, dynamic owner transitions, kanban droppable columns; feat(persoenliche-ausruestung): configurable zustand Matthias Hochmeister 2026-04-16 14:08:05 +02:00
  • 2fe0db6d9a fix(persoenliche-ausruestung): wait for permissions before fetching overview to show all items Matthias Hochmeister 2026-04-16 09:17:36 +02:00
  • a6aeab80d4 feat(persoenliche-ausruestung): show catalog category, remove size/date columns, make zustand admin-configurable Matthias Hochmeister 2026-04-16 08:22:01 +02:00
  • 058ee721e8 feat(persoenliche-ausruestung): show catalog category, remove size/date columns, make zustand admin-configurable Matthias Hochmeister 2026-04-16 08:19:38 +02:00
  • dac0b79b3b eat(ausruestung): allow create role to view full list, add Mitglieder pagination, add admin reset for persoenliche Ausruestung Matthias Hochmeister 2026-04-16 07:52:36 +02:00
  • 3f8c4d151d fix(persoenliche-ausruestung): save characteristics on create/edit and add editable eigenschaft fields to assignment page Matthias Hochmeister 2026-04-15 20:06:02 +02:00
  • 260b71baf8 refactor(mitglieder): replace legacy status values (passiv/anwärter/ausgetreten/…) with aktiv/kind/jugend/reserve across backend, frontend, and sync Matthias Hochmeister 2026-04-15 19:43:18 +02:00
  • c1de8bd163 fix(dienstgrad): add ASB→Abschnittssachbearbeiter, remove non-existent ranks (FA/FF/BOI/BAM variants), sync DB constraint, TS types, and display map Matthias Hochmeister 2026-04-15 19:26:21 +02:00
  • eb2342684e feat(bestellungen): add optional "Für Mitglied" field, auto-populated from internal request submitter Matthias Hochmeister 2026-04-15 18:17:54 +02:00
  • 67fd0878ce fix(sync): add Sachbearbeiter to dienstgrad constraint; add catalog browser dialog for external order position Matthias Hochmeister 2026-04-15 18:05:39 +02:00
  • 9586822a32 fix(sync): scrape AusbildungenListEdit instead of KursteilnehmerListEdit, add selectAlleAnzeige, fix column detection; handle Sachbearbeiter dienstgrad and ignore placeholder handles Matthias Hochmeister 2026-04-15 17:40:08 +02:00
  • 55b2fc1cf4 fix(sync): switch to full member list scrape so all FDISK members are synced, not just known accounts Matthias Hochmeister 2026-04-15 14:44:39 +02:00
  • 719b7bfcdb feat(sync): sync all FDISK members, auto-creating dashboard accounts for users not yet logged in Matthias Hochmeister 2026-04-15 14:36:57 +02:00
  • dab4a45b79 fix(shop): don't load assigned items until a user is explicitly selected Matthias Hochmeister 2026-04-15 14:21:30 +02:00
  • c3fcbd1467 fix(bestellungen): use status label as button text, all progress buttons blue, keep red for reject only Matthias Hochmeister 2026-04-15 14:03:54 +02:00
  • 6ff531f79c refactor(mitglieder): split member profile into Stammdaten/Ausrüstung/Qualifikationen tabs with sub-tabs per qualification type Matthias Hochmeister 2026-04-15 13:55:16 +02:00
  • 50dbf6e9fd fix(multi): FDISK sync, order UX, Ausbildungen display, untracked items Matthias Hochmeister 2026-04-15 13:22:04 +02:00
  • 916aa488d2 change label Matthias Hochmeister 2026-04-15 11:18:25 +02:00
  • 4c01683c10 fix(ausruestung): show untracked assignments, item traits in order wizard, receipt gate for completion, PDF phone + last-row line Matthias Hochmeister 2026-04-15 10:58:51 +02:00
  • 279cc03b6b feat(ausruestung): catalog-driven item tracking, im_haus in overview, order quantity override, fix stale queries Matthias Hochmeister 2026-04-15 10:20:36 +02:00
  • 633a75cb0b feat(ausruestungsanfrage): add personal item tracking, catalog enforcement, and detail pages Matthias Hochmeister 2026-04-14 16:49:20 +02:00
  • e6b6639fe9 fix(buchhaltung): format transaction IDs as YYYY/NR and deduplicate dashboard widgets Matthias Hochmeister 2026-04-14 15:00:38 +02:00
  • a94d486a42 fix(buchhaltung): prevent form reset on query refetch during transaction edit Matthias Hochmeister 2026-04-14 14:46:34 +02:00
  • 7392bfc29f feat(buchhaltung): replace transaction dialog with dedicated form page, enforce full field validation before booking Matthias Hochmeister 2026-04-14 14:41:30 +02:00
  • 967cad5922 feat(buchhaltung): add edit support for pending transactions Matthias Hochmeister 2026-04-14 13:46:07 +02:00
  • f403c73334 fix(buchhaltung): clean up tab labels, remove badge indicator, add session notification for pending transactions Matthias Hochmeister 2026-04-14 13:35:40 +02:00
  • 3a8f166121 refactor(buchhaltung): simplify transaction workflow to two states, reorder tabs, guard booking, add overview divider Matthias Hochmeister 2026-04-14 13:16:45 +02:00
  • 588d8e81db widget icon rework, widget grouping rework Matthias Hochmeister 2026-04-14 10:53:03 +02:00
  • 4fbea8af81 feat: widget icons, dark theme tables, breadcrumb removal, bookkeeping rework, personal equipment pages, PDF/order improvements Matthias Hochmeister 2026-04-14 10:35:40 +02:00
  • 4c4fb01e68 fix: correct table name ausbildung (not ausbildungen) in fdisk and purge handlers Matthias Hochmeister 2026-04-13 20:18:41 +02:00
  • 25d418539e fix(migration): make trigger creation idempotent with DROP IF EXISTS Matthias Hochmeister 2026-04-13 20:15:29 +02:00
  • 67adc4f5aa fix(migration): add required label+sort_order columns to permissions INSERT Matthias Hochmeister 2026-04-13 20:06:06 +02:00
  • bb95a66ffe fix(migration): fix feature_groups column names (label, sort_order not name/maintenance_mode) Matthias Hochmeister 2026-04-13 20:04:10 +02:00
  • 1ad328edd3 fix(migration): use correct column name authentik_group in group_permissions seed Matthias Hochmeister 2026-04-13 20:01:20 +02:00
  • 1215e9ea70 feat: personal equipment tracking, order assignment, purge fix, widget consolidation Matthias Hochmeister 2026-04-13 19:19:35 +02:00
  • b477e5dbe0 feat: user data purge, breadcrumbs, first-login dialog, widget consolidation, bookkeeping cascade Matthias Hochmeister 2026-04-13 16:15:28 +02:00
  • a0b3c0ec5c fix(dashboard): fix group/widget state loss due to partial preference saves and stale closures Matthias Hochmeister 2026-04-13 15:28:20 +02:00
  • b275d4baa5 feat(dashboard): make widget groups reorderable via drag-and-drop Matthias Hochmeister 2026-04-13 15:15:50 +02:00
  • dd5cd71fd1 feat(dashboard,admin): widget group customization and FDISK data purge Matthias Hochmeister 2026-04-13 15:06:34 +02:00
  • f4690cf185 feat(frontend): visual design overhaul — Inter font, softer cards/shadows, red-themed profile banner, modern typography hierarchy, and refreshed color palette Matthias Hochmeister 2026-04-13 11:07:28 +02:00
  • 43ce1f930c feat(frontend): implement unified design system with 17 reusable template components, skeleton loading states, and golden-ratio-based layouts Matthias Hochmeister 2026-04-13 10:43:27 +02:00
  • 5acfd7cc4f feat(buchhaltung): add transfers, bank statements, Haushaltsplan, and PDF export Matthias Hochmeister 2026-03-30 17:05:18 +02:00
  • 2eb59e9ff1 feat(buchhaltung): add audit trail UI to konto detail transaction table Matthias Hochmeister 2026-03-30 16:03:58 +02:00
  • d833b3c224 feat(buchhaltung): recurring job, budget alerts, audit endpoint, konto-typen CRUD Matthias Hochmeister 2026-03-30 15:04:06 +02:00
  • bbbfc8eaaa fix(buchhaltung): remove budget utilization bars from accounts overview Matthias Hochmeister 2026-03-30 14:44:06 +02:00
  • f27e3134ca fix(buchhaltung): respect budget_typ in konten manage table and pod detail subaccounts view Matthias Hochmeister 2026-03-30 14:37:04 +02:00
  • 293848c710 fix(buchhaltung): use theme-aware color for category header rows in dark mode Matthias Hochmeister 2026-03-30 14:22:56 +02:00
  • fcfee85efd fix(buchhaltung): show budget-typ label in pod settings view mode Matthias Hochmeister 2026-03-30 14:20:57 +02:00
  • b21abce9e3 feat(buchhaltung): budget types, erstattungen, recurring tab move, overview dividers, order completion guard Matthias Hochmeister 2026-03-30 14:07:04 +02:00
  • 13aa4be599 feat(buchhaltung): add categories, recurring tx scheduling, sub-pot budget validation, and UX polish Matthias Hochmeister 2026-03-30 12:56:33 +02:00
  • 86cb175aeb feat(buchhaltung): move collapse arrows to row end, always-visible filters, summary row, sortable transactions, account manage page Matthias Hochmeister 2026-03-30 11:59:05 +02:00
  • 4e42d4077a fix: hard-delete konten instead of soft-deactivate, convert kontonummer to INTEGER with arithmetic sub-account derivation Matthias Hochmeister 2026-03-30 11:25:48 +02:00
  • e4f1d8864a refactor: change kontonummer to INTEGER, derive sub-account number as parent + suffix (arithmetic) Matthias Hochmeister 2026-03-30 11:23:07 +02:00
  • 5f25d644f4 feat: add Buchhaltung data reset (Transaktionen, Konten, Bankkonten) to admin DataManagementTab Matthias Hochmeister 2026-03-30 11:16:57 +02:00
  • 333b94f64e fix: read error message from ApiError.message instead of err.response in konto mutation onError Matthias Hochmeister 2026-03-30 11:11:17 +02:00
  • 75b07d6afc fix: use fahrzeuge_mit_pruefstatus view in notification job to resolve missing naechste_pruefung_tage column Matthias Hochmeister 2026-03-30 11:08:25 +02:00
  • b7015ace84 fix: return 409 on duplicate kontonummer, show server error in snackbar, block save when sub-account suffix is empty Matthias Hochmeister 2026-03-30 11:03:53 +02:00