diff --git a/public/empty.png b/public/empty.png new file mode 100644 index 0000000..3eea4ff Binary files /dev/null and b/public/empty.png differ diff --git a/public/no-result.png b/public/no-result.png new file mode 100644 index 0000000..49aae23 Binary files /dev/null and b/public/no-result.png differ diff --git a/src/layouts/DetailLayout.astro b/src/layouts/DetailLayout.astro index 5563e8e..c6ddab0 100644 --- a/src/layouts/DetailLayout.astro +++ b/src/layouts/DetailLayout.astro @@ -1,8 +1,6 @@ --- import { ViewTransitions } from "astro:transitions"; import Banner from "@/components/Banner.astro"; -import { getSession } from "auth-astro/server"; -import { checkValidUser } from "@/lib/supabase/function"; interface Props { title: string; diff --git a/src/pages/favorite/index.astro b/src/pages/favorite/index.astro index aa778af..5b40b9a 100644 --- a/src/pages/favorite/index.astro +++ b/src/pages/favorite/index.astro @@ -58,50 +58,68 @@ const datas = await getFavorite( class="w-full grid lg:grid-cols-5 md:grid-cols-3 grid-cols-2 gap-4 mt-5 px-4 pb-16" > { - datas.map((data) => ( -
- 0 ? ( + datas.map((data) => ( +
- {data.poster === undefined || data.poster === null ? ( -
- ) : ( - Poster - )} + + {data.poster === undefined || data.poster === null ? ( +
+ ) : ( + Poster + )} -
-

- {data.title} -

-

- {format( - data.release_list - ? new Date(data.release_list) - : new Date(), - "MMMM dd, yyyy" - )} -

-
- -
- )) +
+

+ {data.title} +

+

+ {format( + data.release_list + ? new Date(data.release_list) + : new Date(), + "MMMM dd, yyyy" + )} +

+
+ +
+ )) + ) : ( +
+ {"No +

+ No favorite lists,{" "} + + get your favorite now + +

+
+ ) } diff --git a/src/pages/movie/search/index.astro b/src/pages/movie/search/index.astro index d7bcae7..4b08259 100644 --- a/src/pages/movie/search/index.astro +++ b/src/pages/movie/search/index.astro @@ -7,6 +7,7 @@ import Link from "@/components/ui/Link.astro"; import List from "@/components/Genre/List.astro"; import FormSearch from "@/components/React/FormSearch"; import type { Movie } from "@/types/movie"; +import { Image } from "astro:assets"; export const prerender = false; const { searchParams } = Astro.url; @@ -16,7 +17,7 @@ const page = searchParams.get("page"); const genreListMovies: Array = await getGenres("movie"); - const datas = await getSearchDatas("movie", query, Number(page)); +const datas = await getSearchDatas("movie", query, Number(page)); const movies = datas.results?.filter( (movie: Movie) => @@ -38,44 +39,63 @@ const movies = datas.results?.filter(

Search for result "{query}"

-
- {movies.map((movie) => )} -
-
-

{datas.page} of {datas.total_pages}

-
- { - Number(page) === 1 || Number(page) < 0 ? null : ( - - Prev - - ) - } - { - datas.total_pages > 500 ? ( - Number(page) === 500 ? null : ( + { + movies.length > 0 ? ( +
+ {movies.map((movie) => ( + + ))} +
+ ) : ( +
+ {"No +

+ No results for search "{query}" +

+
+ ) + } + { + movies.length > 0 && ( +
+

+ {datas.page} of {datas.total_pages} +

+
+ {Number(page) === 1 || Number(page) < 0 ? null : ( + + Prev + + )} + {datas.total_pages > 500 ? ( + Number(page) === 500 ? null : ( + + Next + + ) + ) : Number(page) === datas.total_pages ? null : ( Next - ) - ) : Number(page) === datas.total_pages ? null : ( - - Next - - ) - } -
-
+ )} +
+
+ ) + }
diff --git a/src/pages/tv/search/index.astro b/src/pages/tv/search/index.astro index 603fdbe..d8124d6 100644 --- a/src/pages/tv/search/index.astro +++ b/src/pages/tv/search/index.astro @@ -7,6 +7,7 @@ import Link from "@/components/ui/Link.astro"; import List from "@/components/Genre/List.astro"; import FormSearch from "@/components/React/FormSearch"; import type { Tv } from "@/types/tv"; +import { Image } from "astro:assets"; export const prerender = false; @@ -36,44 +37,64 @@ const shows = datas.results?.filter(

Search for result "{query}"

-
- {shows.map((list) => )} -
-
-

{datas.page} of {datas.total_pages}

-
- { - Number(page) === 1 || Number(page) < 0 ? null : ( - - Prev - - ) - } - { - datas.total_pages > 500 ? ( - Number(page) === 500 ? null : ( + { + shows.length > 0 ? ( +
+ {shows.map((list) => ( + + ))} +
+ ) : ( +
+ {"No +

+ No results for search "{query}" +

+
+ ) + } + + { + shows.length > 0 && ( +
+

+ {datas.page} of {datas.total_pages} +

+
+ {Number(page) === 1 || Number(page) < 0 ? null : ( + + Prev + + )} + {datas.total_pages > 500 ? ( + Number(page) === 500 ? null : ( + + Next + + ) + ) : Number(page) === datas.total_pages ? null : ( Next - ) - ) : Number(page) === datas.total_pages ? null : ( - - Next - - ) - } -
-
+ )} +
+
+ ) + }