Valider c48ecb87 rédigé par cerdic's avatar cerdic
Parcourir les fichiers

#276 mettre en cache le message de confirm pour eviter "code inconnu" sur un double hit

pas parfaitement fiable, notamment en cas de rafale de signature car le cache peut etre invalide entre les 2 hits,
mais c'est mieux que precedemment car ne consomme pas plus de cache !
parent b42e56cb
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+1 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
<div class="formulaire_spip formulaire_signature ajax" id="sp#ENV{id_article}">
[<p class="formulaire_message">(#ENV*{message_ok,#ENV*{_reponse}})</p>]
[<p class="formulaire_message">(#ENV*{message_ok,#ENV*{_confirm}|affiche_reponse_confirmation})</p>]
[<p class='formulaire_erreur'>(#ENV*{message_erreur})</p>]
[(#ENV{editable})
<form method="post" action="#ENV{action}">
+9 −4
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -24,14 +24,19 @@ function formulaires_signature_charger_dist($id_article, $petition, $texte, $sit
		'debut_signatures'=>'' // pour le nettoyer de l'url d'action !
		);

	if (_request('var_confirm')) {
		$reponse_confirmation = charger_fonction('reponse_confirmation','formulaires/signature/');
		$reponse = $reponse_confirmation();  # calculee plus tot: assembler.php
		return array(false,array('_reponse'=>$reponse));
	if ($c=_request('var_confirm')) {
		// on ne passe pas directement le message mais uniquement le pass de confirm
		// cela permet de conserver le message en cache quelques instants
		// et se premunir contre le double clic
		return array(false,array('_confirm'=>$c));
	}
	
	return $valeurs;
}
function affiche_reponse_confirmation($confirm){
	$reponse_confirmation = charger_fonction('reponse_confirmation','formulaires/signature/');
	return $reponse_confirmation();  # calculee plus tot: assembler.php
}

function formulaires_signature_verifier_dist($id_article, $petition, $texte, $site_obli, $message) {
	$erreurs = array();