diff --git a/web/src/lib/utils.ts b/web/src/lib/utils.ts index 792be85..902a5da 100644 --- a/web/src/lib/utils.ts +++ b/web/src/lib/utils.ts @@ -99,3 +99,10 @@ export function formatSecondsToOptimalUnit(seconds: number): string { return '0s'; } + +export function handleQueryNotificationToast(count: number = 0, query: string = "") { + if (count > 0 && query.length > 0) toast.success(`Found ${count} ${count > 1 ? 'result' : 'results'} for search term "${query}".`); + else if (count == 0) toast.info(`No results found for "${query}".`); + + +} \ No newline at end of file diff --git a/web/src/routes/dashboard/movies/add-movie/+page.svelte b/web/src/routes/dashboard/movies/add-movie/+page.svelte index 1e8606e..6eeeb6f 100644 --- a/web/src/routes/dashboard/movies/add-movie/+page.svelte +++ b/web/src/routes/dashboard/movies/add-movie/+page.svelte @@ -14,6 +14,7 @@ import { base } from '$app/paths'; import client from '$lib/api'; import type { components } from '$lib/api/api'; + import {handleQueryNotificationToast} from "$lib/utils.ts"; let searchTerm: string = $state(''); let metadataProvider: 'tmdb' | 'tvdb' = $state('tmdb'); @@ -36,12 +37,11 @@ }) : await client.GET('/api/v1/movies/recommended'); if (data && data.length > 0) { - toast.success(`Found ${data.length} result(s) for "${query}".`); results = data as components['schemas']['MetaDataProviderSearchResult'][]; } else { - toast.info(`No results found for "${query}".`); results = null; } + handleQueryNotificationToast(data?.length ?? 0, query) } diff --git a/web/src/routes/dashboard/tv/add-show/+page.svelte b/web/src/routes/dashboard/tv/add-show/+page.svelte index f3edefe..c4897a3 100644 --- a/web/src/routes/dashboard/tv/add-show/+page.svelte +++ b/web/src/routes/dashboard/tv/add-show/+page.svelte @@ -18,6 +18,7 @@ import { resolve } from '$app/paths'; import client from '$lib/api'; import type { components } from '$lib/api/api'; + import {handleQueryNotificationToast} from "$lib/utils.ts"; onMount(() => { search(''); @@ -36,12 +37,13 @@ }) : await client.GET('/api/v1/tv/recommended'); if (results.data && results.data.length > 0) { - toast.success(`Found ${results.data.length} result(s) for "${query}".`); + handleQueryNotificationToast(results.data.length, query) data = results.data as components['schemas']['MetaDataProviderSearchResult'][]; } else { - toast.info(`No results found for "${query}".`); + handleQueryNotificationToast(0, query) data = null; } + }