Instance Methods
Deletes the server-side record of the authentication token. The client-side (browser cookie) and server-side (this remember_token) must always be deleted together.
# File lib/authentication/by_cookie_token.rb, line 54 def forget_me self.remember_token_expires_at = nil self.remember_token = nil save(false) end
refresh token (keeping same expires_at) if it exists
# File lib/authentication/by_cookie_token.rb, line 42 def refresh_token if remember_token? self.remember_token = self.class.make_token save(false) end end
These create and unset the fields required for remembering users between browser closes
# File lib/authentication/by_cookie_token.rb, line 27 def remember_me remember_me_for 2.weeks end
# File lib/authentication/by_cookie_token.rb, line 31 def remember_me_for(time) remember_me_until time.from_now.utc end
# File lib/authentication/by_cookie_token.rb, line 35 def remember_me_until(time) self.remember_token_expires_at = time self.remember_token = self.class.make_token save(false) end
# File lib/authentication/by_cookie_token.rb, line 21 def remember_token? (!remember_token.blank?) && remember_token_expires_at && (Time.now.utc < remember_token_expires_at.utc) end