Enhance metadata handling by introducing ShowKind parameter across various components. Update SearchShowMetadataQuery and related handlers to support querying by show type, ensuring accurate metadata retrieval for series and films. Implement validation to prevent episodes from being associated with non-series shows. Update frontend API to include ShowKind in metadata search requests, improving overall functionality and user experience.
This commit is contained in:
@@ -69,7 +69,7 @@ export function ShowMetadataCard({ show, onChanged }: { show: ShowDto; onChanged
|
||||
const searchTerm = originalName.trim() || name.trim()
|
||||
|
||||
const search = useMutation({
|
||||
mutationFn: () => searchMetadata(effectiveProvider, searchTerm),
|
||||
mutationFn: () => searchMetadata(effectiveProvider, searchTerm, show.kind),
|
||||
onSuccess: (data) => {
|
||||
setResults(data)
|
||||
setSearched(true)
|
||||
|
||||
@@ -73,8 +73,9 @@ export function getMetadataProviders() {
|
||||
return apiRequest<string[]>('/admin/metadata/providers')
|
||||
}
|
||||
|
||||
export function searchMetadata(provider: string, query: string) {
|
||||
const q = new URLSearchParams({ provider, query })
|
||||
/** `kind` определяет, среди чего искать: у TMDb сериалы и фильмы — разные пространства id. */
|
||||
export function searchMetadata(provider: string, query: string, kind: ShowKind) {
|
||||
const q = new URLSearchParams({ provider, query, kind })
|
||||
return apiRequest<MetadataCandidate[]>(`/admin/metadata/search?${q.toString()}`)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user