lib/geokit/geocoders/google.rb in geokit-1.13.1 vs lib/geokit/geocoders/google.rb in geokit-1.14.0

- old
+ new

@@ -106,11 +106,12 @@ end end def self.construct_components_string_from_options(components={}) unless components.empty? - "&components=#{components.to_a.map { |pair| pair.join(':').downcase }.join(CGI.escape('|'))}" + escaped_components = Geokit::Inflector.url_escape(components.to_a.map { |pair| pair.join(":").downcase }.join("|")) + "&components=#{escaped_components}" end end def self.parse_json(results) case results['status'] @@ -213,9 +214,10 @@ when types.include?('country') loc.country_code = comp['short_name'] loc.country = comp['long_name'] when types.include?('administrative_area_level_2') loc.district = comp['long_name'] + loc.county = comp['long_name'] when types.include?('neighborhood') loc.neighborhood = comp['short_name'] # Use either sublocality or admin area level 3 if google does not return a city when types.include?('sublocality') loc.city = comp['long_name'] if loc.city.nil?