Module: Authlogic::ActsAsAuthentic::LoggedInStatus::Methods

Defined in:
lib/authlogic/acts_as_authentic/logged_in_status.rb

Overview

All methods for the logged in status feature seat.

Defined Under Namespace

Modules: InstanceMethods

Class Method Summary collapse

Class Method Details

.included(klass) ⇒ Object



32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/authlogic/acts_as_authentic/logged_in_status.rb', line 32

def self.included(klass)
  return unless klass.column_names.include?("last_request_at")

  klass.class_eval do
    include InstanceMethods
    scope(
      :logged_in,
      lambda do
        where(
          "last_request_at > ? and current_login_at IS NOT NULL",
          logged_in_timeout.seconds.ago
        )
      end
    )
    scope(
      :logged_out,
      lambda do
        where(
          "last_request_at is NULL or last_request_at <= ?",
          logged_in_timeout.seconds.ago
        )
      end
    )
  end
end