Commit graph

135 commits

Author SHA1 Message Date
Jos Vooges | STH
91e7502d3b Restore admin login unlock and password reset, plus desktop episode Sub actions. 2026-09-13 16:29:40 +02:00
Jos Vooges | STH
5ec899c9cb Fix OpenSubtitles.org search by zero-padding IMDb IDs.
Unpadded IDs triggered a broken redirect and silent empty subtitle results.
2026-09-13 13:49:26 +02:00
Jos Vooges | STH
82742a1ea3 Fix profile PIN verification and restore TV tab underline style.
verifyPassword args were swapped after the avatar rewrite, causing argon2 to throw on PIN select.
2026-09-13 03:12:32 +02:00
Jos Vooges | STH
e4aba1950b Add ends-at times, compact red topnav, and custom profile avatars.
Show end times on detail/player, tighten TV chrome, and let profiles toggle or upload a cropped photo via API and mobile/iOS.
2026-09-13 03:04:47 +02:00
Jos Vooges | STH
056078d6bc Improve profiles, watched episodes, and continue-watching across apps.
Subprofiles can edit their own profile and cannot switch server/account; series detail shows watched/progress; skip-to-next marks the prior episode done and keeps one continue-watching tile per series.
2026-09-13 00:44:09 +02:00
Jos Vooges | STH
07901c1d0c Add watchlist, next-episode playback, and fix TV shelf reorder.
Probe-driven continue-watching advances to the next episode; Android TV gets next controls, red focus rings, and a Watchlist tab between Home and Films.
2026-09-12 23:50:07 +02:00
Jos Vooges | STH
6de2c767bf Show real subtitle languages by probing MKV track tags on the node.
Pass embedded track language/title through play ACK into clients so Android/iOS can label tracks instead of generic Ondertitel N when ExoPlayer/VLC miss tags.
2026-09-12 20:58:24 +02:00
Jos Vooges | STH
4c15a37783 Sort 4K shelf by newest 4K file discovery, not title first-seen. 2026-09-12 02:37:03 +02:00
Jos Vooges | STH
06a022089b Fix recently-added using cluster first-seen and add new-releases shelf. 2026-09-12 02:21:16 +02:00
Jos Vooges | STH
95a5c17a6c Allow admins to link a viewer device by entering its pairing code.
EOF

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 02:30:19 +02:00
Jos Vooges | STH
7869cd6661 Speed up client home by loading shelves in parallel.
Shelf item queries no longer run one-by-one; favorites load alongside them. Response shape and shelf order stay the same.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 22:31:54 +02:00
Jos Vooges | STH
6ffeb50733 Add in-app device approve/QR pairing and polish iOS browse.
Owners can list/revoke devices and approve TV codes in the iOS app; TV shows a vmc:// QR, and Films/Series get visible chips, titles, and a non-overlapping A–Z index.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 03:18:38 +02:00
Jos Vooges | STH
0b1a2daa20 Add public self-host install one-pager with admin on/off toggle.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 01:36:37 +02:00
Jos Vooges | STH
303383ea4e Add server URL choice, email login, and login lock controls.
Clients can use VMC or a custom server with email/password or device code; API locks after 3 failed logins with admin unlock.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 01:32:35 +02:00
Jos Vooges | STH
00fa9cd9c7 Add TV catalog A–Z sort/jump and fix exit/continue focus.
Browse films/series alphabetically with sort chips and letter scrubber; trap dialog focus and fix long-press remove from continue watching (0.14.13).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 19:40:58 +02:00
Jos Vooges | STH
308160aa56 Add per-node library reset that purges DB content and rescans.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 02:34:28 +02:00
Jos Vooges | STH
3b9b95469b Queue unmatched series folders for manual linking instead of auto-creating.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 02:30:41 +02:00
Jos Vooges | STH
ce278bbb70 Allow converting a movie folder to the correct series in admin.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 02:18:09 +02:00
Jos Vooges | STH
2532ddf93b Fix Synology Admin upgrade without docker.sock via binary rename.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 01:59:34 +02:00
Jos Vooges | STH
fba94b656c Add bulk relink of a series folder to the correct TMDB/IMDb show.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 01:50:42 +02:00
Jos Vooges | STH
a6b0ec15f2 Show series folders per node and allow path search/rematch.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 01:40:01 +02:00
Jos Vooges | STH
705a01f034 Filter admin series list by node and show per-node file badges.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 01:27:39 +02:00
Jos Vooges | STH
a7a7c9dec4 Show IPTV/Live TV under admin active streams without app changes.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 13:52:48 +02:00
Jos Vooges | STH
6a637ab2ef Show viewer name on active streams for app clients.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 13:47:12 +02:00
Jos Vooges | STH
37e7aafdf5 Auto-select local sidecar subtitles on playback start.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 04:08:09 +02:00
Jos Vooges | STH
c3755b48a5 Fix Synology Admin upgrade without docker.sock (rw binary mount).
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 03:47:07 +02:00
Jos Vooges | STH
20433dd747 Bump target media-node version to 1.3.5 so Upgrade shows again.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 03:41:45 +02:00
Jos Vooges | STH
9de3ee62d7 Serve local sidecar subtitles via existing client search/fetch and Stremio.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 03:37:08 +02:00
Jos Vooges | STH
7b7ca96d91 Allow canceling active downloads and changing Films/4K target mid-job.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 03:05:03 +02:00
Jos Vooges | STH
bd21b01956 Add full series download flow with episode and season import.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 02:30:40 +02:00
Jos Vooges | STH
f1e927726c Show live download progress and Mbps between status and target.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 01:51:28 +02:00
Jos Vooges | STH
a4bb2c591a Add Films/4K/Series download targets and completed jobs panel.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 01:42:34 +02:00
Jos Vooges | STH
19aa18e964 Pass CLIENT_LINK_BASE_URL into master-api on Dokploy.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 01:21:58 +02:00
Jos Vooges | STH
a6fa9c22fb Add user delete and collapsible device unlink in admin Gebruikers.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 00:53:05 +02:00
Jos Vooges | STH
a431bebf3b Unify app users with per-user IPTV and drop shared IPTV fallback.
Gebruikers own their Xtream line and optional Stremio addons; admin Accounts merges into Gebruikers so kids can get filtered lines without leaking the latest addon credentials.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 00:43:55 +02:00
Jos Vooges | STH
bc63ec11bb Fix TypeScript unknown stream type that broke Dokploy master-api build.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-07 23:33:45 +02:00
Jos Vooges | STH
4c91b692d2 Fix IPTV country ALL bouquets being treated as dump folders.
Keep NL|ALL-style packs visible, only drop pure Alles/All dumps, and coerce XUI object-map category responses.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-07 23:32:13 +02:00
Jos Vooges | STH
1834d42bd5 Fix IPTV categories timing out under per-category stream fetches.
Return all live categories immediately; only wait briefly for bulk counts and keep a single Alle zenders entry.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-07 23:21:14 +02:00
Jos Vooges | STH
318f613b40 Restore IPTV categories; only drop provider aggregate folders.
Keep one Alle zenders entry, backfill per-category counts when the bulk stream list is incomplete, and do not block the linked IPTV line on lastError.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-07 19:20:31 +02:00
Jos Vooges | STH
6a0eee0313 Fix missing IPTV categories hidden by zero channelCount filter.
Show all live categories even when the full stream list is incomplete or category ids do not match exactly; harden Xtream list parsing.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-07 19:14:12 +02:00
Jos Vooges | STH
cf9cdd43db Add server-synced viewer favorites for cross-device bookmarks.
Per-profile favorites API and migration so clients can share bookmarks after Dokploy deploy.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-07 15:43:37 +02:00
Jos Vooges | STH
f58a088156 Add Netflix-style viewer profiles with kids filter on master, TV, and mobile.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-06 03:01:00 +02:00
Jos Vooges | STH
4cd4347daf Prefer series poster in continue watching with episode overlay.
Use the series poster instead of episode stills, and show SxE plus title on Verder kijken cards.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-06 00:51:48 +02:00
Jos Vooges | STH
388962e6d1 Fix Live TV EPG by using bulk XMLTV instead of partial short_epg.
Category now/next titles were incomplete because warmup capped streams and per-channel fetches timed out; load xmltv.php once, fix timezone parsing, and fill remaining gaps in the background.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 16:10:46 +02:00
Jos Vooges | STH
16f3f3f93c Improve IPTV EPG caching with SWR, warmup, and spotlight logos.
Speeds up Live TV now/next titles via longer cache, background refresh, and category warmup; also expose logoUrl on spotlight items.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 16:01:06 +02:00
Jos Vooges | STH
826e95aaab Fix Recent sorting with stable discoveredAt on media files.
Backfill from file mtime and set discoveredAt on first index (and size changes) so new titles rise to the top instead of bulk-import path order (W/Z).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 01:00:18 +02:00
Jos Vooges | STH
421baae3d7 Fix recent catalog sorting by file mtime and polish mobile UI.
Use GREATEST(last_seen, created_at) so Recent/Films/shelves show truly newest media after bulk imports, and ship phone-first layout with touch-friendly players.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 00:46:31 +02:00
Jos Vooges | STH
a6a922bf05 Sort home shelves by newest first and add TMDB rematch for scanned titles.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 03:42:03 +02:00
Jos Vooges | STH
5749e41148 Fix IMDb backfill timing out by processing in batches with auto-retry in admin UI.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 03:25:58 +02:00
Jos Vooges | STH
6437e42c30 Add one-click remote node upgrade via WebSocket (v1.3.3).
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 03:08:36 +02:00