Commit graph

35 commits

Author SHA1 Message Date
SergeantPanda
36879c10f2 fix(vod): validate relation_id and handle loading state in VODModal 2026-05-29 19:23:13 -05:00
nemesbak
5fbe38f8d2 fix(vod): respect relation_id when switching providers in SeriesModal/VODModal
The provider-info endpoints for both series and movies always returned
data from the highest-priority relation, ignoring the provider the user
had selected in the dropdown. Switching sources in the UI produced no
change in the episode list or movie details.

Root cause: the endpoints had no support for a relation_id query param,
and the frontend never passed one when the user changed the selection.

Fix (backend):
- series provider-info: accept ?relation_id=<id> and query that specific
  M3USeriesRelation; fall back to highest-priority when omitted
- movie provider-info: same treatment for M3UMovieRelation

Fix (frontend):
- api.getSeriesInfo / api.getMovieProviderInfo accept an optional
  relationId argument and append it to the query string
- useVODStore.fetchSeriesInfo / fetchMovieDetailsFromProvider forward
  the argument to the API layer
- SeriesModal.onChangeSelectedProvider re-fetches series info (episodes
  included) with the newly selected relation's id
- VODModal.onChangeSelectedProvider re-fetches movie details with the
  newly selected relation's id

Fixes #1250

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-28 13:39:04 +02:00
SergeantPanda
c4972f7dc9 fix: clear previous failure entries after successful logo fetch in LogoViewSet and VODLogoViewSet 2026-04-14 13:34:17 -05:00
SergeantPanda
978714a74d fix: improve remote logo fetching with timeout and caching for failures 2026-04-14 13:04:45 -05:00
dekzter
a19be96ced fleshed out user limits and termination logic 2026-03-25 17:33:26 -04:00
dekzter
99a328ca17 fixed bug when filtering after category was selected 2026-03-19 12:45:01 -04:00
Vitek
5a4be532fd Fix VOD category filtering for names containing pipe characters
Use rsplit('|', 1) instead of split('|', 1) to split from the right,
preserving any pipe characters in category names (e.g., "PL | BAJKI",
"EN | MOVIES"). This ensures the category_type is correctly extracted
as the last segment while keeping the full category name intact.

Fixes MovieFilter, SeriesFilter, and UnifiedContentViewSet category parsing.
2025-12-27 00:21:42 +01:00
SergeantPanda
2b58d7d46e Enhancement: Ensure "Uncategorized" categories and relations exist for VOD accounts. This improves content management for movies and series without assigned categories. Closes #627 2025-11-25 17:14:51 -06:00
SergeantPanda
da628705df Separate VOD and channel logos into distinct tables with dedicated management UI
- Created VODLogo model for movies/series, separate from Logo (channels only)
- Added database migration to create vodlogo table and migrate existing VOD logos
- Implemented VODLogoViewSet with pagination, filtering (used/unused/movies/series), and bulk operations
- Built VODLogosTable component with server-side pagination matching channel logos styling
- Added VOD logos tab with on-demand loading to Logos page
- Fixed orphaned VOD content cleanup to always remove unused entries
- Removed redundant channel_assignable filtering from channel logos
2025-11-07 13:19:18 -06:00
SergeantPanda
5e661ea208 Fix VOD page not displaying correct order while changing pages. 2025-09-14 19:27:11 -05:00
SergeantPanda
ad774db59e Fixed episode image failing to load. 2025-08-28 11:45:16 -05:00
SergeantPanda
24f876d09f Add priority for providers so VOD's can be auto selected based on the priority. 2025-08-20 17:38:21 -05:00
SergeantPanda
d92ba0c7e1 Fix VOD page not using pagination properly. 2025-08-14 12:51:56 -05:00
SergeantPanda
4d7987214b Fixed some vod apis, converted duration to duration_secs, add custom_poperties to vod_episode 2025-08-09 16:31:33 -05:00
SergeantPanda
345247df11 Fix vod streaming. 2025-08-08 08:35:59 -05:00
SergeantPanda
b229c9628d Fix movies not loading on first modal open. 2025-08-07 20:59:45 -05:00
SergeantPanda
430a486438 Add imdb_id to movie api output 2025-08-07 20:52:24 -05:00
SergeantPanda
325d832c1b Fixes movie details after db changes. 2025-08-07 20:42:20 -05:00
SergeantPanda
3741d28565 Fix typo in air date parsing. 2025-08-07 19:41:10 -05:00
SergeantPanda
8d37c678d3 Fix air_date not populating for series. 2025-08-07 19:28:42 -05:00
SergeantPanda
56922e1c01 Fix custom properties. 2025-08-07 16:10:45 -05:00
SergeantPanda
a6bace9241 Add custom properties for movies and series. Refactor update logic. 2025-08-07 14:22:27 -05:00
SergeantPanda
0e388968c4 Convert to relation tables to support multiple providers for each vod. 2025-08-07 12:31:05 -05:00
SergeantPanda
5e5b5e9797 Fix logos resetting when opening series. 2025-08-05 20:23:05 -05:00
SergeantPanda
4b6792ccbe Add ability to expand an episode row to view additional information. 2025-08-05 16:19:50 -05:00
SergeantPanda
0120419d09 Get full release date. 2025-08-05 15:50:28 -05:00
SergeantPanda
b11270ce4a Fix not populating episodes. 2025-08-05 13:53:43 -05:00
SergeantPanda
3c2534d8aa Combine a couple api calls. 2025-08-05 13:28:58 -05:00
SergeantPanda
8584aae675 Better naming for different functions. 2025-08-05 12:53:22 -05:00
SergeantPanda
151f654dd9 Only query series info if data is stale 2025-08-05 11:18:06 -05:00
SergeantPanda
4b27f95b30 Keep track of last time a series was refreshed. 2025-08-05 10:45:02 -05:00
SergeantPanda
4accd2be85 Pull advanced info from provider when opening a movie. 2025-08-03 22:02:34 -05:00
SergeantPanda
0585fc1dfe Separate Movies, Series and Episodes into their own tables 2025-08-02 13:32:44 -05:00
SergeantPanda
bcebcadfaa Add ability to scan for vods during m3u refresh. 2025-08-02 12:01:26 -05:00
SergeantPanda
84aa631196 Initial backend commit for vod 2025-08-02 10:42:36 -05:00