X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/7058d836f75c845b7790c7ab6eb2f75844ce0c1c..995c9df1958a9f2333748179fe276bc9886b8a86:/app/models/way.rb diff --git a/app/models/way.rb b/app/models/way.rb index c9e695b32..7c29a44b3 100644 --- a/app/models/way.rb +++ b/app/models/way.rb @@ -101,7 +101,10 @@ class Way < ActiveRecord::Base user_display_name_cache[self.changeset.user_id] = nil end - el1['user'] = user_display_name_cache[self.changeset.user_id] unless user_display_name_cache[self.changeset.user_id].nil? + if not user_display_name_cache[self.changeset.user_id].nil? + el1['user'] = user_display_name_cache[self.changeset.user_id] + el1['uid'] = self.changeset.user_id.to_s + end # make sure nodes are output in sequence_id order ordered_nodes = [] @@ -113,7 +116,7 @@ class Way < ActiveRecord::Base end else # otherwise, manually go to the db to check things - if nd.node.visible? and nd.node.visible? + if nd.node and nd.node.visible? ordered_nodes[nd.sequence_id] = nd.node_id.to_s end end @@ -288,22 +291,24 @@ class Way < ActiveRecord::Base end end - # delete a way and it's nodes that aren't part of other ways, with history + # delete a way and its nodes that aren't part of other ways, with history # FIXME: merge the potlatch code to delete the relations - def delete_with_relations_and_nodes_and_history(user) + # and refactor to use delete_with_history! + def delete_with_relations_and_nodes_and_history(changeset_id) # delete the nodes not used by other ways self.unshared_node_ids.each do |node_id| n = Node.find(node_id) - n.user_id = user.id + n.changeset_id = changeset_id n.visible = false n.save_with_history! end - # FIXME needs more information passed in so that the changeset can be updated - self.user_id = user.id - - self.delete_with_history(user) + self.changeset_id = changeset_id + self.tags = [] + self.nds = [] + self.visible = false + self.save_with_history! end # Find nodes that belong to this way only