Class: Slimmer::Processors::ReportAProblemInserter
- Inherits:
-
Object
- Object
- Slimmer::Processors::ReportAProblemInserter
- Includes:
- ERB::Util
- Defined in:
- lib/slimmer/processors/report_a_problem_inserter.rb
Instance Method Summary collapse
- #filter(content_document, page_template) ⇒ Object
-
#initialize(skin, url, headers) ⇒ ReportAProblemInserter
constructor
A new instance of ReportAProblemInserter.
- #report_a_problem_block ⇒ Object
Constructor Details
#initialize(skin, url, headers) ⇒ ReportAProblemInserter
Returns a new instance of ReportAProblemInserter.
5 6 7 8 9 |
# File 'lib/slimmer/processors/report_a_problem_inserter.rb', line 5 def initialize(skin, url, headers) @skin = skin @request_url = url @headers = headers end |
Instance Method Details
#filter(content_document, page_template) ⇒ Object
11 12 13 14 15 |
# File 'lib/slimmer/processors/report_a_problem_inserter.rb', line 11 def filter(content_document, page_template) if (placeholder = page_template.at_css('body #report-a-problem')) placeholder.replace(report_a_problem_block) end end |
#report_a_problem_block ⇒ Object
17 18 19 20 21 22 23 24 |
# File 'lib/slimmer/processors/report_a_problem_inserter.rb', line 17 def report_a_problem_block request_url = @request_url source = @headers[Slimmer::Headers::APPLICATION_NAME_HEADER] page_owner = @headers[Slimmer::Headers::PAGE_OWNER_HEADER] report_a_problem_template = @skin.template('report_a_problem.raw') html = ERB.new(report_a_problem_template).result(binding) Nokogiri::HTML.fragment(html) end |