diff options
Diffstat (limited to 'app/controllers')
-rw-r--r-- | app/controllers/oauth/authorizations_controller.rb | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/app/controllers/oauth/authorizations_controller.rb b/app/controllers/oauth/authorizations_controller.rb index 2a4e659c5b9..f6ad2bf5312 100644 --- a/app/controllers/oauth/authorizations_controller.rb +++ b/app/controllers/oauth/authorizations_controller.rb @@ -4,6 +4,8 @@ class Oauth::AuthorizationsController < Doorkeeper::AuthorizationsController include Gitlab::Experimentation::ControllerConcern include InitializesCurrentUserMode + before_action :verify_confirmed_email!, only: [:new] + layout 'profile' # Overridden from Doorkeeper::AuthorizationsController to @@ -21,4 +23,13 @@ class Oauth::AuthorizationsController < Doorkeeper::AuthorizationsController 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 end |