X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/f0feca800d91ac1d23eb63ca17a45d8fd4d41920..a2c1fe793002595049694936b7ff9e46e8d1befb:/app/controllers/oauth_clients_controller.rb diff --git a/app/controllers/oauth_clients_controller.rb b/app/controllers/oauth_clients_controller.rb index 32fbbdd62..b925002ec 100644 --- a/app/controllers/oauth_clients_controller.rb +++ b/app/controllers/oauth_clients_controller.rb @@ -1,13 +1,14 @@ class OauthClientsController < ApplicationController - layout 'site' + layout "site" - before_filter :authorize_web - before_filter :set_locale - before_filter :require_user + before_action :authorize_web + before_action :set_locale + + authorize_resource :class => ClientApplication def index - @client_applications = @user.client_applications - @tokens = @user.oauth_tokens.authorized + @client_applications = current_user.client_applications + @tokens = current_user.oauth_tokens.authorized end def new @@ -15,9 +16,9 @@ class OauthClientsController < ApplicationController end def create - @client_application = @user.client_applications.build(application_params) + @client_application = current_user.client_applications.build(application_params) if @client_application.save - flash[:notice] = t'oauth_clients.create.flash' + flash[:notice] = t "oauth_clients.create.flash" redirect_to :action => "show", :id => @client_application.id else render :action => "new" @@ -25,33 +26,44 @@ class OauthClientsController < ApplicationController end def show - @client_application = @user.client_applications.find(params[:id]) + @client_application = current_user.client_applications.find(params[:id]) rescue ActiveRecord::RecordNotFound @type = "client application" render :action => "not_found", :status => :not_found end def edit - @client_application = @user.client_applications.find(params[:id]) + @client_application = current_user.client_applications.find(params[:id]) + rescue ActiveRecord::RecordNotFound + @type = "client application" + render :action => "not_found", :status => :not_found end def update - @client_application = @user.client_applications.find(params[:id]) - if @client_application.update_attributes(application_params) - flash[:notice] = t'oauth_clients.update.flash' + @client_application = current_user.client_applications.find(params[:id]) + if @client_application.update(application_params) + flash[:notice] = t "oauth_clients.update.flash" redirect_to :action => "show", :id => @client_application.id else render :action => "edit" end + rescue ActiveRecord::RecordNotFound + @type = "client application" + render :action => "not_found", :status => :not_found end def destroy - @client_application = @user.client_applications.find(params[:id]) + @client_application = current_user.client_applications.find(params[:id]) @client_application.destroy - flash[:notice] = t'oauth_clients.destroy.flash' + flash[:notice] = t "oauth_clients.destroy.flash" redirect_to :action => "index" + rescue ActiveRecord::RecordNotFound + @type = "client application" + render :action => "not_found", :status => :not_found end -private + + private + def application_params params.require(:client_application).permit(:name, :url, :callback_url, :support_url, ClientApplication.all_permissions) end