Class: Iron::Integration

Inherits:
ApplicationRecord show all
Defined in:
app/models/iron/integration.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.authenticate(token) ⇒ Object



11
12
13
14
15
16
17
18
19
20
# File 'app/models/iron/integration.rb', line 11

def self.authenticate(token)
  return if token.blank?

  integration = find_by(token:)
  return if integration.nil? || integration.expired?
  return unless integration.user&.active?

  integration.touch(:last_used_at)
  integration.user
end

Instance Method Details

#expired?Boolean

Returns:

  • (Boolean)


22
23
24
# File 'app/models/iron/integration.rb', line 22

def expired?
  expires_at? && expires_at.past?
end