Class: Docs::DomEvents::CleanHtmlFilter

Inherits:
Filter
  • Object
show all
Defined in:
lib/docs/filters/dom_events/clean_html.rb

Constant Summary

Constants inherited from Filter

Filter::SCHEME_RGX

Instance Method Summary collapse

Methods inherited from Filter

#absolute_url_string?, #at_css, #at_xpath, #base_url, #css, #current_url, #fragment_url_string?, #initial_page?, #parse_html, #relative_url_string?, #root_page?, #root_path, #root_url, #slug, #subpath, #subpath_to, #xpath

Instance Method Details

#callObject


4
5
6
7
# File 'lib/docs/filters/dom_events/clean_html.rb', line 4

def call
  root_page? ? root : other
  doc
end

#otherObject


24
25
26
27
28
# File 'lib/docs/filters/dom_events/clean_html.rb', line 24

def other
  css('#General_info + dl').each do |node|
    node['class'] = 'eventinfo'
  end
end

#rootObject


9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/docs/filters/dom_events/clean_html.rb', line 9

def root
  # Remove parapraph mentioning non-standard events
  at_css('#Standard_events').previous_element.remove

  # Remove everything after "Standard events"
  css('.standard-table ~ *').remove

  # Remove events we don't want
  css('tr').each do |tr|
    if td = tr.at_css('td:nth-child(3)')
      tr.remove if td.content =~ /SVG|Battery|Gamepad|Sensor/i
    end
  end
end