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
34ee80b8c1
new features
2026-03-23 14:10:20 +01:00
Matthias Hochmeister
1d011ec2df
new features
2026-03-23 14:08:01 +01:00
Matthias Hochmeister
3326156b15
new features
2026-03-23 14:01:39 +01:00
Matthias Hochmeister
d2dc64d54a
new features
2026-03-23 13:14:33 +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
d780a284d3
update
2026-03-16 15:04:15 +01:00
Matthias Hochmeister
f3ad989a9e
update
2026-03-16 15:01:09 +01:00
Matthias Hochmeister
550a5a4883
update
2026-03-16 14:42:39 +01:00
Matthias Hochmeister
215528a521
update
2026-03-16 14:41:08 +01:00
Matthias Hochmeister
5f329bb5c1
update
2026-03-16 12:11:32 +01:00
Matthias Hochmeister
8d03c13bee
update
2026-03-14 14:10:05 +01:00
Matthias Hochmeister
789f27c37e
update
2026-03-13 21:50:40 +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
b3266afbf8
update
2026-03-13 21:27:07 +01:00
Matthias Hochmeister
b7b4fe2fc9
update
2026-03-13 21:01:54 +01:00
Matthias Hochmeister
f5d1f7b061
update
2026-03-13 20:02:46 +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
03155dcf7a
update
2026-03-13 15:49:58 +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
3ecae37d72
update
2026-03-13 14:13:39 +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
cfb70e62c7
update
2026-03-13 13:06:27 +01:00
Matthias Hochmeister
e49b4f63ae
update nextcloud handling
2026-03-13 12:24:14 +01:00
Matthias Hochmeister
11fb533ad6
update FDISK sync
2026-03-13 10:27:57 +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
34f246af24
resolve issues with new features
2026-03-12 18:36:22 +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
21b7be22db
feat: service mode (maintenance mode)
...
Admins can toggle maintenance mode from the admin dashboard (new
"Wartung" tab). When active, all non-admin users see a full-page
maintenance screen instead of the app.
- Backend: GET /api/config/service-mode endpoint (authenticated)
- Backend: stores state in app_settings key 'service_mode'
- Frontend: ServiceModeGuard wraps all ProtectedRoutes
- Frontend: ServiceModePage full-screen maintenance UI
- Frontend: ServiceModeTab in admin dashboard with toggle + message
- Admins (dashboard_admin group) always bypass the guard
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-12 13:21:49 +01:00
Matthias Hochmeister
6c1cbb0ef3
fix: remove volatile NOW() from banner index predicate
...
PostgreSQL forbids volatile functions in partial index predicates.
Replace with two plain indexes on starts_at and ends_at instead —
the active-banner filtering is handled in the query WHERE clause.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-12 13:08:26 +01:00
Matthias Hochmeister
36c222d32a
fix: remove Apple npm registry from lock files and .npmrc
...
Replace all artifacts.apple.com and npm.apple.com resolved URLs in
package-lock.json with registry.npmjs.org so `npm install` works on
any server without Apple VPN/proxy access.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-12 12:21:40 +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