34 lines
1.2 KiB
Text
34 lines
1.2 KiB
Text
|
|
- # Local variables:
|
||
|
|
- # - collection: The WillPaginate collection (e.g., @search_results)
|
||
|
|
- # - url_params: The URL params hash (e.g., @outfit.wardrobe_params.merge(q: params[:q]))
|
||
|
|
|
||
|
|
- if collection.total_pages > 1
|
||
|
|
.pagination-bar
|
||
|
|
- if collection.previous_page
|
||
|
|
= link_to "← Prev", url_params.merge(page: collection.previous_page), class: "pagination-prev"
|
||
|
|
- else
|
||
|
|
%span.pagination-prev.disabled ← Prev
|
||
|
|
|
||
|
|
%auto-submit-form
|
||
|
|
= form_with url: @wardrobe_path, method: :get do |f|
|
||
|
|
- url_params.each do |key, value|
|
||
|
|
- if value.is_a?(Array)
|
||
|
|
- value.each do |v|
|
||
|
|
= hidden_field_tag "#{key}[]", v, id: nil
|
||
|
|
- else
|
||
|
|
= hidden_field_tag key, value, id: nil
|
||
|
|
|
||
|
|
%label.pagination-page-selector
|
||
|
|
Page
|
||
|
|
= select_tag :page,
|
||
|
|
options_for_select((1..collection.total_pages).map { |p| [p, p] }, collection.current_page),
|
||
|
|
"aria-label": "Page number"
|
||
|
|
of #{collection.total_pages}
|
||
|
|
|
||
|
|
= submit_tag "Go", name: nil, class: "progressive-submit"
|
||
|
|
|
||
|
|
- if collection.next_page
|
||
|
|
= link_to "Next →", url_params.merge(page: collection.next_page), class: "pagination-next"
|
||
|
|
- else
|
||
|
|
%span.pagination-next.disabled Next →
|