module Devise::Models::Timeoutable

def self.required_fields(klass)

def self.required_fields(klass)
  []
end

def remember_exists_and_not_expired?

def remember_exists_and_not_expired?
  return false unless respond_to?(:remember_created_at)
  remember_created_at && !remember_expired?
end

def timedout?(last_access)

Checks whether the user session has expired based on configured time.
def timedout?(last_access)
  return false if remember_exists_and_not_expired?
  !timeout_in.nil? && last_access && last_access <= timeout_in.ago
end

def timeout_in

def timeout_in
  self.class.timeout_in
end