class Slimmer::Processors::SearchParameterInserter
Public Class Methods
new(response)
click to toggle source
# File lib/slimmer/processors/search_parameter_inserter.rb, line 5 def initialize(response) @response = response end
Public Instance Methods
filter(_content_document, page_template)
click to toggle source
# File lib/slimmer/processors/search_parameter_inserter.rb, line 9 def filter(_content_document, page_template) search_form = page_template.at_css("form#search") if search_parameters && search_form search_parameters.each_pair do |name, value| # Value can either be a string or an array of values if value.is_a? Array array_name = "#{name}[]" value.each do |array_value| add_hidden_input(search_form, array_name, array_value) end else add_hidden_input(search_form, name, value) end end end end
parse_search_parameters()
click to toggle source
# File lib/slimmer/processors/search_parameter_inserter.rb, line 38 def parse_search_parameters header_value = @response.headers.fetch(Slimmer::Headers::SEARCH_PARAMETERS_HEADER, "{}") JSON.parse(header_value) end
search_parameters()
click to toggle source
# File lib/slimmer/processors/search_parameter_inserter.rb, line 34 def search_parameters @search_parameters ||= parse_search_parameters end