]> git.openstreetmap.org Git - rails.git/blobdiff - lib/session_persistence.rb
Refactor more way_controller tests to use factories.
[rails.git] / lib / session_persistence.rb
index 7d45d1fc4e59af2c067aca4049f2f7d56808861f..d4dd1cc1de3aa53a8b2516993aa517382537166f 100644 (file)
 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 module SessionPersistence
-  private
+  class << self
+    private
 
-  # Install filter when we are included
-  def self.included(controller)
-    controller.after_filter :persist_session
+    # Install filter when we are included
+    def included(controller)
+      controller.after_filter :persist_session
+    end
   end
 
+  private
+
   # Override this method if you don't want to use session[:_remember_for].
   def session_persistence_key
     :_remember_for
@@ -37,7 +41,7 @@ module SessionPersistence
   #   session_expires_after 1.hour
   #   session_expires_after 2.weeks
   def session_expires_after(seconds)
-    session[session_persistence_key] = seconds 
+    session[session_persistence_key] = seconds
   end
 
   # Expire the session.
@@ -51,5 +55,7 @@ module SessionPersistence
     if session[session_persistence_key]
       request.session_options[:expire_after] = session[session_persistence_key]
     end
+  rescue
+    reset_session
   end
 end