Skip to content
Extraits de code Groupes Projets
Valider 4ef328f9 rédigé par Fil's avatar Fil
Parcourir les fichiers

debug signature pétition

parent 9b1861ee
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -143,7 +143,10 @@ function spip_get_lock($nom, $timeout = 0) {
if ($spip_mysql_db) $nom = "$spip_mysql_db:$nom";
$nom = addslashes($nom);
list($lock_ok) = spip_fetch_array(spip_query("SELECT GET_LOCK('$nom', $timeout)"));
$q = spip_query("SELECT GET_LOCK('$nom', $timeout)");
list($lock_ok) = spip_fetch_array($q);
if (!$lock_ok) spip_log("pas de lock sql pour $lock");
return $lock_ok;
}
......
......@@ -29,9 +29,6 @@ function maj_invalideurs ($fichier, $infosurpage, $delais) {
# insere_invalideur($infosurpage['id_breve'], 'id_breve', $fichier);
# insere_invalideur($infosurpage['id_rubrique'],'id_rubrique', $fichier);
# insere_invalideur($infosurpage['id_syndic'],'id_syndic', $fichier);
### pas du tout prevus au programme ?
# insere_invalideur($infosurpage['id_signature'],'id_signature', $fichier);
}
}
......
......@@ -206,7 +206,7 @@ WHERE lien.id_article=$id_article
$nom_auteur = typo($row_auteur["nom"]);
$email_auteur = $row_auteur["email"];
if ($email_auteur) {
$auteurs[] = "<A HREF=\"mailto:$email_auteur\">$nom_auteur</A>";
$auteurs[] = "<a href=\"mailto:$email_auteur\">$nom_auteur</a>";
}
else {
$auteurs[] = "$nom_auteur";
......@@ -216,13 +216,13 @@ WHERE lien.id_article=$id_article
return (!$auteurs) ? "" : join($auteurs, ", ");
}
function sql_petitions($id_article)
{
return spip_fetch_array(spip_query("
SELECT id_article
FROM spip_petitions
WHERE id_article='$id_article'"));
}
function sql_petitions($id_article) {
$q = spip_query("SELECT
id_article, email_unique, site_obli, site_unique, message, texte
FROM spip_petitions
WHERE id_article=".intval($id_article));
return spip_fetch_array($q);
}
# retourne le chapeau d'un article, et seulement s'il est publie
......
......@@ -51,9 +51,10 @@ function calculer_champ_FORMULAIRE_SIGNATURE($fonctions, $nom_champ, $id_boucle,
$milieu = '
$spip_lang = $GLOBALS["spip_lang"];
$lacible = ' . index_pile($id_boucle, 'id_article', $boucles) . ";";
$code = '(!sql_petitions($lacible) ? "" :
$code = '(!($petition = texte_script(serialize(sql_petitions($lacible)))) ? "" :
("<"."?php include(\'inc-formulaires.php3\');
lang_select(\'$spip_lang\'); echo formulaire_signature($lacible);
lang_select(\'$spip_lang\');
echo formulaire_signature($lacible,\'$petition\');
lang_dselect(); ?".">"))';
list($c,$m) = applique_filtres($fonctions, $code, $id_boucle, $boucles, $id_mere, 'php');
return array($c,$milieu . $m);
......
......@@ -50,6 +50,7 @@ function erreur($zetexte){
function reponse_confirmation($id_article) {
global $val_confirm;
spip_log("validation petition $id_article ($val_confirm)");
include_ecrire("inc_connect.php3");
if ($GLOBALS['db_ok']) {
......@@ -115,7 +116,11 @@ function reponse_confirmation($id_article) {
else {
$query = "UPDATE spip_signatures SET statut=\"publie\" WHERE id_signature='$id_signature'";
$result = spip_query($query);
// invalider les pages de l'article
include_ecrire('inc_invalideur.php3');
suivre_invalideur("id='id_article/$id_article'");
$texte .= erreur(_T('form_pet_signature_validee'));
}
}
......@@ -128,7 +133,11 @@ function reponse_confirmation($id_article) {
else {
$texte = _T('form_pet_probleme_technique');
}
echo "<div class='reponse_formulaire'>$texte</div>";
$texte = "<div class='reponse_formulaire'><a name='sp$id_article'></a>$texte</div>";
// message pour formulaire_signature()
define('_REPONSE_CONFIRMATION_SIGNATURE', $texte);
}
//
......@@ -138,6 +147,7 @@ function reponse_confirmation($id_article) {
function reponse_signature($id_article) {
global $nom_email, $adresse_email, $message, $nom_site, $url_site, $url_page;
spip_log("signature petition $id_article ($adresse_email)");
include_ecrire("inc_connect.php3");
if ($GLOBALS['db_ok']) {
......@@ -226,7 +236,7 @@ function reponse_signature($id_article) {
$link->addVar('val_confirm', $passw);
$url = $link->getUrl("sp$id_article");
$messagex = _T('form_pet_mail_confirmation', array('titre' => $titre, 'nom_email' => $nom_email, 'nom_site' => $nom_site, 'url_site' => $url_site, 'url' => $url));
echo $messagex = _T('form_pet_mail_confirmation', array('titre' => $titre, 'nom_email' => $nom_email, 'nom_site' => $nom_site, 'url_site' => $url_site, 'url' => $url));
if (envoyer_mail($adresse_email, _T('form_pet_confirmation')." ".$titre, $messagex)) {
$reponse_signature .= "<P><B>"._T('form_pet_envoi_mail_confirmation')."</B>";
......@@ -258,13 +268,9 @@ function reponse_signature($id_article) {
// Formulaire de signature d'une petition
//
function formulaire_signature_normal($id_article) {
function formulaire_signature_normal($id_article, $row_petition) {
include_ecrire("inc_texte.php3");
$query_petition = "SELECT * FROM spip_petitions WHERE id_article=$id_article";
$result_petition = spip_query($query_petition);
if ($row_petition = spip_fetch_array($result_petition)) {
$id_article = $row_petition['id_article'];
$email_unique = $row_petition['email_unique'];
$site_obli = $row_petition['site_obli'];
......@@ -279,7 +285,7 @@ function formulaire_signature_normal($id_article) {
$retour .= propre($texte_petition);
$retour .= "<div><fieldset><p><b>"._T('form_pet_votre_nom')."</b><br />";
$retour .= "<div><a name='sp$id_article'></a><fieldset><p><b>"._T('form_pet_votre_nom')."</b><br />";
$retour .= "<input type=\"text\" class=\"forml\" name=\"nom_email\" value=\"\" size=\"20\" /></p>";
$retour .= "<p><b>"._T('form_pet_votre_email')."</b><br />";
......@@ -309,19 +315,18 @@ function formulaire_signature_normal($id_article) {
$retour .= "<br /><div align=\"right\"><input type=\"submit\" name=\"Valider\" class=\"spip_bouton\" value=\""._T('bouton_valider')."\" />";
$retour .= "</div></form>\n";
}
return $retour;
}
function formulaire_signature ($id_article) {
spip_log("petition $id_article");
function formulaire_signature ($id_article, $petition) {
if ($GLOBALS['val_confirm'])
return reponse_confirmation($id_article);
return _REPONSE_CONFIRMATION_SIGNATURE; // geree par inc-public.php3
else if ($GLOBALS['nom_email'] AND $GLOBALS['adresse_email'])
return reponse_signature($id_article);
else
return formulaire_signature_normal($id_article);
return formulaire_signature_normal($id_article,unserialize($petition));
}
// inscrire les visiteurs dans l'espace public (statut 6forum) ou prive (statut nouveau->1comite)
......
......@@ -49,12 +49,8 @@ else {
}
// Ajout_forum est une HTTP_GET_VARS installee par retour_forum dans
// inc-forum.
// Il s'agit de memoriser les HTTP_POST_VARS, afin de mettre en base
// les valeurs transmises, avant reaffichage du formulaire avec celles-ci.
// En cas de validation finale ca redirige vers l'URL ayant provoque l'appel
// au lieu de laisser l'URL appelee resynthetiser le formulaire.
// Ajout_forum (pour les forums) et $val_confirm signalent des modifications
// a faire avant d'afficher la page
if ($ajout_forum) {
$redirect = '';
include('inc-messforum.php3');
......@@ -63,6 +59,14 @@ else {
exit();
}
}
if ($val_confirm) {
// il nous faut id_article ! C'est donc encore a nettoyer...
include_local('inc-calcul.php3');
calculer_contexte();
include_local('inc-formulaires.php3');
reponse_confirmation($id_article);
}
// Faut-il effacer des pages invalidees ?
if (lire_meta('invalider')) {
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter