Instance methods for the session feature.
Tries to validate the session from information in the session
# File lib/authlogic/session/session.rb, line 32 def persist_by_session persistence_token, record_id = session_credentials if !persistence_token.nil? # Allow finding by persistence token, because when records are created the session is maintained in a before_save, when there is no id. # This is done for performance reasons and to save on queries. record = record_id.nil? ? search_for_record("find_by_persistence_token", persistence_token) : search_for_record("find_by_#{klass.primary_key}", record_id) self.unauthorized_record = record if record && record.persistence_token == persistence_token valid? else false end end
# File lib/authlogic/session/session.rb, line 47 def session_credentials [controller.session[session_key], controller.session["#{session_key}_#{klass.primary_key}"]].compact end
# File lib/authlogic/session/session.rb, line 51 def session_key build_key(self.class.session_key) end
# File lib/authlogic/session/session.rb, line 55 def update_session controller.session[session_key] = record && record.persistence_token controller.session["#{session_key}_#{klass.primary_key}"] = record && record.send(record.class.primary_key) end