module Devise::Models::Invalidatable
Public Instance Methods
activate_session(options = {})
click to toggle source
# File lib/devise_invalidatable/model.rb, line 14 def activate_session(options = {}) new_session = user_sessions.new new_session.session_id = SecureRandom.hex(127) new_session.ip = options[:ip] if options[:ip] new_session.user_agent = options[:user_agent] if options[:user_agent] new_session.save purge_old_sessions new_session.session_id end
exclusive_session(session_id)
click to toggle source
# File lib/devise_invalidatable/model.rb, line 24 def exclusive_session(session_id) user_sessions.where('session_id != ?', session_id).delete_all end
purge_old_sessions()
click to toggle source
# File lib/devise_invalidatable/model.rb, line 32 def purge_old_sessions user_sessions.order('created_at desc').offset(10).destroy_all end
session_active?(session_id)
click to toggle source
# File lib/devise_invalidatable/model.rb, line 28 def session_active?(session_id) user_sessions.where(session_id: session_id).exists? end