diff --git a/README_API_GUIDE.md b/README_API_GUIDE.md index 773491b33edac889f88073ce3cac5735f5c355f8..b19fd6809e106f91d468b2407b9105a194775e7e 100644 --- a/README_API_GUIDE.md +++ b/README_API_GUIDE.md @@ -63,7 +63,7 @@ The [Google Places Search API](https://developers.google.com/places/web-service/ * **Quota**: 50,0000 requests/day (Windows app), 125,000 requests/year (non-Windows app) * **Region**: world * **SSL support**: no -* **Languages**: ? +* **Languages**: The preferred language of address elements in the result. Language code must be provided according to RFC 4647 standard. * **Documentation**: http://msdn.microsoft.com/en-us/library/ff701715.aspx * **Terms of Service**: http://www.microsoft.com/maps/product/terms.html * **Limitations**: No country codes or state names. Must be used on "public-facing, non-password protected web sites," "in conjunction with Bing Maps or an application that integrates Bing Maps." diff --git a/lib/geocoder/lookups/bing.rb b/lib/geocoder/lookups/bing.rb index 53894c2ff498a606a4aafc2e84d7e4a8f0d23fa4..c2d0edcfc236aba73569679669a839e97f8df89a 100644 --- a/lib/geocoder/lookups/bing.rb +++ b/lib/geocoder/lookups/bing.rb @@ -53,7 +53,8 @@ module Geocoder::Lookup def query_url_params(query) { - key: configuration.api_key + key: configuration.api_key, + language: (query.language || configuration.language) }.merge(super) end diff --git a/lib/geocoder/lookups/here.rb b/lib/geocoder/lookups/here.rb index f99eaee81a62596169cb16ad055ab6a894e57e46..420c6e34c752efffc62e37493ab40bb9a66e27f0 100644 --- a/lib/geocoder/lookups/here.rb +++ b/lib/geocoder/lookups/here.rb @@ -30,19 +30,20 @@ module Geocoder::Lookup def query_url_params(query) options = { - :gen=>4, - :app_id=>api_key, - :app_code=>api_code + gen: 4, + app_id: api_key, + app_code: api_code, + language: (query.language || configuration.language) } if query.reverse_geocode? super.merge(options).merge( - :prox=>query.sanitized_text, - :mode=>:retrieveAddresses + prox: query.sanitized_text, + mode: :retrieveAddresses ) else super.merge(options).merge( - :searchtext=>query.sanitized_text + searchtext: query.sanitized_text ) end end diff --git a/test/unit/lookup_test.rb b/test/unit/lookup_test.rb index e98f883cbfc7afa18f32404a11954b9f978e6bfb..d2ba813a0e6158aedc1b6597b541982b600ceeb7 100644 --- a/test/unit/lookup_test.rb +++ b/test/unit/lookup_test.rb @@ -56,8 +56,10 @@ class LookupTest < GeocoderTestCase end { + :bing => :language, :google => :language, :google_premier => :language, + :here => :language, :nominatim => :"accept-language", :yandex => :plng }.each do |l,p|