* feat(collections): back collections with user-authored Trakt lists
Collections could sync only Trakt's built-in trending/popular/recommended
feeds; a server admin could not populate a collection from a specific
user's Trakt list (e.g. a curated 'Saw in timeline order' list) (#214).
- trakt.Client.GetUserList fetches /users/{user}/lists/{slug}/items in
list order, mixing movies and shows and skipping non-title entries.
- New 'trakt_list' collection source mode: catalog.ParseTraktListURL
accepts a trakt.tv list URL (or bare user/slug), and
syncTraktListCollection reuses the preset pipeline's matching/ordering
via an extracted completeTraktEntrySync helper. Public lists need no
access token.
- Trakt import handler accepts list_url as an alternative to preset;
the admin collection editor's Trakt form gains a Source toggle
(discovery feed vs user list) with a list-URL input.
Additive-only: new source mode + optional request field; preset path
unchanged.
Fixes#214
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
* fix(collections): round-trip trakt_list through the edit form, unlock mixed libraries, validate list host
Three review fixes for user-list-backed collections:
- The admin edit form now detects mode "trakt_list", shows an editable
list URL (mirroring the create form) and saves the source back as
trakt_list with list_url preserved — previously any edit silently
rewrote the collection into a trakt_preset Trending Movies feed.
- Library eligibility in list mode is mixed (movies + shows) instead of
inheriting the hidden media-type default of movie, since Trakt lists
mix both and entries match by their own type.
- ParseTraktListURL only accepts trakt.tv / www.trakt.tv hosts, so a
list-shaped URL on another domain fails fast with the format error
instead of a confusing later sync failure.
source_config now carries list_url alongside the legacy url key
(additive); sync reads list_url, then url, then source_url.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Quick <31828688+Quick104@users.noreply.github.com>