Module: StandardId::AccountLocking

Extended by:
ActiveSupport::Concern
Defined in:
lib/standard_id/account_locking.rb

Instance Method Summary collapse

Instance Method Details

#lock!(reason:, locked_by: nil) ⇒ Object



37
38
39
40
41
42
43
44
45
46
# File 'lib/standard_id/account_locking.rb', line 37

def lock!(reason:, locked_by: nil)
  return true if locked?

  update!(
    locked: true,
    locked_at: Time.current,
    lock_reason: reason,
    locked_by: locked_by
  )
end

#locked?Boolean

Returns:

  • (Boolean)


29
30
31
# File 'lib/standard_id/account_locking.rb', line 29

def locked?
  locked == true
end

#unlock!(unlocked_by: nil) ⇒ Object



48
49
50
51
52
53
54
55
56
57
# File 'lib/standard_id/account_locking.rb', line 48

def unlock!(unlocked_by: nil)
  return true if unlocked?

  update!(
    locked: false,
    unlocked_at: Time.current,
    unlocked_by: unlocked_by,
    lock_reason: nil
  )
end

#unlocked?Boolean

Returns:

  • (Boolean)


33
34
35
# File 'lib/standard_id/account_locking.rb', line 33

def unlocked?
  !locked?
end