class INE::Places::Place

Public Class Methods

find_all_by_province_id(province_id) click to toggle source
# File lib/ine/places/place.rb, line 4
def self.find_all_by_province_id(province_id)
  raise ArgumentError if province_id.blank?

  collection_klass.records.select{ |place| place.province_id == province_id }
end
find_by_name_and_province_id(place_name, province_id) click to toggle source
# File lib/ine/places/place.rb, line 10
def self.find_by_name_and_province_id(place_name, province_id)
  raise ArgumentError if place_name.blank? || province_id.blank?

  collection_klass.records.select{ |place| place.name == place_name && place.province_id == province_id.to_s }.first
end

Private Class Methods

collection_klass() click to toggle source
# File lib/ine/places/place.rb, line 22
def self.collection_klass
  INE::Places::PlacesCollection
end
filter(records, name) click to toggle source
# File lib/ine/places/place.rb, line 26
def self.filter(records, name)
  return [] if name.blank?
  parameterized_name = name.parameterize

  records.select{|p| p.slug.include?(parameterized_name) }.
    reject{|p| ['ceuta','melilla'].include?(p.slug) }.
    sort_by{|p| p.province.slug }
end

Public Instance Methods

data() click to toggle source
# File lib/ine/places/place.rb, line 16
def data
  @data ||= OpenStruct.new
end