Improve handling of login/logout some more to improve the chances of

us ending up on the right page afterwards.
This commit is contained in:
Tom Hughes 2007-06-11 23:49:03 +00:00
parent 0fd11224af
commit d27ff25473
7 changed files with 10 additions and 15 deletions

View file

@ -7,7 +7,7 @@ class ApplicationController < ActionController::Base
end
def require_user
redirect_to :controller => 'user', :action => 'login', :next_controller => controller_name, :next_action => action_name unless @user
redirect_to :controller => 'user', :action => 'login', :referer => request.request_uri unless @user
end
def authorize(realm='Web Password', errormessage="Couldn't authenticate you")

View file

@ -84,7 +84,7 @@ class TraceController < ApplicationController
if @user
list(@user, 'mine') unless @user.nil?
else
redirect_to :controller => 'user', :action => 'login'
redirect_to :controller => 'user', :action => 'login', :referer => request.request_uri
end
end

View file

@ -99,8 +99,8 @@ class UserController < ApplicationController
u.timeout = 1.day.from_now
u.save
session[:token] = u.token
if params[:next_controller] and params[:next_action]
redirect_to :controller => params[:next_controller], :action => params[:next_action]
if params[:referer]
redirect_to params[:referer]
else
redirect_to :controller => 'site', :action => 'index'
end
@ -121,8 +121,8 @@ class UserController < ApplicationController
end
end
session[:token] = nil
if params[:next_controller] and params[:next_action]
redirect_to :controller => params[:next_controller], :action => params[:next_action]
if params[:referer]
redirect_to params[:referer]
else
redirect_to :controller => 'site', :action => 'index'
end