diff --git a/messages/en.json b/messages/en.json index 38d19b1..834e20b 100644 --- a/messages/en.json +++ b/messages/en.json @@ -87,5 +87,8 @@ "latestReleases": "Latest releases", "firstRelease": "First Release", "newestRelease": "Newest Release", - "variousGames": "Various Games" + "variousGames": "Various Games", + "searchResultsFor": "Search results for", + "firstResults": "Showing first {take} results", + "moreResults": "Showing {start}-{end} results" } diff --git a/src/components/search/AlbumSearch.astro b/src/components/search/AlbumSearch.astro index 1fc3f11..56f96f8 100644 --- a/src/components/search/AlbumSearch.astro +++ b/src/components/search/AlbumSearch.astro @@ -1,4 +1,5 @@ --- +import * as m from 'paraglide/messages' import type { Prisma } from '@prisma/client' import type { DefaultArgs } from '@prisma/client/runtime/library' import { Image } from 'astro:assets' @@ -39,16 +40,14 @@ const [count, search] = await Promise.all([ prismaClient.albums.count(countQuery), prismaClient.albums.findMany({ ...findQuery, take, skip: (page - 1) * take }) ]) + +const start = (page - 1) * take +const end = Math.min(page * take, count) ---
- Albums ({count}) { - count > take ? ( - - {' '} - / Showing {page === 1 ? `first ${take}` : `${(page - 1) * take}-${Math.min(page * take, count)}`} results - - ) : null + {m.albums()} ({count}) { + count > take ? / {page === 1 ? m.firstResults({ take }) : m.moreResults({ start, end })} : null }
@@ -76,8 +75,7 @@ const [count, search] = await Promise.all([ )) }
-
-
- -
+ +
+
diff --git a/src/pages/search.astro b/src/pages/search.astro index 0e81959..7e76522 100644 --- a/src/pages/search.astro +++ b/src/pages/search.astro @@ -1,4 +1,6 @@ --- +import * as m from 'paraglide/messages' + import AlbumSearch from 'components/search/AlbumSearch.astro' import BaseLayout from 'layouts/base.astro' @@ -11,7 +13,7 @@ if (!query) return Astro.redirect(404)
-
Search results for: {query}
+
{m.searchResultsFor()}: {query}