Sha256: b456e04cc4c862dda8c798f9edc8ddac4ac463664761622869c8dcd760a57d39

Contents?: true

Size: 632 Bytes

Versions: 24

Compression:

Stored size: 632 Bytes

Contents

class UserLocation < AbstractAdapter
  belongs_to :user
  belongs_to :location
  belongs_to :detectable, polymorphic: true

  validates_inclusion_of :detectable_type, in: %w(LocationBeacon LocationGps)

  default_scope { includes(:detectable).order("created_at desc") } 

  def coords=(c) # convenience method to set coordinates by an array of [lat,lng,alt]
    self.lat = c[0]
    self.lng = c[1]
    self.alt = c[2]
  end

  def beacon 
    detectable.is_a?(LocationBeacon) ? detectable : {}
  end

  def distance 
    if location.gps && lat && lng
      location.gps.distance_from(lat,lng)
    else 
      nil
    end
  end

end

Version data entries

24 entries across 24 versions & 2 rubygems

Version Path
introspective_admin-0.9.0 spec/dummy/app/models/user_location.rb
introspective_grape-0.3.2 spec/dummy/app/models/user_location.rb
introspective_grape-0.3.1 spec/dummy/app/models/user_location.rb
introspective_grape-0.3.0 spec/dummy/app/models/user_location.rb
introspective_grape-0.2.9 spec/dummy/app/models/user_location.rb
introspective_grape-0.2.8 spec/dummy/app/models/user_location.rb
introspective_grape-0.2.7 spec/dummy/app/models/user_location.rb
introspective_grape-0.2.6 spec/dummy/app/models/user_location.rb
introspective_grape-0.2.5 spec/dummy/app/models/user_location.rb
introspective_grape-0.2.4 spec/dummy/app/models/user_location.rb
introspective_grape-0.2.3 spec/dummy/app/models/user_location.rb
introspective_grape-0.2.2 spec/dummy/app/models/user_location.rb
introspective_grape-0.2.0 spec/dummy/app/models/user_location.rb
introspective_grape-0.1.9 spec/dummy/app/models/user_location.rb
introspective_admin-0.0.8 spec/dummy/app/models/user_location.rb
introspective_admin-0.0.7 spec/dummy/app/models/user_location.rb
introspective_admin-0.0.6 spec/dummy/app/models/user_location.rb
introspective_admin-0.0.5 spec/dummy/app/models/user_location.rb
introspective_grape-0.0.4 spec/dummy/app/models/user_location.rb
introspective_grape-0.0.3 spec/dummy/app/models/user_location.rb