Sha256: 1b61fa89ca96d29940d839f7c0ab7f230db0e186984feb2c5a096b69ce0237e2

Contents?: true

Size: 1.22 KB

Versions: 1

Compression:

Stored size: 1.22 KB

Contents

module NovaPoshta
  module Response
    class Area < ::NovaPoshta::Response::Base

      attr_accessor :description, :ref, :areas_center

      # ugly API do not provide searching by area reference
      def cities(params={})
        
        # return NovaPoshta::Result
        c = address.cities(params).select { |city| city.area_ref == self.ref }
        data = c.map do |city|
          {
              :'Description' => city.description,
              :'DescriptionRu' => city.description_ru,
              :'Ref' => city.ref,
              :'Delivery1' => city.delivery1,
              :'Delivery2' => city.delivery2,
              :'Delivery3' => city.delivery3,
              :'Delivery4' => city.delivery4,
              :'Delivery5' => city.delivery5,
              :'Delivery6' => city.delivery6,
              :'Delivery7' => city.delivery7,
              :'Area' => city.area_ref,
              :'Conglomerates' => city.conglomerates,
              :'CityID' => city.city_id,
          }
        end

        r = {
            success: true,
            data: data,
            errors: [],
            warnings: [],
            info: []
        }

        ::NovaPoshta::Result.new(r.to_json, 'getCities')
      end

    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
nova_poshta-0.3.0 lib/nova_poshta/response/area.rb