Module: Lite::Regulations::Expiration

Extended by:
ActiveSupport::Concern
Defined in:
lib/lite/regulations/expiration.rb

Instance Method Summary collapse

Instance Method Details

#expire!Object

rubocop:enable Style/Lambda



20
21
22
23
24
# File 'lib/lite/regulations/expiration.rb', line 20

def expire!
  return true if expires_at.nil?

  update(expires_at: nil)
end

#expired?Boolean

Returns:

  • (Boolean)


26
27
28
29
30
# File 'lib/lite/regulations/expiration.rb', line 26

def expired?
  return true if expires_at.nil?

  Lite::Regulations::Base.timestamp >= expires_at
end

#expires_at_or_time(amount = nil) ⇒ Object



48
49
50
51
52
# File 'lib/lite/regulations/expiration.rb', line 48

def expires_at_or_time(amount = nil)
  return expires_at if unexpired?

  extension_date(amount)
end

#extend!(amount = nil) ⇒ Object



32
33
34
# File 'lib/lite/regulations/expiration.rb', line 32

def extend!(amount = nil)
  update(expires_at: extension_date(amount))
end

#to_expirationObject



54
55
56
# File 'lib/lite/regulations/expiration.rb', line 54

def to_expiration
  I18n.t("lite.regulations.expiration.#{:un if unexpired?}expired")
end

#unexpire!Object



36
37
38
39
40
# File 'lib/lite/regulations/expiration.rb', line 36

def unexpire!
  return true unless expires_at.nil?

  update(expires_at: extension_date)
end

#unexpired?Boolean

Returns:

  • (Boolean)


42
43
44
45
46
# File 'lib/lite/regulations/expiration.rb', line 42

def unexpired?
  return false if expires_at.nil?

  Lite::Regulations::Base.timestamp < expires_at
end