From 17486214695d691d2db86767574e69746e829dd2 Mon Sep 17 00:00:00 2001 From: Lucas Date: Thu, 23 Mar 2023 20:26:08 +0000 Subject: [PATCH] backend: make pager object hold only numbers --- lib/PoorBooru/Backend.pm | 12 ++++++------ templates/_pager.html.ep | 12 ++++++++---- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/lib/PoorBooru/Backend.pm b/lib/PoorBooru/Backend.pm index f8271db..2bc6080 100644 --- a/lib/PoorBooru/Backend.pm +++ b/lib/PoorBooru/Backend.pm @@ -9,18 +9,18 @@ use SeaweedFS::Client; sub _pager_links ($c, $dbp) { my %pager; - my $page_url = sub ($p) { $c->url_with->query({page => $p}) }; - $pager{first_page} = $page_url->($dbp->{first_page}) + $pager{current_page} = $dbp->{current_page}; + + $pager{first_page} = $dbp->{first_page} if $dbp->{first_page} != $dbp->{current_page}; - $pager{previous_page} = $page_url->($dbp->{previous_page}) + $pager{previous_page} = $dbp->{previous_page} if defined($dbp->{previous_page}) && $dbp->{previous_page} != $dbp->{first_page}; - $pager{current_page} = $dbp->{current_page}; - $pager{next_page} = $page_url->($dbp->{next_page}) + $pager{next_page} = $dbp->{next_page} if defined($dbp->{next_page}) && $dbp->{next_page} != $dbp->{last_page}; - $pager{last_page} = $page_url->($dbp->{last_page}) + $pager{last_page} = $dbp->{last_page} if $dbp->{last_page} != $dbp->{current_page}; return %pager; diff --git a/templates/_pager.html.ep b/templates/_pager.html.ep index 0c9aaa7..215d244 100644 --- a/templates/_pager.html.ep +++ b/templates/_pager.html.ep @@ -1,11 +1,15 @@ % if (my $pager = stash("pager")) { % }