Commit graph

144 commits

Author SHA1 Message Date
Jos Vooges | STH
276467f09b Add Google Cast and VMC phone-to-TV remote, plus TV guide focus fixes. 2026-09-16 00:52:56 +02:00
Jos Vooges | STH
b566454f8a Add Android TV guide tab with bulk EPG grid and live play actions.
Expose a cached multi-channel guide API and a TV Gids screen with timeline, programme details, favorites, and watch-when-live.
2026-09-15 21:09:48 +02:00
Jos Vooges | STH
940470a97d Add admin button to force-refresh IPTV EPG caches.
Clears global XMLTV and derived caches, re-fetches XUI plus configured feeds, so XUI mapping changes show up without waiting for SWR TTL.
2026-09-15 20:49:37 +02:00
Jos Vooges | STH
a7038f04fa Cache IPTV XMLTV globally so Live TV EPG serves from memory.
Share XUI and admin EPG feeds across requests with SWR refresh, and recompute now/next from the schedule so titles stay current without re-downloading.
2026-09-15 18:55:13 +02:00
Jos Vooges | STH
0c15d61291 Add admin TV settings for EPG URLs, category order, and Alle zenders.
Store cluster-wide IPTV UI prefs in IntegrationSetting and apply them to client category lists and multi-feed XMLTV merge.
2026-09-15 18:33:50 +02:00
Jos Vooges | STH
18bcf43c14 Add rich IPTV EPG with programme art and 24h guide on Android TV.
Parse Odido/XUI XMLTV for images, descriptions and schedule, and surface them in the Live TV detail panel and player overlay.
2026-09-15 18:18:33 +02:00
Jos Vooges | STH
1cc6fedd95 Harden OpenSubtitles.org IMDb search and surface subtitle search warnings. 2026-09-13 17:36:11 +02:00
Jos Vooges | STH
55695aa47c Add admin viewers SSE so device and lock changes appear live without polling. 2026-09-13 17:36:10 +02:00
Jos Vooges | STH
f6d484aa56 Allow admin email edits and cap the viewer list to 12 rows without a scrollbar. 2026-09-13 16:36:10 +02:00
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