diff --git a/web/src/pages/MediaDetailPageModel.ts b/web/src/pages/MediaDetailPageModel.ts index a8e5693..1f03344 100644 --- a/web/src/pages/MediaDetailPageModel.ts +++ b/web/src/pages/MediaDetailPageModel.ts @@ -1,13 +1,11 @@ import type { Media } from '../types' -import { mediaLibraryTarget } from '../utils/mediaNavigation' export function mediaLibraryBackTarget(media: Media): string { - const seriesTarget = mediaLibraryTarget(media) - if (seriesTarget) return seriesTarget - const libraryID = media.display_library_id || media.library_id - if (!libraryID) return '' - return `/library/${encodeURIComponent(libraryID)}` + if (libraryID) { + return `/library/${encodeURIComponent(libraryID)}` + } + return '/libraries' } export function mediaDetailScrapeMediaType(media: Media): string | undefined { diff --git a/web/src/pages/useMediaDetailPageState.ts b/web/src/pages/useMediaDetailPageState.ts index 2f5799b..cd41f5e 100644 --- a/web/src/pages/useMediaDetailPageState.ts +++ b/web/src/pages/useMediaDetailPageState.ts @@ -189,10 +189,12 @@ function useMediaDetailActions({ } function goBackFromMediaDetail(media: Media | null, navigate: NavigateFunction, replace = false): void { - if (!media) return + if (!media) { + navigate('/libraries') + return + } const backTarget = mediaLibraryBackTarget(media) - if (backTarget) navigate(backTarget, replace ? { replace: true } : undefined) - else navigate(-1) + navigate(backTarget || '/libraries', replace ? { replace: true } : undefined) } async function toggleMediaFavourite(