Le 12 avr. 09 à 22:46, RastaPopoulos a écrit :
Le 12/04/2009 22:32, cedric.morin@yterium.com a écrit :
Ah ben non, l'action elle est bete elle fait un redirige_par_entete qui
ne fonctionne pas en ajax
On n'utilise pas sa redirection dans le core. Si elle reste supportée
c'est pour des raisons de compat.
Mais il est vivement conseillé de faire passer l'url de redirection dans
les parametres du cvt plutot qu'en chaine de get.
Cédric
OK, je comprends.
Je préfère aussi utiliser le mécanisme CVT évidemment. Mais la redirection dans l'action c'était dans l'éventualité où on utiliserait l'action autrement que dans CVT (un lien direct par exemple).
C'est peut-être ça dont tu as besoin :
Une balise pour generer rapidement un bouton d'action en POST, ajaxable
a utiliser a la place des liens action_auteur, sous la forme
#BOUTON_ACTION{libelle,url}
ou
#BOUTON_ACTION{libelle,url,ajax}
pour que le bouton se comporte comme un lien class = 'ajax' (rechargement de l'inclusion ajax parente la plus proche)
Dans le cas d'un hit ajax, le cache des pages ajax est vide car on suppose avoir fait une action en base de donnee
exemple :
avant on pouvait avoir dans un squelette un lien action ajaxé sous la forme :
<a href='#URL_ACTION_AUTEUR{monaction,args,redirect}' class='ajax'>titre du lien</a>
Si cette action modifie la base de donnee les fichiers du serveur, il est *fortement conseillé* de le remplacer par
#BOUTON_ACTION{titre du lien,#URL_ACTION_AUTEUR{monaction,args,redirect},ajax}
En résumé :
pour de la navigation, utiliser un lien (eventuellement class='ajax')
pour une opération irréversible, utiliser un #BOUTON_ACTION (eventuellement avec le troisieme argument ajax)