Module: Pagy::SupportExtra

Included in:
Frontend
Defined in:
lib/pagy/extras/support.rb

Overview

Extra support for features like: incremental, auto-incremental and infinite pagination

Instance Method Summary collapse

Instance Method Details

#pagy_next_html(pagy, text: pagy_t('pagy.next'), link_extra: '') ⇒ Object

Return the HTML string for the enabled/disabled next page link



24
25
26
27
# File 'lib/pagy/extras/support.rb', line 24

def pagy_next_html(pagy, text: pagy_t('pagy.next'), link_extra: '')
  link = pagy_link_proc(pagy, link_extra:)
  next_html(pagy, link, text:)
end

Conditionally return the HTML link tag string for the next page



35
36
37
# File 'lib/pagy/extras/support.rb', line 35

def pagy_next_link_tag(pagy, absolute: false)
  %(<link href="#{pagy_url_for(pagy, pagy.next, absolute:)}" rel="next"/>) if pagy.next
end

#pagy_next_url(pagy, absolute: false) ⇒ Object

Return the next page URL string or nil



13
14
15
# File 'lib/pagy/extras/support.rb', line 13

def pagy_next_url(pagy, absolute: false)
  pagy_url_for(pagy, pagy.next, absolute:) if pagy.next
end

#pagy_prev_html(pagy, text: pagy_t('pagy.prev'), link_extra: '') ⇒ Object

Return the HTML string for the enabled/disabled previous page link



18
19
20
21
# File 'lib/pagy/extras/support.rb', line 18

def pagy_prev_html(pagy, text: pagy_t('pagy.prev'), link_extra: '')
  link = pagy_link_proc(pagy, link_extra:)
  prev_html(pagy, link, text:)
end

Conditionally return the HTML link tag string for the previous page



30
31
32
# File 'lib/pagy/extras/support.rb', line 30

def pagy_prev_link_tag(pagy, absolute: false)
  %(<link href="#{pagy_url_for(pagy, pagy.prev, absolute:)}" rel="prev"/>) if pagy.prev
end

#pagy_prev_url(pagy, absolute: false) ⇒ Object

Return the previous page URL string or nil



8
9
10
# File 'lib/pagy/extras/support.rb', line 8

def pagy_prev_url(pagy, absolute: false)
  pagy_url_for(pagy, pagy.prev, absolute:) if pagy.prev
end