module Lite::Regulations::Expiration
Public Instance Methods
expire!()
click to toggle source
rubocop:enable Style/Lambda
# File lib/lite/regulations/expiration.rb, line 20 def expire! return true if expires_at.nil? update(expires_at: nil) end
expired?()
click to toggle source
# 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)
click to toggle source
# 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)
click to toggle source
# File lib/lite/regulations/expiration.rb, line 32 def extend!(amount = nil) update(expires_at: extension_date(amount)) end
to_expiration()
click to toggle source
# File lib/lite/regulations/expiration.rb, line 54 def to_expiration I18n.t("lite.regulations.expiration.#{:un if unexpired?}expired") end
unexpire!()
click to toggle source
# File lib/lite/regulations/expiration.rb, line 36 def unexpire! return true unless expires_at.nil? update(expires_at: extension_date) end
unexpired?()
click to toggle source
# File lib/lite/regulations/expiration.rb, line 42 def unexpired? return false if expires_at.nil? Lite::Regulations::Base.timestamp < expires_at end
Private Instance Methods
extension_date(amount = nil)
click to toggle source
# File lib/lite/regulations/expiration.rb, line 60 def extension_date(amount = nil) amount ||= 30 return amount unless amount.is_a?(Integer) Lite::Regulations::Base.timestamp + amount end