Matthias Hochmeister
55ded22a6f
new features
2026-03-23 16:58:46 +01:00
Matthias Hochmeister
948b211f70
new features
2026-03-23 16:54:09 +01:00
Matthias Hochmeister
690f260b71
new features
2026-03-23 16:47:36 +01:00
Matthias Hochmeister
8c66492b27
new features
2026-03-23 16:09:42 +01:00
Matthias Hochmeister
bfcf1556da
new features
2026-03-23 15:07:17 +01:00
Matthias Hochmeister
3326156b15
new features
2026-03-23 14:01:39 +01:00
Matthias Hochmeister
5032e1593b
new features
2026-03-23 13:08:19 +01:00
Matthias Hochmeister
83b84664ce
rights system
2026-03-23 12:35:28 +01:00
Matthias Hochmeister
725d4d1729
rights system
2026-03-23 12:18:46 +01:00
Matthias Hochmeister
fa10467f21
rights system
2026-03-23 12:12:21 +01:00
Matthias Hochmeister
a575b61d26
rights system
2026-03-23 12:00:09 +01:00
Matthias Hochmeister
d173c8235e
rights system
2026-03-23 11:48:00 +01:00
Matthias Hochmeister
515f14956e
rights system
2026-03-23 10:50:52 +01:00
Matthias Hochmeister
2bb22850f4
rights system
2026-03-23 10:07:53 +01:00
Matthias Hochmeister
c15d4a50e0
update
2026-03-16 15:26:43 +01:00
Matthias Hochmeister
f3ad989a9e
update
2026-03-16 15:01:09 +01:00
Matthias Hochmeister
215528a521
update
2026-03-16 14:41:08 +01:00
Matthias Hochmeister
8d03c13bee
update
2026-03-14 14:10:05 +01:00
Matthias Hochmeister
ef9d2ff4a2
update
2026-03-13 21:49:42 +01:00
Matthias Hochmeister
7245cd577e
update
2026-03-13 21:33:18 +01:00
Matthias Hochmeister
b7b4fe2fc9
update
2026-03-13 21:01:54 +01:00
Matthias Hochmeister
bc6d09200a
update
2026-03-13 19:23:39 +01:00
Matthias Hochmeister
602d9fd5b9
update
2026-03-13 16:05:48 +01:00
Matthias Hochmeister
75c919c063
update
2026-03-13 15:42:15 +01:00
Matthias Hochmeister
20d2c9093a
update
2026-03-13 15:09:43 +01:00
Matthias Hochmeister
7833dca29c
update
2026-03-13 15:04:40 +01:00
Matthias Hochmeister
7215e7f472
update
2026-03-13 14:01:06 +01:00
Matthias Hochmeister
e26d77ef35
update nextcloud for file support
2026-03-13 13:46:08 +01:00
Matthias Hochmeister
e49b4f63ae
update nextcloud handling
2026-03-13 12:24:14 +01:00
Matthias Hochmeister
243da302c7
update backend stuck/stall
2026-03-13 08:30:05 +01:00
Matthias Hochmeister
f309096497
mark chat as read
2026-03-13 08:01:55 +01:00
Matthias Hochmeister
34ca007f9b
resolve issues with new features
2026-03-12 17:20:32 +01:00
Matthias Hochmeister
68586b01dc
resolve issues with new features
2026-03-12 16:42:21 +01:00
Matthias Hochmeister
5aa309b97a
resolve issues with new features
2026-03-12 16:05:01 +01:00
Matthias Hochmeister
a5cd78f01f
feat: bug fixes, layout improvements, and new features
...
Bug fixes:
- Remove non-existent `role` column from admin users SQL query (A1)
- Fix Nextcloud Talk chat API path v4 → v1 for messages/send/read (A2)
- Fix ServiceModeTab sync: useState → useEffect to reflect DB state (A3)
- Guard BookStack book_slug with book_id fallback to avoid broken URLs (A4)
Layout & UI:
- Chat panel: sticky full-height positioning, main content scrolls independently (B1)
- Vehicle booking datetime inputs: explicit text color for dark mode (B2)
- AnnouncementBanner moved into grid with full-width span (B3)
Features:
- Per-user widget visibility preferences stored in users.preferences JSONB (C1)
- Link collections: grouped external links in admin UI and dashboard widget (C2)
- Admin ping history: migration 026, checked_at timestamps, expandable history rows (C4)
- Service mode end date picker with scheduled deactivation display (C5)
- Vikunja startup config logging and configured:false warnings (C7)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-12 14:57:54 +01:00
Matthias Hochmeister
cf490cc9ad
fix: install missing packages and fix TS errors
...
- Install @mui/x-data-grid in frontend (fixes AuditLog)
- Install jose in backend (fixes authentik service)
- Update .npmrc to use npm.apple.com proxy
- Fix AuditLog localeText to use MUI DataGrid v7 API keys
- Fix banner controller: cast req.params.id to string
- Remove unused logger import in banner.service.ts
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-12 12:04:54 +01:00
Matthias Hochmeister
cd68bd3795
annoucement banners, calendar pdf export, vehicle booking quck-add, even quick-add
2026-03-12 11:47:08 +01:00
Matthias Hochmeister
71a04aee89
resolve issues with new features
2026-03-12 11:37:25 +01:00
Matthias Hochmeister
d5be68ca63
resolve issues with new features
2026-03-12 10:21:26 +01:00
Matthias Hochmeister
31f1414e06
adding chat features, admin features and bug fixes
2026-03-12 08:16:34 +01:00
Matthias Hochmeister
7b14e3d5ba
fix bookstack search
2026-03-11 14:02:25 +01:00
Matthias Hochmeister
3c9b7d3446
apply security audit
2026-03-11 13:51:01 +01:00
Matthias Hochmeister
93a87a7ae9
apply security audit
2026-03-11 13:18:10 +01:00
Matthias Hochmeister
e9463c1c66
add vikunja integration
2026-03-05 18:07:18 +01:00
Matthias Hochmeister
d3561c1109
new features, bookstack
2026-03-03 21:30:38 +01:00
Matthias Hochmeister
5a6fc85a75
add features
2026-03-03 17:01:53 +01:00
Matthias Hochmeister
c431c1af83
userId bug
2026-03-03 15:00:53 +01:00
Matthias Hochmeister
5dfaf7db54
bug fixes
2026-03-03 14:45:46 +01:00
Matthias Hochmeister
d91f757f34
bug fixes
2026-03-03 11:45:08 +01:00
Matthias Hochmeister
2306741c4d
feat: dashboard widgets, auth fix, profile names, dynamic groups
...
- Add VehicleDashboardCard: self-contained widget modelled after
AtemschutzDashboardCard, shows einsatzbereit ratio and inspection
warnings inline; replaces StatsCard + InspectionAlerts in Dashboard
- Add EquipmentDashboardCard: consolidated equipment status widget
showing only aggregated counts (no per-item listing); replaces
EquipmentAlerts component in Dashboard
- Fix auth race condition: add authInitialized flag to api.ts so 401
responses during initial token validation no longer trigger a
spurious redirect to /login; save intended destination before login
redirect and restore it after successful auth callback
- Fix profile firstname/lastname: add extractNames() helper to
auth.controller.ts that falls back to splitting userinfo.name when
Authentik does not provide separate given_name/family_name fields;
applied on both create and update paths
- Dynamic groups endpoint: replace hardcoded KNOWN_GROUPS array in
events.controller.ts with a DB query (SELECT DISTINCT unnest
(authentik_groups) FROM users); known slugs get German labels via
lookup map, unknown slugs are humanized automatically
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-03 10:28:31 +01:00