From 3456b47d8cff22662aee31be7bbbf505054683a4 Mon Sep 17 00:00:00 2001 From: chankalan Date: Thu, 11 Feb 2021 16:44:32 +0100 Subject: [PATCH] protection des formulaires abomailman avec nospam --- baz_april_options.php | 4 + formulaires/abomailman_mini_une_liste.html | 25 ++++++ formulaires/abomailman_mini_une_liste.php | 94 ++++++++++++++++++++++ paquet.xml | 3 +- 4 files changed, 125 insertions(+), 1 deletion(-) create mode 100644 formulaires/abomailman_mini_une_liste.html create mode 100644 formulaires/abomailman_mini_une_liste.php diff --git a/baz_april_options.php b/baz_april_options.php index 416848f..7296a80 100644 --- a/baz_april_options.php +++ b/baz_april_options.php @@ -23,3 +23,7 @@ $GLOBALS['z_blocs'] = array( define('_CONTENT_WIDTH', 990); define('_IMAGE_RATIO', '1:1'); +// obfusquer les nam des formulaires avec nospam https://contrib.spip.net/NoSPAM#Obfusquer-les-name-du-formulaire +define('_SPAM_ENCRYPT_NAME', true); +// proteger les formulaires abomailman +$GLOBALS['formulaires_no_spam'][] = 'abomailman,abomailman_mini_une_liste'; diff --git a/formulaires/abomailman_mini_une_liste.html b/formulaires/abomailman_mini_une_liste.html new file mode 100644 index 0000000..8c8cd6d --- /dev/null +++ b/formulaires/abomailman_mini_une_liste.html @@ -0,0 +1,25 @@ +#CACHE{0} +
+ + [

(#ENV*{message_ok})

] + [

(#ENV*{message_erreur})

] + + [(#ENV*{editable}|oui) +
+
+ #ACTION_FORMULAIRE{#ENV{action}} + #SET{erreurs,#ENV**{erreurs}|table_valeur{la_demo}} +
+ [(#GET{erreurs})] + +
+ [(#REM) Piege a robots spammeurs, du moins on essaie] +

+ + +

+

+
+
+ ] +
diff --git a/formulaires/abomailman_mini_une_liste.php b/formulaires/abomailman_mini_une_liste.php new file mode 100644 index 0000000..194633b --- /dev/null +++ b/formulaires/abomailman_mini_une_liste.php @@ -0,0 +1,94 @@ +_T('abomailmans:erreur_nobot')); + } + + $message = null; + + // on initialise l'envoi + // on traite chaque liste via une fonction reutilisable ailleurs + // on passe abonnement a true d'office + $traiter=abomailman_traiter_abonnement($id_abomailman,true); + $titre = $traiter[0]; + $proprio_email=$traiter[1]; + $liste_email=$traiter[2]; + $sujet=$traiter[3]; + $body="$nom - $email ".$traiter[4]; + $headers=$traiter[5]; + + if (abomailman_mail($nom, $email, $proprio_email,$liste_email, $sujet, $body,$headers)){ + $message_listes .= "

$titre

"; + }else{ + $message_listes .= "

". _T('pass_erreur_probleme_technique')."

"; + $probleme=true; + } + + $message .= $body."". _T("abomailmans:message_confirmation_unique_a"); + $message .= $message_listes; + $message .= "

" . _T("abomailmans:message_confirm_suite") . "

"; + + if ($probleme==false) + return $message; + else + return $message_listes; +} +?> diff --git a/paquet.xml b/paquet.xml index cf3dbff..b1d3624 100644 --- a/paquet.xml +++ b/paquet.xml @@ -1,7 +1,7 @@ +