assert_method :put
way = Way.from_xml(request.raw_post, true)
-
+
if way
way.create_with_history @user
render :text => way.id.to_s, :content_type => "text/plain"
def read
way = Way.find(params[:id])
-
+
response.last_modified = way.timestamp
-
+
if way.visible
render :text => way.to_xml.to_s, :content_type => "text/xml"
else
def update
way = Way.find(params[:id])
new_way = Way.from_xml(request.raw_post)
-
+
if new_way and new_way.id == way.id
way.update_from(new_way, @user)
render :text => way.version.to_s, :content_type => "text/plain"
def delete
way = Way.find(params[:id])
new_way = Way.from_xml(request.raw_post)
-
+
if new_way and new_way.id == way.id
way.delete_with_history!(new_way, @user)
render :text => way.version.to_s, :content_type => "text/plain"
def full
way = Way.includes(:nodes => :node_tags).find(params[:id])
-
+
if way.visible
visible_nodes = {}
changeset_cache = {}
end
end
doc.root << way.to_xml_node(visible_nodes, changeset_cache, user_display_name_cache)
-
+
render :text => doc.to_s, :content_type => "text/xml"
else
render :text => "", :status => :gone
end
##
- # returns all the ways which are currently using the node given in the
+ # returns all the ways which are currently using the node given in the
# :id parameter. note that this used to return deleted ways as well, but
# this seemed not to be the expected behaviour, so it was removed.
def ways_for_node