api: reverse-geocoding needs lat and lon (#6849)

This commit is contained in:
Thomas NOËL 2015-03-29 15:01:35 +02:00
parent 0096bd61c6
commit 7883432795
1 changed files with 7 additions and 3 deletions

View File

@ -25,7 +25,7 @@ import random
from quixote import get_request, get_publisher, get_response
from quixote.directory import Directory
from qommon.errors import AccessForbiddenError
from qommon.errors import AccessForbiddenError, QueryError
def get_user_from_api_query_string():
query_string = get_request().get_query()
@ -120,10 +120,14 @@ class ApiDirectory(Directory):
_q_exports = [('reverse-geocoding', 'reverse_geocoding')]
def reverse_geocoding(self):
try:
lat = get_request().form['lat']
lon = get_request().form['lon']
except KeyError:
raise QueryError
nominatim_url = get_publisher().get_site_option('nominatim_url')
if not nominatim_url:
nominatim_url = 'http://nominatim.openstreetmap.org'
get_response().set_content_type('application/json')
return urllib2.urlopen('%s/reverse?format=json&zoom=18&addressdetails=1&lat=%s&lon=%s' % (
nominatim_url,
get_request().form['lat'], get_request().form['lon'])).read()
nominatim_url, lat, lon)).read()