Solved

unknown error "store referer" rails, restful_authentication

Posted on 2010-08-13
1
664 Views
Last Modified: 2013-11-13
i am often seeing this error in my exception notification inbox. What is happening andd why is the user not seeing a nice flash error notification?

A NameError occurred in users#new:

 undefined local variable or method `store_referer' for #<UsersController:0xb69d33f0>
 [RAILS_ROOT]/lib/authenticated_system.rb:101:in `permission_denied'


def permission_denied      
       respond_to do |format|
         format.html do
           #Put your domain name here ex. http://www.example.com
           domain_name = "http://www.ndthub.com"
           http_referer = session[:refer_to]
           if http_referer.nil?
             store_referer
             http_referer = ( session[:refer_to] || domain_name )
           end
           flash[:error] = "You don't have permission to complete that action."
           #The [0..20] represents the 21 characters in http://localhost:3000
           #You have to set that to the number of characters in your domain name
           if http_referer[0..20] != domain_name  
            session[:refer_to] = nil
           redirect_to root_path
           else
             redirect_to_referer_or_default(root_path)  
           end
         end
         format.xml do
           headers["Status"]           = "Unauthorized"
           headers["WWW-Authenticate"] = %(Basic realm="Web Password")
           render :text => "You don't have permission to complete this action.", :status => '401 Unauthorized'
         end
       end
     end

Open in new window

0
Comment
Question by:depassion
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment
 
LVL 14

Accepted Solution

by:
wesgarrison earned 500 total points
ID: 33437376
Looks like you need a method for store_referer() since it can't find it.

The point of that is that someone goes to /admin/dashboard and isn't logged in, you would store that and redirect them to the login page.  If they logged in successfully, they would be redirected to where they were trying to go.

If you don't need that functionality, just redirect them to the root_path and get rid of everything else in that action.
0

Featured Post

[Live Webinar] The Cloud Skills Gap

As Cloud technologies come of age, business leaders grapple with the impact it has on their team's skills and the gap associated with the use of a cloud platform.

Join experts from 451 Research and Concerto Cloud Services on July 27th where we will examine fact and fiction.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Article by: narshlob
If you've ever programmed in Ruby and have come across either a proc or a lambda, you might have been wondering what the difference is between the two and when you would use one over the other. This article will try to explain the difference between…
In Ruby, Call or invoke a API DLL library is easily via Win32API class, win32-api gem or other gems. For general DLL API call, there are quite a few references, some good tips list below: http://www.rubytips.org/2008/05/13/accessing-windows-api-fro…
Michael from AdRem Software explains how to view the most utilized and worst performing nodes in your network, by accessing the Top Charts view in NetCrunch network monitor (https://www.adremsoft.com/). Top Charts is a view in which you can set seve…
In this brief tutorial Pawel from AdRem Software explains how you can quickly find out which services are running on your network, or what are the IP addresses of servers responsible for each service. Software used is freeware NetCrunch Tools (https…

623 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question