From 24547500334a3f8f2ae480fd2cad1988b5bd9d0e Mon Sep 17 00:00:00 2001 From: Fufeck Date: Wed, 17 Jan 2024 14:48:04 +0100 Subject: [PATCH] fix pagination on page all bals --- pages/all.tsx | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/pages/all.tsx b/pages/all.tsx index d89e0506c..6f2abdba0 100644 --- a/pages/all.tsx +++ b/pages/all.tsx @@ -20,6 +20,8 @@ import { PageBaseLocaleDTO, } from "@/lib/openapi"; +const LIMIT_BY_PAGE = 20; + interface PublicBasesLocalesListProps { basesLocales: BaseLocale[]; searchInput: string; @@ -51,26 +53,23 @@ const CSRPublicBasesLocalesList: React.ComponentType(commune || ""); const onFilter = async (value: string) => { - const query = { page: currentPage, limit, commune: undefined }; + const query = { page: currentPage, commune: undefined }; if (value.length > 0) { query.commune = value; @@ -82,7 +81,7 @@ function All({ const handlePageChange = async (page: number) => { await router.push({ pathname: "/all", - query: { page, limit }, + query: { page }, }); }; @@ -123,9 +122,9 @@ function All({ marginX="auto" page={currentPage} totalPages={totalPages} - onPreviousPage={async () => handlePageChange(currentPage - 1)} + onPreviousPage={async () => handlePageChange(currentPage)} onPageChange={handlePageChange} - onNextPage={async () => handlePageChange(currentPage + 1)} + onNextPage={async () => handlePageChange(currentPage)} /> )} @@ -145,10 +144,12 @@ function All({ All.getInitialProps = async ({ query }) => { let result: PageBaseLocaleDTO; + const currentPage = query.page || 1 + try { result = await BasesLocalesService.searchBaseLocale( - query.limit, - query.offset, + LIMIT_BY_PAGE, + (currentPage - 1) * LIMIT_BY_PAGE, query.deleted, query.commune, query.email, @@ -158,9 +159,8 @@ All.getInitialProps = async ({ query }) => { return { basesLocales: result ? sortBalByUpdate(result.results) : [], + currentPage, commune: query.commune || "", - offset: result ? result.offset : 0, - limit: result ? result.limit : 20, count: result ? result.count : 0, }; };