Module: ZipSearch::ActsAsLocation::LocalInstanceMethods

Defined in:
lib/zip_search/acts_as_location.rb

Instance Method Summary collapse

Instance Method Details

#coordinatesObject



68
# File 'lib/zip_search/acts_as_location.rb', line 68

def coordinates; [latitude, longitude] end

#has_coordinates?Boolean

Returns:

  • (Boolean)


67
# File 'lib/zip_search/acts_as_location.rb', line 67

def has_coordinates?; !latitude.nil? && !longitude.nil? end

#locationObject



58
# File 'lib/zip_search/acts_as_location.rb', line 58

def location; Hash[ location_fields.map{|lf| [ lf, send(lf) ] } ] end

#location_blank?Boolean

Returns:

  • (Boolean)


59
# File 'lib/zip_search/acts_as_location.rb', line 59

def location_blank?; location.values.reject(&:blank?).empty? end

#location_fieldsObject



57
# File 'lib/zip_search/acts_as_location.rb', line 57

def location_fields; self.class.location_fields end

#location_missing_any?Boolean

Returns:

  • (Boolean)


60
# File 'lib/zip_search/acts_as_location.rb', line 60

def location_missing_any?; location.values.select(&:blank?).any? end

#should_geocode?Boolean

Returns:

  • (Boolean)


70
# File 'lib/zip_search/acts_as_location.rb', line 70

def should_geocode?; !has_coordinates? && !location_blank? end

#should_reverse_geocode?Boolean

Returns:

  • (Boolean)


71
# File 'lib/zip_search/acts_as_location.rb', line 71

def should_reverse_geocode?; has_coordinates? && location_missing_any? end

#to_sentenceObject



62
63
64
65
# File 'lib/zip_search/acts_as_location.rb', line 62

def to_sentence
  return 'Location unavailable' if location_blank?
  location_fields.map{|lf| send(lf) }.reject(&:blank?).join(', ')
end