Carnet Wiki

Real3t : « J’ai un traitement via un bouton_action

Version 1 — Juin 2023 JLuc — Version initiale

Real3t : « J’ai un traitement via un bouton_action en ajax. Ça marche comme attendu, mais l’action elle-même fait dans certains cas : redirige_par_entete(generer_url_ecrire('uneautrepage'));, et ça charge l’intégralité de page page d’admin en ajax. Je voudrais dans ce cas particulier désactiver l’ajax via le PHP.

J’ai essayé sans succès :

redirige_par_entete(generer_url_ecrire('uneautrepage', 'var_noajax=1');
redirige_par_entete(generer_url_ecrire('uneautrepage', 'var_mode=noajax');

// je ne suis pas dans un form CVT mais dans une action, logique que ça ne marche pas
refuser_traiter_formulaire_ajax()  

Comment faire ?

Pas idéal, mais ça fonctionne

-  D’une part, j’ai supprimé la redirection du php : https://git.spip.net/spip-contrib-extensions/clevermail/src/branch/master/action/clevermail_post_remove.php#L19
-  D’autre part, j’ai mis la logique dans une boucle qui écrit un js qui fait le chargement de la page souhaitée : https://git.spip.net/spip-contrib-extensions/clevermail/src/branch/master/prive/squelettes/contenu/clevermail_posts.html#L103

La bonne façon de faire

Faire en sorte que l’action redirige sur une URL par défaut uniquement si pas de &redirect= dans l’URL de l’action, et de passer un redirect sur l’url de ton bouton action

Retour à la version courante

Toutes les versions