]> git.openstreetmap.org Git - rails.git/blobdiff - app/models/old_way.rb
Split the rest action into sparate read, update and delete actions thus
[rails.git] / app / models / old_way.rb
index 06260425389c2c8db9ea84cc23c18000f609e962..3bcdac8896637cc3cae469a3e5de2dce60f693fe 100644 (file)
@@ -5,6 +5,7 @@ class OldWay < ActiveRecord::Base
 
   def self.from_way(way)
     old_way = OldWay.new
+    old_way.visible = way.visible
     old_way.user_id = way.user_id
     old_way.timestamp = way.timestamp
     old_way.id = way.id
@@ -48,11 +49,22 @@ class OldWay < ActiveRecord::Base
   end
 
   def segs
-    @segs = Array.new unless @segs
+    unless @segs
+        @segs = Array.new
+        OldWaySegment.find(:all, :conditions => ["id = ? AND version = ?", self.id, self.version], :order => "sequence_id").each do |seg|
+            @segs += [seg.segment_id]
+        end
+    end
     @segs
   end
 
   def tags
+    unless @tags
+        @tags = Hash.new
+        OldWayTag.find(:all, :conditions => ["id = ? AND version = ?", self.id, self.version]).each do |tag|
+            @tags[tag.k] = tag.v
+        end
+    end
     @tags = Hash.new unless @tags
     @tags
   end