# File lib/will_paginate/view_helpers/action_view.rb, line 130 def add_current_page_param(url_params, page) unless param_name.index(%r[^\w-]/) url_params[param_name.to_sym] = page else page_param = parse_query_parameters("#{param_name}=#{page}") symbolized_update(url_params, page_param) end end
# File lib/will_paginate/view_helpers/action_view.rb, line 102 def default_url_params {} end
# File lib/will_paginate/view_helpers/action_view.rb, line 118 def merge_get_params(url_params) if @template.respond_to? :request and @template.request and @template.request.get? symbolized_update(url_params, @template.params) end url_params end
# File lib/will_paginate/view_helpers/action_view.rb, line 125 def merge_optional_params(url_params) symbolized_update(url_params, @options[:params]) if @options[:params] url_params end
# File lib/will_paginate/view_helpers/action_view.rb, line 106 def url(page) @base_url_params ||= begin url_params = merge_get_params(default_url_params) merge_optional_params(url_params) end url_params = @base_url_params.dup add_current_page_param(url_params, page) @template.url_for(url_params) end