app/models/location.rb

Summary

Maintainability
A
0 mins
Test Coverage
class Location < ActiveRecord::Base
  belongs_to :user

  attr_accessible :lng, :lat, :address, :user_id


  def locations_within_kilos_of(kilo)
    Location.all.to_a.keep_if { |location|
      GIS::Distance.new(self.lat, self.lng, location.lat, location.lng).distance <= kilo and location != self
    }
  end

  def users_within_kilos_of(kilo)
    locations_within_kilos_of(kilo).map { |location|
      location.user
    }.uniq
  end

end