Yes, that is exactly what I was looking for. I am having some trouble
calling this custom method within an ajax call though. I am able to
call page.redirect_to user_path(user) but when I try the following:
respond_to do |format|
format.js do
render :update do |page|
page.redirect_back_or_default(user_path
(logged_in_user)) #redirect_to user_path(logged_in_user) works
end
end
end
I get an error saying redirect_back_or_default is not defined. I have
defined this within my LoginSystem module and have included this in
the application file so it should be able to find it. Is there
anything special I need to do to use it with RJS?
On Mar 16, 11:04 pm, saideep annadatha <[email protected]>
wrote:
> Hi,
>
> I think you are looking for something like this:
>
> By using the filters to check if the user is logged in or not and showing
> him the login partial. Now in the controller, if the user is successfully
> logged in try calling a method similar to the following:
>
> redirect_back_or_default('/')
>
> def redirect_back_or_default(default)
> session[:return_to] ? redirect_to_url(session[:return_to]) :
> redirect_to(default)
> session[:return_to] = nil
> end
>
> The above is extracted from the restful_authentication plugin.
> There the url is getting stored in the session[:return_to] where the user is
> redirected once authenticated.
>
> Please correct me if wrong.
>
> --
> Thank You,
> Saideep Annadatha
>
> On Mon, Mar 16, 2009 at 4:37 AM, David <[email protected]> wrote:
>
> > I have a situation where I need my ajaxed login popup to route to a
> > different page than the default route. Specifically this situation is
> > if they are trying to message a user and are not signed in, I want to
> > show the login, and then route them to the profile that they were
> > viewing and not make them have to find it again. The way I was
> > thinking about doing it is to use a partial to add a hidden field that
> > would contain the id of the user that is being viewed and use this id
> > to render that profile instead of routing to the logged in users
> > profile.
>
> > The thing is that the partial is going to look the same as the regular
> > which is not good DRY policy, but I dont know how else to get the user
> > id for the hidden field into the login popup. Something like:
>
> > page.replace_html "login", :partial => 'layouts/
> > login_for_diff_route', :locals => {:profile_id => @profile_id}
>
> > I cant really think of any other way to do it. Looking for any
> > suggestions/advice/insights. Thanks.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---