Change `POST /settings/applications/:id` to regenerate token on scopes change (#23359)

Fixes #23096
local
Claire 1 year ago committed by GitHub
parent 6a5e447753
commit 20a479ff7c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 8
      app/controllers/settings/applications_controller.rb
  2. 2
      spec/controllers/settings/applications_controller_spec.rb

@ -29,7 +29,13 @@ class Settings::ApplicationsController < Settings::BaseController
def update
if @application.update(application_params)
redirect_to settings_applications_path, notice: I18n.t('generic.changes_saved_msg')
if @application.scopes_previously_changed?
@access_token = current_user.token_for_app(@application)
@access_token.destroy
redirect_to settings_application_path(@application), notice: I18n.t('applications.token_regenerated')
else
redirect_to settings_application_path(@application), notice: I18n.t('generic.changes_saved_msg')
end
else
render :show
end

@ -132,7 +132,7 @@ describe Settings::ApplicationsController do
end
it 'redirects back to applications page' do
expect(call_update).to redirect_to(settings_applications_path)
expect(call_update).to redirect_to(settings_application_path(app))
end
end

Loading…
Cancel
Save