Module: AutoSessionTimeout::ClassMethods

Defined in:
lib/auto_session_timeout.rb

Instance Method Summary collapse

Instance Method Details

#auto_session_timeout(seconds) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
# File 'lib/auto_session_timeout.rb', line 9

def auto_session_timeout(seconds)
  prepend_before_filter do |c|
    if c.session[:auto_session_expires_at] && c.session[:auto_session_expires_at] < Time.now
      c.send :reset_session
    else
      unless c.send(:active_url) == c.url_for(c.params)
        c.session[:auto_session_expires_at] = Time.now + seconds
      end
    end
  end
end

#auto_session_timeout_actionsObject



21
22
23
24
# File 'lib/auto_session_timeout.rb', line 21

def auto_session_timeout_actions
  define_method(:active) { render_session_status }
  define_method(:timeout) { render_session_timeout }
end