page << "window.parent.Shadowbox.close();"
page.redirect_to root_url
On dirait que tu es dans une iframe (window.parent..) donc tu fais un
redirect dans ton iframe
p-e un truc du genre
page << "window.parent.document.location.href = '#{root_url}'"
Seb
On Jun 29, 2009, at 4:17 PM, Michel Belleville wrote:
> 2009/6/29 Kad Kerforn <[email protected]>
>
>
> def create
> # request.xhr? true
> @user = User.new(params[:user])
> if @user.save
> @user.deliver_confirm_account_instructions!
> flash[:notice] = "Merci de ....."
>
> respond_to do |format|
> format.html { redirect_to root_url }
> format.js {
> render :update do |page|
> page << "window.parent.Shadowbox.close();"
> page.redirect_to root_url
> end
> }
> end
> else
> respond_to do |format|
> format.html { render :action => :new }
> format.js { }
> end
> end
> end
>
> root_url definie comme route controller => 'statics' :action =>
> 'welcome'
>
> en cas de non validation, pas de problème , la flashhbox est mise à
> jour
> lorsque l'enregistrement est OK, la flashbox est fermée
> MAIS la redirection n'est pas effectuée (j'ai mis un debug dans
> l'action 'welcome'
>
> je reste sur la page html où la flashbox a été appelée
>
> où peut se situer le porblème ?
>
> Tu ferme la fenêtre avant de rediriger vers l'url racine, du coup le
> script arrête de s'exécuter avant de faire la redirection.
>
> Ceci dit, quel intérêt de rediriger si tu ferme la fenêtre de toute
> façon ?
>
> Michel Belleville
>
>
> >
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse
[email protected]
-~----------~----~----~----~------~----~------~--~---