fix pagination on user search

This commit is contained in:
bytedream 2023-09-30 16:15:22 +02:00
parent 56aa3c2673
commit 6eb44cc33b

@ -20,7 +20,7 @@
let userFilter = { name: null, edition: null };
let userTableContainerElement: HTMLDivElement;
function fetchPageUsers(page: number, filter: any) {
function fetchPageUsers(page: number) {
if (!browser) return;
if (userTableContainerElement) userTableContainerElement.scrollTop = 0;
@ -29,7 +29,7 @@
currentPageUsersRequest = new Promise(async (resolve, reject) => {
const response = await fetch(`${env.PUBLIC_BASE_PATH}/admin/users`, {
method: 'POST',
body: JSON.stringify({ ...filter, limit: usersPerPage, from: usersPerPage * page })
body: JSON.stringify({ ...userFilter, limit: usersPerPage, from: usersPerPage * page })
});
if (response.ok) {
currentPageUsers = await response.json();
@ -40,7 +40,10 @@
});
}
$: fetchPageUsers(userPage, userFilter);
$: fetchPageUsers(userPage);
// prettier-ignore
function fetchFilterPageUsers(_: any) { userPage == 0 ? fetchPageUsers(0) : userPage = 0 }
$: fetchFilterPageUsers(userFilter);
let sortKey: string | null = null;
let sortAsc = false;
@ -207,7 +210,7 @@
</table>
<div class="flex justify-center items-center mb-2 mt-4 w-full">
<div class="join">
{#each Array(Math.ceil(data.count / usersPerPage) || 1) as _, i}
{#each Array(currentPageUsers.length === usersPerPage || userPage > 0 ? Math.ceil(data.count / usersPerPage) || 1 : 1) as _, i}
<button
class="join-item btn"
class:btn-active={i === userPage}