lib/geocoder/results/twogis.rb
require 'geocoder/results/base'
module Geocoder::Result
class Twogis < Base
def coordinates
['lat', 'lon'].map{ |i| @data['point'][i] } if @data['point']
end
def address(_format = :full)
@data['full_address_name'] || ''
end
def city
return '' unless @data['adm_div']
@data['adm_div'].select{|u| u["type"] == "city"}.first.try(:[], 'name') || ''
end
def region
return '' unless @data['adm_div']
@data['adm_div'].select{|u| u["type"] == "region"}.first.try(:[], 'name') || ''
end
def country
return '' unless @data['adm_div']
@data['adm_div'].select{|u| u["type"] == "country"}.first.try(:[], 'name') || ''
end
def district
return '' unless @data['adm_div']
@data['adm_div'].select{|u| u["type"] == "district"}.first.try(:[], 'name') || ''
end
def district_area
return '' unless @data['adm_div']
@data['adm_div'].select{|u| u["type"] == "district_area"}.first.try(:[], 'name') || ''
end
def street_address
@data['address_name'] || ''
end
def street
return '' unless @data['address_name']
@data['address_name'].split(', ').first
end
def street_number
return '' unless @data['address_name']
@data['address_name'].split(', ')[1] || ''
end
def type
@data['type'] || ''
end
def purpose_name
@data['purpose_name'] || ''
end
def building_name
@data['building_name'] || ''
end
def subtype
@data['subtype'] || ''
end
def subtype_specification
@data['subtype_specification'] || ''
end
def name
@data['name'] || ''
end
end
end