Module: Mappable
- Extended by:
- ActiveSupport::Concern
- Included in:
- Geocodeable
- Defined in:
- app/models/concerns/mappable.rb
Class Method Summary collapse
Instance Method Summary collapse
- #do_geocode ⇒ Object
- #geo_address ⇒ Object
- #get_lat ⇒ Object
- #get_lon ⇒ Object
- #has_map? ⇒ Boolean
- #to_map ⇒ Object
Class Method Details
.admin ⇒ Object
90 91 92 |
# File 'app/models/concerns/mappable.rb', line 90 def self.admin RocketCMS.map_config end |
Instance Method Details
#do_geocode ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'app/models/concerns/mappable.rb', line 30 def do_geocode if geo_address.blank? if RocketCMS.mongoid? self.coordinates = nil else self.latitude = nil self.longitude = nil end else if (lat.nil? || lon.nil?) && (new_record? || address_changed? || coordinates.nil? || map_address_changed?) geocode end end end |
#geo_address ⇒ Object
82 83 84 85 86 87 88 |
# File 'app/models/concerns/mappable.rb', line 82 def geo_address if map_address.blank? address else map_address end end |
#get_lat ⇒ Object
45 46 47 48 49 50 51 52 53 54 55 |
# File 'app/models/concerns/mappable.rb', line 45 def get_lat if lat.blank? if coordinates.nil? nil else coordinates[1] end else lat end end |
#get_lon ⇒ Object
56 57 58 59 60 61 62 63 64 65 66 |
# File 'app/models/concerns/mappable.rb', line 56 def get_lon if lon.blank? if coordinates.nil? nil else coordinates[0] end else lon end end |
#has_map? ⇒ Boolean
68 69 70 |
# File 'app/models/concerns/mappable.rb', line 68 def has_map? (!lat.blank? && !lon.blank?) || !coordinates.nil? end |
#to_map ⇒ Object
72 73 74 75 76 77 78 79 80 |
# File 'app/models/concerns/mappable.rb', line 72 def to_map { id: id.to_s, hint: map_hint, addr: address, lat: get_lat, lon: get_lon, } end |