diff options
Diffstat (limited to 'app/controllers/passwords_controller.rb')
-rw-r--r-- | app/controllers/passwords_controller.rb | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/app/controllers/passwords_controller.rb b/app/controllers/passwords_controller.rb index c764f2d0459..ead5d7c9026 100644 --- a/app/controllers/passwords_controller.rb +++ b/app/controllers/passwords_controller.rb @@ -1,8 +1,12 @@ # frozen_string_literal: true class PasswordsController < Devise::PasswordsController + include GitlabRecaptcha + skip_before_action :require_no_authentication, only: [:edit, :update] + prepend_before_action :check_recaptcha, only: :create + before_action :load_recaptcha, only: :new before_action :resource_from_email, only: [:create] before_action :check_password_authentication_available, only: [:create] before_action :throttle_reset, only: [:create] @@ -59,6 +63,12 @@ class PasswordsController < Devise::PasswordsController alert: _("Password authentication is unavailable.") end + def check_recaptcha + return unless resource_params[:email].present? + + super + end + def throttle_reset return unless resource && resource.recently_sent_password_reset? |