a54ff08ebb
feat: storage health monitor with UI alert on drive loss
...
Detect a disconnected or read-only recordings drive and surface it
without stopping recording or live view:
- storage.go: probe path existence, mount point, writability and free
space every 30s; capture mount expectation at startup so a clean
unmount (writes falling through to root fs) is also caught
- GET /api/storage endpoint; storage fields in /api/status
- red UI banner while storage is unavailable
- log ALERT on loss, OK on recovery
2026-10-10 07:17:28 +01:00
953360d251
fix: real camera online status — checks latest.jpg modification time
2026-08-10 07:03:31 +01:00
dc15b8ffd4
feat: download button in clip player — watch first, then save
2026-08-10 07:01:15 +01:00
efcc10f5fd
feat: camera config proxy — access cameras remotely through NextNVR
2026-08-10 06:47:02 +01:00
dc236e561d
feat: storage path in Settings UI, deploy creates directory
2026-08-06 19:41:14 +01:00
be801e9d27
fix: save status clears after reload, shows done message
2026-08-06 19:35:20 +01:00
deb2380507
fix: toggle viewer_port directly instead of viewer.enabled — no ambiguity
2026-08-06 19:12:10 +01:00
700a0ab4f0
fix: use element IDs for auth checkboxes — reliable checked state
2026-08-06 19:02:21 +01:00
f548ec8fe2
fix: reload config after save so viewer toggle state is correct
2026-08-06 18:56:19 +01:00
2032402597
fix: auth bypass removed, sanitize names, json errors, viewer port toggle
2026-08-06 18:43:14 +01:00
f280de445f
fix: store real camera password in data attribute, not masked value
2026-08-06 18:04:56 +01:00
83ed6516f1
fix: exclude auth card from camera save — selector scoped to [data-id]
2026-08-06 18:02:09 +01:00
7ebeb73f62
fix: missing function declaration for addCamera
2026-08-06 17:54:05 +01:00
1942c2bb35
feat: clean settings cards — name + desc, advanced collapsed, add/remove
2026-08-06 17:50:16 +01:00
ebc05762b0
feat: add/remove cameras in Settings, empty fallback fix
2026-08-06 17:40:19 +01:00
30547fc354
fix: remove auth from first-run wizard, skip empty-name cameras in grid
2026-08-06 17:26:55 +01:00
ef41c29981
fix: move auth collection after config fetch — lexical scope bug
2026-08-06 17:20:15 +01:00
4a9266e249
feat: auth management card in Settings — edit master/viewer, enable/disable
2026-08-06 15:32:10 +01:00
02ee23281c
feat: config hot-reload — save restarts services automatically
2026-08-06 14:37:02 +01:00
7a4c97e760
fix: fallback camera name from IP when ONVIF returns no model
2026-08-06 13:20:27 +01:00
872c8c2273
fix: sanitize camera names — spaces → underscores for CLI-safe paths
2026-08-06 13:14:10 +01:00
7064829921
feat: first-run auth setup in wizard, auto-hash passwords on save
2026-08-06 13:03:56 +01:00
eaa612278d
feat: two-port auth — 8080 with login, 8090 viewer-only (live wall)
2026-08-06 12:56:48 +01:00
cda6ca4785
fix: code review — XSS, credentials 0600, interval leak, path bugs, title, unused imports
2026-08-05 16:13:25 +01:00
faf954a59d
fix: go2rtc proxied through NextNVR — no port 1984 forwarding needed
2026-08-05 14:42:09 +01:00
66dd4c54b4
fix: clean focus popup — close button bar + fullscreen iframe
2026-08-05 14:38:21 +01:00
c2fb05a9ef
fix: iframe focus (PWA-friendly), mobile grid overlap fix
2026-08-05 14:28:46 +01:00
03448361da
fix: correct go2rtc player URL — stream.html not root
2026-08-05 14:02:00 +01:00
0b5dc7d88e
fix: grid tiles open go2rtc WebRTC player directly — real live stream
2026-08-05 13:59:03 +01:00
10666f52d0
fix: focus mode embeds go2rtc WebRTC player iframe — real live video
2026-08-05 13:54:40 +01:00
901edcf594
fix: focus mode uses fast JPEG refresh (200ms) — no codec, works everywhere
2026-08-05 13:06:36 +01:00
b68171f370
fix: proxy MJPEG stream through NextNVR to avoid cross-origin blocking
2026-08-05 13:04:44 +01:00
f248b796c6
fix: focus mode uses go2rtc MJPEG stream for real live video
2026-08-05 13:01:22 +01:00
0bc81b5087
fix: focus mode uses fast-refresh JPEG — no codec dependency
2026-08-05 12:51:02 +01:00
31cc243830
fix: focus mode uses go2rtc WebRTC iframe player (HLS not supported in FF)
2026-08-05 12:47:52 +01:00
69d3a7c47f
feat: v0.3.3 — rec_/snap_ prefix, latest.jpg grid, per-minute archival snapshots
2026-08-05 12:37:51 +01:00
06a1252088
feat: v0.3.2 — disk-based snapshot engine, no go2rtc polling for grid
2026-08-05 12:28:29 +01:00
58fd3307dd
fix: stagger snapshot loading to prevent browser request flooding
2026-08-05 12:24:28 +01:00
e93074e459
feat: camera config link in settings, fix all json tags, go2rtc auto-start
2026-08-05 12:22:40 +01:00
6bb504258f
fix: add json tags to all config structs — API serialization was broken
2026-08-05 12:17:32 +01:00
1a017999fe
chore: v0.3.1 — go2rtc auto-start, live wall snapshots, MSE focus player
2026-08-05 12:13:33 +01:00
9de8536bdf
fix: save auto-refreshes cameras and switches to Live Wall — no restart needed
2026-08-05 12:06:12 +01:00
e8b795503f
chore: v0.3.0 — greenfield-first, auto-wizard, ONVIF hybrid probe, empty default config
2026-08-05 11:59:54 +01:00
66f35b1eb9
chore: v0.2.1 — flat recording dir, per-segment FFmpeg, .part atomic rename, playback presets
2026-08-05 09:53:21 +01:00
84bf6d892f
chore: Milestone 1 & 2 — core setup, recorder, cleaner, web UI, deployment
2026-08-05 09:15:43 +01:00