Sha256: c9be37a615da936bde2880b52a13eeedc1c48d4cca2fb5850ead443ba293bb8b
Contents?: true
Size: 1.21 KB
Versions: 7
Compression:
Stored size: 1.21 KB
Contents
require 'janus/hooks/rememberable' module Janus module Strategies class Rememberable < Base def valid? rememberable? && !remember_cookie.nil? end def authenticate! user = resource.find_for_remember_authentication(remember_cookie) if user.nil? destroy_remember_cookie pass else success!(user) extend_remember_period if resource.extend_remember_period end end def self.remember_cookie_name(scope) "remember_#{scope}_token" end private def destroy_remember_cookie request.cookies.delete(remember_cookie_name) end def extend_remember_period cookies[remember_cookie_name] = { :value => @user.remember_token, :expires => resource.remember_for.from_now } user.update_attribute(:remember_created_at, Time.now) end def remember_cookie_name self.class.remember_cookie_name(scope) end def remember_cookie request.cookies[remember_cookie_name] end def rememberable? resource.include?(Janus::Models::Rememberable) end end end end
Version data entries
7 entries across 7 versions & 1 rubygems