Class: Passwordless::Session
- Inherits:
-
ApplicationRecord
- Object
- ActiveRecord::Base
- ApplicationRecord
- Passwordless::Session
- Defined in:
- app/models/passwordless/session.rb
Overview
The session responsible for holding the connection between the record trying to log in and the unique tokens.
Class Method Summary collapse
Instance Method Summary collapse
- #available? ⇒ Boolean
- #claim! ⇒ Object
- #claimed? ⇒ Boolean
- #expired? ⇒ Boolean
- #timed_out? ⇒ Boolean
Class Method Details
.valid ⇒ Object
25 26 27 |
# File 'app/models/passwordless/session.rb', line 25 def self.valid available end |
Instance Method Details
#available? ⇒ Boolean
49 50 51 |
# File 'app/models/passwordless/session.rb', line 49 def available? !expired? end |
#claim! ⇒ Object
40 41 42 43 |
# File 'app/models/passwordless/session.rb', line 40 def claim! raise Errors::TokenAlreadyClaimedError if claimed? touch(:claimed_at) end |
#claimed? ⇒ Boolean
45 46 47 |
# File 'app/models/passwordless/session.rb', line 45 def claimed? !!claimed_at end |
#expired? ⇒ Boolean
32 33 34 |
# File 'app/models/passwordless/session.rb', line 32 def expired? expires_at <= Time.current end |
#timed_out? ⇒ Boolean
36 37 38 |
# File 'app/models/passwordless/session.rb', line 36 def timed_out? timeout_at <= Time.current end |