Module: Pagy::UseStandaloneExtra
- Included in:
- Helpers
- Defined in:
- lib/pagy/extras/standalone.rb
Instance Method Summary collapse
-
#pagy_url_for(pagy, page, deprecated_url = nil, absolute: nil) ⇒ Object
without any :url var it works exactly as the regular #pagy_url_for; with a defined :url variable it does not use rack/request.
Instance Method Details
#pagy_url_for(pagy, page, deprecated_url = nil, absolute: nil) ⇒ Object
without any :url var it works exactly as the regular #pagy_url_for; with a defined :url variable it does not use rack/request
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/pagy/extras/standalone.rb', line 31 def pagy_url_for(pagy, page, deprecated_url=nil, absolute: nil) absolute = Pagy.deprecated_arg(:url, deprecated_url, :absolute, absolute) if deprecated_url pagy, page = Pagy.deprecated_order(pagy, page) if page.is_a?(Pagy) p_vars = pagy.vars if p_vars[:url] url_string = p_vars[:url] params = {} else url_string = "#{request.base_url if absolute}#{request.path}" params = request.GET end params = params.merge(p_vars[:params]) params[p_vars[:page_param].to_s] = page params[p_vars[:items_param].to_s] = p_vars[:items] if defined?(UseItemsExtra) query_string = "?#{QueryUtils.build_nested_query(pagy_get_params(params))}" unless params.empty? "#{url_string}#{query_string}#{p_vars[:fragment]}" end |