]> git.openstreetmap.org Git - rails.git/blobdiff - lib/nominatim.rb
Localisation updates from https://translatewiki.net.
[rails.git] / lib / nominatim.rb
index c5d60cebd5fdea15555dd0e826764b61a0b02d20..adb041da43857799d2bdbea0a8a1c018e1d536e6 100644 (file)
@@ -1,15 +1,17 @@
 module Nominatim
+  require "timeout"
+
   extend ActionView::Helpers::NumberHelper
 
   def self.describe_location(lat, lon, zoom = nil, language = nil)
     zoom ||= 14
-    language ||= http_accept_language.user_preferred_languages.join(',')
+    language ||= http_accept_language.user_preferred_languages.join(",")
 
     Rails.cache.fetch "/nominatim/location/#{lat}/#{lon}/#{zoom}/#{language}" do
-      url = "http://nominatim.openstreetmap.org/reverse?lat=#{lat}&lon=#{lon}&zoom=#{zoom}&accept-language=#{language}"
+      url = "#{Settings.nominatim_url}reverse?lat=#{lat}&lon=#{lon}&zoom=#{zoom}&accept-language=#{language}"
 
       begin
-        response = OSM::Timer.timeout(4) do
+        response = Timeout.timeout(4) do
           REXML::Document.new(Net::HTTP.get(URI.parse(url)))
         end
       rescue StandardError
@@ -17,7 +19,7 @@ module Nominatim
       end
 
       if response && result = response.get_text("reversegeocode/result")
-        result.to_s
+        result.value
       else
         "#{number_with_precision(lat, :precision => 3)}, #{number_with_precision(lon, :precision => 3)}"
       end