gitlab-org--gitlab-foss/app/controllers/oauth/authorizations_controller.rb

36 lines
880 B
Ruby
Raw Normal View History

# frozen_string_literal: true
2014-12-19 14:15:29 +00:00
class Oauth::AuthorizationsController < Doorkeeper::AuthorizationsController
include Gitlab::Experimentation::ControllerConcern
include InitializesCurrentUserMode
before_action :verify_confirmed_email!
layout 'profile'
2014-12-19 14:15:29 +00:00
2018-10-30 10:53:01 +00:00
# Overridden from Doorkeeper::AuthorizationsController to
# include the call to session.delete
2014-12-19 14:15:29 +00:00
def new
if pre_auth.authorizable?
if skip_authorization? || matching_token?
auth = authorization.authorize
2016-02-19 13:22:06 +00:00
session.delete(:user_return_to)
2014-12-19 14:15:29 +00:00
redirect_to auth.redirect_uri
else
render "doorkeeper/authorizations/new"
end
else
render "doorkeeper/authorizations/error"
end
end
private
def verify_confirmed_email!
return if current_user&.confirmed?
pre_auth.error = :unconfirmed_email
render "doorkeeper/authorizations/error"
end
2014-12-19 14:15:29 +00:00
end