X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/17e6e69c39072d8e6cb316b75b311e89c92cca45..1096b3b8e2d986bc522c46d8d50b723dfd4dfff8:/app/controllers/api/traces_controller.rb?ds=sidebyside diff --git a/app/controllers/api/traces_controller.rb b/app/controllers/api/traces_controller.rb index fd43a1d44..6c77f9dc4 100644 --- a/app/controllers/api/traces_controller.rb +++ b/app/controllers/api/traces_controller.rb @@ -1,7 +1,5 @@ module Api class TracesController < ApiController - layout "site", :except => :georss - before_action :authorize_web before_action :set_locale before_action :authorize @@ -12,18 +10,13 @@ module Api before_action :check_database_writable, :only => [:create, :update, :destroy] before_action :check_api_readable, :only => [:show, :data] before_action :check_api_writable, :only => [:create, :update, :destroy] - before_action :offline_redirect, :only => [:create, :destroy, :data] + before_action :offline_error, :only => [:create, :destroy, :data] around_action :api_call_handle_error def show - trace = Trace.visible.find(params[:id]) + @trace = Trace.visible.find(params[:id]) - if trace.public? || trace.user == current_user - @traces = [trace] - render "trace" - else - head :forbidden - end + head :forbidden unless @trace.public? || @trace.user == current_user end def update @@ -163,8 +156,8 @@ module Api trace end - def offline_redirect - redirect_to :action => :offline if Settings.status == "gpx_offline" + def offline_error + report_error "GPX files offline for maintenance", :service_unavailable if Settings.status == "gpx_offline" end end end