Better Error for Stale Session

Rather than giving a generic 500 error, tell the user to reload the page.
This commit is contained in:
Jacques Distler 2007-12-30 10:41:19 -06:00
parent a2c7705de5
commit 0c16ab4e6f

View file

@ -115,6 +115,9 @@ class ApplicationController < ActionController::Base
end end
def rescue_action_in_public(exception) def rescue_action_in_public(exception)
if exception.instance_of?(CGI::Session::CookieStore::TamperedWithCookie)
render :text => 'Stale session. Please reload the page.', :status =>500, :layout => 'error'
else
render :status => 500, :text => <<-EOL render :status => 500, :text => <<-EOL
<html xmlns="http://www.w3.org/1999/xhtml"><body> <html xmlns="http://www.w3.org/1999/xhtml"><body>
<h2>Internal Error</h2> <h2>Internal Error</h2>
@ -123,6 +126,7 @@ class ApplicationController < ActionController::Base
</body></html> </body></html>
EOL EOL
end end
end
def return_to_last_remembered def return_to_last_remembered
# Forget the redirect location # Forget the redirect location