lib/devise/models/lockable.rb in devise-4.7.3 vs lib/devise/models/lockable.rb in devise-4.8.0

- old
+ new

@@ -55,10 +55,18 @@ self.failed_attempts = 0 if respond_to?(:failed_attempts=) self.unlock_token = nil if respond_to?(:unlock_token=) save(validate: false) end + # Resets failed attempts counter to 0. + def reset_failed_attempts! + if respond_to?(:failed_attempts) && !failed_attempts.to_i.zero? + self.failed_attempts = 0 + save(validate: false) + end + end + # Verifies whether a user is locked or not. def access_locked? !!locked_at && !lock_expired? end @@ -108,10 +116,10 @@ save(validate: false) end false end end - + def increment_failed_attempts self.class.increment_counter(:failed_attempts, id) reload end