X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/b9ae40d9784725b75e5b52f55659c80326656d8f..03ca0b2c697052c80b25f2111ab6ab718478a95a:/app/controllers/api/ways_controller.rb diff --git a/app/controllers/api/ways_controller.rb b/app/controllers/api/ways_controller.rb index 102be29bd..a7c876710 100644 --- a/app/controllers/api/ways_controller.rb +++ b/app/controllers/api/ways_controller.rb @@ -11,6 +11,8 @@ module Api before_action :check_api_readable, :except => [:create, :update, :delete] around_action :api_call_handle_error, :api_call_timeout + before_action :set_default_request_format, :except => [:create, :update, :delete] + def create assert_method :put @@ -22,16 +24,15 @@ module Api end def show - way = Way.find(params[:id]) + @way = Way.find(params[:id]) - response.last_modified = way.timestamp - - if way.visible - @way = way + response.last_modified = @way.timestamp + if @way.visible # Render the result respond_to do |format| format.xml + format.json end else head :gone @@ -64,25 +65,24 @@ module Api end def full - way = Way.includes(:nodes => :node_tags).find(params[:id]) + @way = Way.includes(:nodes => :node_tags).find(params[:id]) - if way.visible + if @way.visible visible_nodes = {} @nodes = [] - way.nodes.uniq.each do |node| + @way.nodes.uniq.each do |node| if node.visible @nodes << node visible_nodes[node.id] = node end end - @way = way - # Render the result respond_to do |format| format.xml + format.json end else head :gone @@ -103,6 +103,7 @@ module Api # Render the result respond_to do |format| format.xml + format.json end end @@ -118,6 +119,7 @@ module Api # Render the result respond_to do |format| format.xml + format.json end end end