diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index e9194643..bf244740 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -88,6 +88,7 @@ def access_denied redirect_back_or_default root_url else flash[:error] = 'Access denied. Try to log in first.' + session[:return_to] = request.url if request.get? redirect_back_or_default root_url end end diff --git a/app/controllers/user_sessions_controller.rb b/app/controllers/user_sessions_controller.rb index 7aeeaa72..8c700953 100644 --- a/app/controllers/user_sessions_controller.rb +++ b/app/controllers/user_sessions_controller.rb @@ -15,7 +15,12 @@ def create @user_session = UserSession.new(params[:user_session]) if @user_session.save flash[:notice] = "Login successful!" - redirect_back_or_default root_url + if session[:return_to] + redirect_to session[:return_to] + session.delete :return_to + else + redirect_back_or_default root_url + end else flash[:error] = @user_session.errors.full_messages.to_sentence redirect_back_or_default root_url