From a8ddce9b9dee7719cba7c80b8215d951d4248bd3 Mon Sep 17 00:00:00 2001 From: Idris <sld7700@gmail.com> Date: Sat, 29 Dec 2012 18:28:28 +0600 Subject: [PATCH] Added return empty string if city not exist for some region( Yandex provider ) --- lib/geocoder/results/yandex.rb | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/lib/geocoder/results/yandex.rb b/lib/geocoder/results/yandex.rb index 841da988..f69c10cf 100644 --- a/lib/geocoder/results/yandex.rb +++ b/lib/geocoder/results/yandex.rb @@ -16,8 +16,10 @@ module Geocoder::Result address_details['Locality']['LocalityName'] elsif sub_state.empty? address_details['AdministrativeArea']['Locality']['LocalityName'] - else - address_details['AdministrativeArea']['SubAdministrativeArea']['Locality']['LocalityName'] + elsif not sub_state_city.empty? + sub_state_city + else + "" end end @@ -62,5 +64,13 @@ module Geocoder::Result def address_details @data['GeoObject']['metaDataProperty']['GeocoderMetaData']['AddressDetails']['Country'] end + + def sub_state_city + if sub_state && sub_state["Locality"] + sub_state['Locality']['LocalityName'] + else + "" + end + end end end -- GitLab