- check_changeset_modify([4,4,4,4]) do |changeset_id|
- # add node 4 (4,4) to an existing relation
- relation_xml = current_relations(:visible_relation).to_xml
- relation_element = relation_xml.find("//osm/relation").first
- new_member = XML::Node.new("member")
- new_member['ref'] = current_nodes(:used_node_2).id.to_s
- new_member['type'] = "node"
- new_member['role'] = "some_role"
- relation_element << new_member
+ relation_id = current_relations(:visible_relation).id
+
+ [current_nodes(:used_node_1),
+ current_nodes(:used_node_2),
+ current_ways(:used_way),
+ current_ways(:way_with_versions)
+ ].each_with_index do |element, version|
+ bbox = element.bbox.collect { |x| x / SCALE }
+ check_changeset_modify(bbox) do |changeset_id|
+ relation_xml = Relation.find(relation_id).to_xml
+ relation_element = relation_xml.find("//osm/relation").first
+ new_member = XML::Node.new("member")
+ new_member['ref'] = element.id.to_s
+ new_member['type'] = element.class.to_s.downcase
+ new_member['role'] = "some_role"
+ relation_element << new_member