X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/89e976c6e57c9aa8afae00437aaf4399ea5fc58f..8ae5d94b2f16d6f2cf1739e19ebc3793a18a0a4a:/app/models/tracepoint.rb?ds=sidebyside diff --git a/app/models/tracepoint.rb b/app/models/tracepoint.rb index 90de368b5..d4ba39de3 100644 --- a/app/models/tracepoint.rb +++ b/app/models/tracepoint.rb @@ -1,25 +1,21 @@ class Tracepoint < ActiveRecord::Base -set_table_name 'gps_points' + include GeoRecord -# validates_numericality_of :latitude -# validates_numericality_of :longitude + set_table_name 'gps_points' - belongs_to :user - belongs_to :trace, :foreign_key => 'gpx_id' - - def lat=(l) - self.latitude = l * 1000000 - end + validates_numericality_of :trackid, :only_integer => true + validates_numericality_of :latitude, :only_integer => true + validates_numericality_of :longitude, :only_integer => true + validates_associated :trace + validates_presence_of :timestamp - def lng=(l) - self.longitude = l * 1000000 - end - - def lat - return self.latitude.to_f / 1000000 - end + belongs_to :trace, :foreign_key => 'gpx_id' - def lon - return self.longitude.to_f / 1000000 + def to_xml_node(print_timestamp = false) + el1 = XML::Node.new 'trkpt' + el1['lat'] = self.lat.to_s + el1['lon'] = self.lon.to_s + el1 << (XML::Node.new("time") << self.timestamp.xmlschema) if print_timestamp + return el1 end end