Sha256: 27d5884605512ad8f9cf95aac0d1327cffa327dffc362600887eb15a8ed955fc

Contents?: true

Size: 1.09 KB

Versions: 39

Compression:

Stored size: 1.09 KB

Contents

class Location < AbstractAdapter
  has_many :locatables, dependent: :destroy
  has_many :companies, through: :locatables, source: :locatable, source_type: 'Company'

  has_many :beacons, class_name: 'LocationBeacon', dependent: :destroy
  has_one  :gps,     class_name: 'LocationGps',    dependent: :destroy
  delegate :lat,:lng,:alt, to: :gps

  belongs_to :parent_location, foreign_key: :parent_location_id, class_name: 'Location', inverse_of: :child_locations
  has_many   :child_locations, foreign_key: :parent_location_id, class_name: 'Location', dependent: :destroy, inverse_of: :parent_location

  has_many :user_locations, dependent: :destroy

  # isn't this list going to be kinda long? are there any reasonable constraints to put
  # on this random bit of metadata?
  validates_inclusion_of :kind, in: %w(airport terminal gate plane)

  accepts_nested_attributes_for :child_locations, allow_destroy: true
  accepts_nested_attributes_for :gps,             allow_destroy: true
  accepts_nested_attributes_for :beacons,         allow_destroy: true

  def coords
    [gps.lat, gps.lng, gps.alt]
  end

end

Version data entries

39 entries across 39 versions & 2 rubygems

Version Path
introspective_admin-0.9.0 spec/dummy/app/models/location.rb
introspective_grape-0.5.7 spec/dummy/app/models/location.rb
introspective_grape-0.5.6 spec/dummy/app/models/location.rb
introspective_grape-0.5.5 spec/dummy/app/models/location.rb
introspective_grape-0.5.4 spec/dummy/app/models/location.rb
introspective_grape-0.5.2 spec/dummy/app/models/location.rb
introspective_grape-0.5.0 spec/dummy/app/models/location.rb
introspective_grape-0.4.3 spec/dummy/app/models/location.rb
introspective_grape-0.4.2 spec/dummy/app/models/location.rb
introspective_grape-0.4.1 spec/dummy/app/models/location.rb
introspective_grape-0.4.0 spec/dummy/app/models/location.rb
introspective_grape-0.3.9 spec/dummy/app/models/location.rb
introspective_grape-0.3.7 spec/dummy/app/models/location.rb
introspective_grape-0.3.6 spec/dummy/app/models/location.rb
introspective_grape-0.3.5 spec/dummy/app/models/location.rb
introspective_grape-0.3.3 spec/dummy/app/models/location.rb
introspective_grape-0.3.2 spec/dummy/app/models/location.rb
introspective_grape-0.3.1 spec/dummy/app/models/location.rb
introspective_grape-0.3.0 spec/dummy/app/models/location.rb
introspective_grape-0.2.9 spec/dummy/app/models/location.rb