]> git.openstreetmap.org Git - rails.git/blobdiff - app/models/old_way.rb
Handle errors a bit better.
[rails.git] / app / models / old_way.rb
index d89b2962168de9abf414cf6a5586d5bfa5d23960..e4df258167ca3b7f4fff49b42f014cef4d63b6c5 100644 (file)
@@ -38,7 +38,7 @@ class OldWay < ActiveRecord::Base
       tag.save!
     end
 
-    i = 0
+    i = 1
     self.segs.each do |n|
       seg = OldWaySegment.new
       seg.id = self.id
@@ -49,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