app/models/quo_vadis/account.rb in quo_vadis-2.1.0 vs app/models/quo_vadis/account.rb in quo_vadis-2.1.1
- old
+ new
@@ -33,9 +33,22 @@
# Returns an array of the recovery codes' codes.
def generate_recovery_codes
Array.new(MAX_NUMBER_OF_RECOVERY_CODES) { recovery_codes.create }.map &:code
end
+ def revoke
+ password&.destroy
+ totp&.destroy
+ recovery_codes.destroy_all
+ sessions.destroy_all
+
+ Log.create(
+ account: self,
+ action: Log::REVOKE,
+ ip: (CurrentRequestDetails.ip || '')
+ )
+ end
+
private
def log_identifier_change
from, to = saved_change_to_identifier
Log.create(