Module: Devise::Models::Invalidatable
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/devise_invalidatable/model.rb
Instance Method Summary collapse
- #activate_session ⇒ Object
- #exclusive_session(session_id) ⇒ Object
- #purge_old_sessions ⇒ Object
- #session_active?(session_id) ⇒ Boolean
Instance Method Details
#activate_session ⇒ Object
14 15 16 17 18 19 20 |
# File 'lib/devise_invalidatable/model.rb', line 14 def activate_session new_session = user_sessions.new new_session.session_id = SecureRandom.hex(127) new_session.save purge_old_sessions new_session.session_id end |
#exclusive_session(session_id) ⇒ Object
22 23 24 |
# File 'lib/devise_invalidatable/model.rb', line 22 def exclusive_session(session_id) user_sessions.where('session_id != ?', session_id).delete_all end |
#purge_old_sessions ⇒ Object
30 31 32 |
# File 'lib/devise_invalidatable/model.rb', line 30 def purge_old_sessions user_sessions.order('created_at desc').offset(10).destroy_all end |
#session_active?(session_id) ⇒ Boolean
26 27 28 |
# File 'lib/devise_invalidatable/model.rb', line 26 def session_active?(session_id) user_sessions.where(session_id: session_id).exists? end |