Module: Pagy::UseTrimExtra

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

Instance Method Summary collapse

Instance Method Details



10
11
12
13
14
15
16
17
18
19
# File 'lib/pagy/extras/trim.rb', line 10

def pagy_link_proc(pagy, deprecated_link_extra=nil, link_extra: '')
  link_extra = Pagy.deprecated_arg(:link_extra, deprecated_link_extra, :link_extra, link_extra) if deprecated_link_extra
  link_proc = super(pagy, link_extra: link_extra)
  return link_proc unless pagy.vars[:enable_trim_extra]
  lambda do |num, text=num, extra=''|
    link = +link_proc.call(num, text, extra)
    return link unless num == 1
    pagy_trim(pagy, link)
  end
end

#pagy_trim(pagy, link) ⇒ Object



21
22
23
# File 'lib/pagy/extras/trim.rb', line 21

def pagy_trim(pagy, link)
  link.sub!(/[?&]#{pagy.vars[:page_param]}=1\b(?!&)|\b#{pagy.vars[:page_param]}=1&/, '')
end