]> git.openstreetmap.org Git - rails.git/blobdiff - app/models/way.rb
Return usernames correctly.
[rails.git] / app / models / way.rb
index cd06b121035cf5e89a67e8531152fc0b51ffa39b..d5d2dc98ef8b11ee92173c090862ccf7ad8aab44 100644 (file)
@@ -56,14 +56,17 @@ class Way < ActiveRecord::Base
     el1['visible'] = self.visible.to_s
     el1['timestamp'] = self.timestamp.xmlschema
 
+    user_display_name_cache = {} if user_display_name_cache.nil?
+    
     if user_display_name_cache and user_display_name_cache[self.user_id]
       # use the cache if available
-    else
+    elsif self.user.data_public?
       user_display_name_cache[self.user_id] = self.user.display_name
+    else
+      user_display_name_cache[self.user_id] = nil
     end
-    
-    #el1['user'] = self.user.display_name if self.user.data_public?
-    el1['user'] = user_display_name_cache[self.user_id]
+
+    el1['user'] = user_display_name_cache[self.user_id] unless user_display_name_cache[self.user_id].nil?
 
     # make sure segments are output in sequence_id order
     ordered_segments = []
@@ -82,7 +85,7 @@ class Way < ActiveRecord::Base
     end
 
     ordered_segments.each do |seg_id|
-      if seg_id
+      if seg_id and seg_id != '0'
         e = XML::Node.new 'seg'
         e['id'] = seg_id
         el1 << e