Class: NoPassword::SessionManager
- Inherits:
-
Object
- Object
- NoPassword::SessionManager
- Defined in:
- app/use_cases/no_password/session_manager.rb
Instance Method Summary collapse
Instance Method Details
#claim(token) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'app/use_cases/no_password/session_manager.rb', line 18 def claim(token) current_time = Time.zone.now session = Session .where(token: token, claimed_at: nil) .where("expires_at > ?", current_time) .first if session.present? session.claimed_at = current_time session.save return session end nil end |
#create(user_agent, email, remote_addr, return_url = nil) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 |
# File 'app/use_cases/no_password/session_manager.rb', line 5 def create(user_agent, email, remote_addr, return_url = nil) expire_unclaimed_session(email) Session.create( user_agent: user_agent, email: email, expires_at: NoPassword.configuration.session_expiration.from_now, token: generate_friendly_token, remote_addr: remote_addr, return_url: return_url ) end |