Fix a few nominatim issues.
This commit is contained in:
parent
808b7e419a
commit
7dd06b4f88
3 changed files with 5 additions and 6 deletions
|
@ -223,13 +223,12 @@ class GeocoderController < ApplicationController
|
||||||
@results = Array.new
|
@results = Array.new
|
||||||
|
|
||||||
# ask OSM namefinder
|
# ask OSM namefinder
|
||||||
response = fetch_xml("http://nominatim.openstreetmap.org/search.php?format=xml&polygon=true&q=#{escape_query(query)}")
|
response = fetch_xml("http://nominatim.openstreetmap.org/search?format=xml&q=#{escape_query(query)}")
|
||||||
|
|
||||||
# parse the response
|
# parse the response
|
||||||
response.elements.each("searchresults/place") do |place|
|
response.elements.each("searchresults/place") do |place|
|
||||||
lat = place.attributes["lat"].to_s
|
lat = place.attributes["lat"].to_s
|
||||||
lon = place.attributes["lon"].to_s
|
lon = place.attributes["lon"].to_s
|
||||||
zoom = place.attributes["zoom"].to_s
|
|
||||||
klass = place.attributes["class"].to_s
|
klass = place.attributes["class"].to_s
|
||||||
type = place.attributes["type"].to_s
|
type = place.attributes["type"].to_s
|
||||||
name = place.attributes["display_name"].to_s
|
name = place.attributes["display_name"].to_s
|
||||||
|
@ -241,7 +240,7 @@ class GeocoderController < ApplicationController
|
||||||
prefix = t 'geocoder.search_osm_nominatim.prefix_other', :type => type.capitalize
|
prefix = t 'geocoder.search_osm_nominatim.prefix_other', :type => type.capitalize
|
||||||
end
|
end
|
||||||
|
|
||||||
@results.push({:lat => lat, :lon => lon, :zoom => zoom,
|
@results.push({:lat => lat, :lon => lon,
|
||||||
:min_lat => min_lat, :max_lat => max_lat,
|
:min_lat => min_lat, :max_lat => max_lat,
|
||||||
:min_lon => min_lon, :max_lon => max_lon,
|
:min_lon => min_lon, :max_lon => max_lon,
|
||||||
:prefix => prefix, :name => name})
|
:prefix => prefix, :name => name})
|
||||||
|
@ -342,7 +341,7 @@ class GeocoderController < ApplicationController
|
||||||
@results = Array.new
|
@results = Array.new
|
||||||
|
|
||||||
# ask OSM namefinder
|
# ask OSM namefinder
|
||||||
response = fetch_xml("http://nominatim.openstreetmap.org/reverse.php?lat=#{lat}&lon=#{lon}&zoom=#{zoom}")
|
response = fetch_xml("http://nominatim.openstreetmap.org/reverse?lat=#{lat}&lon=#{lon}&zoom=#{zoom}")
|
||||||
|
|
||||||
# parse the response
|
# parse the response
|
||||||
response.elements.each("reversegeocode") do |result|
|
response.elements.each("reversegeocode") do |result|
|
||||||
|
|
|
@ -13,7 +13,7 @@ module GeocoderHelper
|
||||||
html << " " if result[:prefix] and result[:name]
|
html << " " if result[:prefix] and result[:name]
|
||||||
|
|
||||||
if result[:min_lon] and result[:min_lat] and result[:max_lon] and result[:max_lat]
|
if result[:min_lon] and result[:min_lat] and result[:max_lon] and result[:max_lat]
|
||||||
html << link_to_function(result[:name],"setPosition(#{result[:lat]}, #{result[:lon]}, #{result[:zoom]}, #{result[:min_lon]}, #{result[:min_lat]}, #{result[:max_lon]}, #{result[:max_lat]})", html_options) if result[:name]
|
html << link_to_function(result[:name],"setPosition(#{result[:lat]}, #{result[:lon]}, null, #{result[:min_lon]}, #{result[:min_lat]}, #{result[:max_lon]}, #{result[:max_lat]})", html_options) if result[:name]
|
||||||
else
|
else
|
||||||
html << link_to_function(result[:name],"setPosition(#{result[:lat]}, #{result[:lon]}, #{result[:zoom]})", html_options) if result[:name]
|
html << link_to_function(result[:name],"setPosition(#{result[:lat]}, #{result[:lon]}, #{result[:zoom]})", html_options) if result[:name]
|
||||||
end
|
end
|
||||||
|
|
|
@ -88,7 +88,7 @@ zoom='14' if zoom.nil?
|
||||||
doSWF(<%= lat || 'null' %>,<%= lon || 'null' %>,<%= zoom %>);
|
doSWF(<%= lat || 'null' %>,<%= lon || 'null' %>,<%= zoom %>);
|
||||||
|
|
||||||
function setPosition(lat, lon, zoom) {
|
function setPosition(lat, lon, zoom) {
|
||||||
doSWF(lat, lon, zoom);
|
doSWF(lat, lon, zoom || 15);
|
||||||
}
|
}
|
||||||
|
|
||||||
function resizeContent() {
|
function resizeContent() {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue