X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/78b440ffc1e0448f8a6d73c8821dd58634ffb475..dd33fc633c1bcd2ab4ecfc412ffe5edf43491cec:/app/controllers/way_controller.rb diff --git a/app/controllers/way_controller.rb b/app/controllers/way_controller.rb index 2ef960c6e..7b7dbe81c 100644 --- a/app/controllers/way_controller.rb +++ b/app/controllers/way_controller.rb @@ -3,7 +3,8 @@ class WayController < ApplicationController session :off before_filter :authorize, :only => [:create, :update, :delete] - before_filter :check_availability, :only => [:create, :update, :delete] + before_filter :check_write_availability, :only => [:create, :update, :delete] + before_filter :check_read_availability, :except => [:create, :update, :delete] after_filter :compress_output def create @@ -15,12 +16,9 @@ class WayController < ApplicationController render :nothing => true, :status => :precondition_failed else way.user_id = @user.id + way.save_with_history! - if way.save_with_history - render :text => way.id.to_s, :content_type => "text/plain" - else - render :nothing => true, :status => :internal_server_error - end + render :text => way.id.to_s, :content_type => "text/plain" end else render :nothing => true, :status => :bad_request @@ -41,8 +39,6 @@ class WayController < ApplicationController end rescue ActiveRecord::RecordNotFound render :nothing => true, :status => :not_found - rescue - render :nothing => true, :status => :internal_server_error end end @@ -61,12 +57,9 @@ class WayController < ApplicationController way.tags = new_way.tags way.nds = new_way.nds way.visible = true + way.save_with_history! - if way.save_with_history - render :nothing => true - else - render :nothing => true, :status => :internal_server_error - end + render :nothing => true end else render :nothing => true, :status => :bad_request @@ -76,8 +69,6 @@ class WayController < ApplicationController end rescue ActiveRecord::RecordNotFound render :nothing => true, :status => :not_found - rescue - render :nothing => true, :status => :internal_server_error end end @@ -93,20 +84,17 @@ class WayController < ApplicationController way.tags = [] way.nds = [] way.visible = false + way.save_with_history! - if way.save_with_history - render :nothing => true - else - render :nothing => true, :status => :internal_server_error - end + render :nothing => true end else render :nothing => true, :status => :gone end rescue ActiveRecord::RecordNotFound render :nothing => true, :status => :not_found - rescue - render :nothing => true, :status => :internal_server_error + rescue => ex + puts ex end end @@ -131,8 +119,6 @@ class WayController < ApplicationController end rescue ActiveRecord::RecordNotFound render :nothing => true, :status => :not_found - rescue - render :nothing => true, :status => :internal_server_error end end