class AIPP::LF::AD16

Aerodromes radiocommunication facilities (VFR only)

Constants

DEPENDS
ID_FIXES

Public Instance Methods

parse() click to toggle source
   # File lib/aipp/regions/LF/AD-1.6.rb
17 def parse
18   document = prepare(html: read)
19   document.css('tbody').each do |tbody|
20     tbody.css('tr').group_by_chunks { _1.attr(:id).match?(/-TXT_NAME-/) }.each do |tr, trs|
21       trs = Nokogiri::XML::NodeSet.new(document, trs)   # convert array to node set
22       id = tr.css('span[id*="CODE_ICAO"]').text.cleanup
23       next unless id = ID_FIXES.fetch(id, id)
24       @airport = find_by(:airport, id: id).first
25       addresses_from(trs).each { @airport.add_address(_1) }
26       units_from(trs, airport: @airport).each(&method(:add))
27     end
28   end
29 end