philomena/lib/philomena_web/templates/pagination/_pagination.html.slime
2023-11-23 17:07:49 +01:00

98 lines
2.7 KiB
Text

- params = assigns[:params] || []
= if @page.total_pages > 1 do
nav.pagination.hidden--mobile
= if not first_page?(@page) do
= link to: first_page_path(@page, @route, params) do
i.fa.fa-backward>
' First
.separator--vertical.separator--secondary
= link to: prev_page_path(@page, @route, params), class: "js-prev" do
i.fa.fa-chevron-left>
' Prev
.separator--vertical.separator--secondary
= if left_gap?(@page) do
span
' …
= for number <- left_page_numbers(@page) do
= link(number, to: page_path(@route, params, number))
span = @page.page_number
= for number <- right_page_numbers(@page) do
= link(number, to: page_path(@route, params, number))
= if right_gap?(@page) do
span
' …
= if not last_page?(@page) do
.separator--vertical.separator--secondary
= link to: next_page_path(@page, @route, params), class: "js-next" do
' Next
i.fa.fa-chevron-right
.separator--vertical.separator--secondary
= link to: last_page_path(@page, @route, params) do
' Last
i.fa.fa-fast-forward
nav.pagination.hidden--desktop
= if first_page?(@page) do
span
i.fa.fa-backward>
' First
.separator--vertical.separator--secondary
span
i.fa.fa-chevron-left>
' Prev
.separator--vertical.separator--secondary
- else
= link to: first_page_path(@page, @route, params) do
i.fa.fa-backward>
' First
= link to: prev_page_path(@page, @route, params), class: "js-prev" do
i.fa.fa-chevron-left>
' Prev
.dropdown
a.page-current.pagination__dropdown
=> @page.page_number
i.fa.fa-caret-down
.dropdown__content
= if left_gap?(@page) do
span
' …
= for number <- left_page_numbers(@page) do
= link(number, to: page_path(@route, params, number))
span = @page.page_number
= for number <- right_page_numbers(@page) do
= link(number, to: page_path(@route, params, number))
= if right_gap?(@page) do
span
' …
= if last_page?(@page) do
.separator--vertical.separator--secondary
span
' Next
i.fa.fa-chevron-right
.separator--vertical.separator--secondary
span
' Last
i.fa.fa-fast-forward
- else
.separator--vertical.separator--secondary
= link to: next_page_path(@page, @route, params), class: "js-next" do
' Next
i.fa.fa-chevron-right
.separator--vertical.separator--secondary
= link to: last_page_path(@page, @route, params) do
' Last
i.fa.fa-fast-forward