X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/4377e2bd55bd6bed320b7c3595087d4317b1c9bc..ed076ebd6139dcc7a609ae36a0c76a85a2cbc761:/app/models/changeset.rb diff --git a/app/models/changeset.rb b/app/models/changeset.rb index 2c4c6d85c..990eae407 100644 --- a/app/models/changeset.rb +++ b/app/models/changeset.rb @@ -14,7 +14,7 @@ # # Indexes # -# changesets_bbox_idx (min_lat,max_lat,min_lon,max_lon) +# changesets_bbox_idx (min_lat,max_lat,min_lon,max_lon) USING gist # changesets_closed_at_idx (closed_at) # changesets_created_at_idx (created_at) # changesets_user_id_created_at_idx (user_id,created_at) @@ -25,7 +25,7 @@ # changesets_user_id_fkey (user_id => users.id) # -class Changeset < ActiveRecord::Base +class Changeset < ApplicationRecord require "xml/libxml" belongs_to :user, :counter_cache => true @@ -43,15 +43,15 @@ class Changeset < ActiveRecord::Base has_and_belongs_to_many :subscribers, :class_name => "User", :join_table => "changesets_subscribers", :association_foreign_key => "subscriber_id" validates :id, :uniqueness => true, :presence => { :on => :update }, - :numericality => { :on => :update, :integer_only => true } + :numericality => { :on => :update, :only_integer => true } validates :user_id, :presence => true, - :numericality => { :integer_only => true } + :numericality => { :only_integer => true } validates :num_changes, :presence => true, - :numericality => { :integer_only => true, + :numericality => { :only_integer => true, :greater_than_or_equal_to => 0 } validates :created_at, :closed_at, :presence => true validates :min_lat, :max_lat, :min_lon, :max_lat, :allow_nil => true, - :numericality => { :integer_only => true } + :numericality => { :only_integer => true } before_save :update_closed_at @@ -131,7 +131,7 @@ class Changeset < ActiveRecord::Base # update active record. rails 2.1's dirty handling should take care of # whether this object needs saving or not. - self.min_lon, self.min_lat, self.max_lon, self.max_lat = @bbox.to_a if bbox.complete? + self.min_lon, self.min_lat, self.max_lon, self.max_lat = @bbox.to_a.collect(&:round) if bbox.complete? end ##