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:
parent
0fd11224af
commit
d27ff25473
7 changed files with 10 additions and 15 deletions
|
@ -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")
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue