lib/puffer/controller/auth.rb in puffer-0.0.32 vs lib/puffer/controller/auth.rb in puffer-0.1.0

- old
+ new

@@ -33,21 +33,13 @@ # # In this case returner user model instance should respond to has_role? # method, or you should properly redefine +has_puffer_access?+ See # +has_puffer_access?+ source and docs. def current_puffer_user - @current_puffer_user ||= super rescue (PufferUser.find(session[:puffer_user_id]) if session[:puffer_user_id]) + @current_puffer_user ||= super rescue (::Admin::SessionsController.model.to_adapter.find_first(:conditions => {:_id => session[:puffer_user_id]}) if session[:puffer_user_id]) end - # Used in before_filter to prevent unauthorized access - def require_puffer_user - unless has_puffer_access?(puffer_namespace) - redirect_to new_admin_session_url(:return_to => request.fullpath) - return false - end - end - # This method is also part of auth system and it can be redefined at the # ApplicationController. # # ex: # @@ -59,9 +51,21 @@ # current_puffer_user.send("#{namespace}?") # end # end def has_puffer_access? namespace super rescue (current_puffer_user && current_puffer_user.has_role?(namespace)) + end + + # Used in before_filter to prevent unauthorized access + def require_puffer_user + unless has_puffer_access?(puffer_namespace) + redirect_to new_admin_session_url(:return_to => request.fullpath) + return false + end + end + + def redirect_back_or default + redirect_to(params[:return_to].presence || default) end end end \ No newline at end of file