From 41873802253be38ac4ec462d8f0467e6bf585ad5 Mon Sep 17 00:00:00 2001 From: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com> Date: Tue, 29 Jun 2021 12:50:10 +0100 Subject: [PATCH] Customise partial used for showing pagination links --- app/views/admin/shared/_pagy_links.html.haml | 19 +++++++++++++++++++ app/views/spree/admin/users/index.html.haml | 3 ++- app/views/spree/admin/zones/index.html.haml | 2 +- 3 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 app/views/admin/shared/_pagy_links.html.haml diff --git a/app/views/admin/shared/_pagy_links.html.haml b/app/views/admin/shared/_pagy_links.html.haml new file mode 100644 index 0000000000..61603de222 --- /dev/null +++ b/app/views/admin/shared/_pagy_links.html.haml @@ -0,0 +1,19 @@ +- link = pagy_link_proc(pagy) + +%nav.pagy_nav.pagination{"aria-label" => "pager", :role => "navigation"} + - if pagy.prev + %span.page.prev!= link.call(pagy.prev, t(:previous), 'aria-label="previous"') + - else + %span.page.prev.disabled!= t(:previous) + - pagy.series.each do |item| # series example: [1, :gap, 7, 8, "9", 10, 11, :gap, 36] + - if item.is_a?(Integer) # page link + %span.page + != link.call(item) + - elsif item.is_a?(String) # current page + %span.page.current= item + - elsif item == :gap # page gap + %span.page.gap … + - if pagy.next + %span.page.next!= link.call(pagy.next, t(:next), 'aria-label="next"') + - else + %span.page.next.disabled!= t(:next) diff --git a/app/views/spree/admin/users/index.html.haml b/app/views/spree/admin/users/index.html.haml index 90e7378693..616000fbb3 100644 --- a/app/views/spree/admin/users/index.html.haml +++ b/app/views/spree/admin/users/index.html.haml @@ -26,8 +26,9 @@ %td.user_enterprise_limit= user.enterprise_limit %td.actions = link_to_delete user, no_text: true + - _with_routes Spree::Core::Engine.routes do - = pagy_nav @pagy + = render partial: 'admin/shared/pagy_links', locals: { pagy: @pagy } - content_for :sidebar_title do = t(".search") diff --git a/app/views/spree/admin/zones/index.html.haml b/app/views/spree/admin/zones/index.html.haml index fd872f2494..d46cde7a7d 100644 --- a/app/views/spree/admin/zones/index.html.haml +++ b/app/views/spree/admin/zones/index.html.haml @@ -38,4 +38,4 @@ = link_to_delete zone, no_text: true - _with_routes Spree::Core::Engine.routes do - = pagy_nav @pagy + = render partial: 'admin/shared/pagy_links', locals: { pagy: @pagy }