On peut désormais contacter plusieurs destinataires en même temps avec le formulaire de contact.
La config de plugin permet de désigner plusieurs destinataires par défaut. Les contacts individuels des groupes continuent de fonctionner avec un array à la place d'un id_auteur. La page Nous contacter est remaniée.
This commit is contained in:
parent
370b8f5afd
commit
be1e10e290
4 changed files with 26 additions and 18 deletions
|
@ -1,7 +1,7 @@
|
|||
<div class="container mt-3">
|
||||
<BOUCLE_principale(AUTEURS){tout}{id_auteur=#ENV{id_auteur}}>
|
||||
<BOUCLE_principale(AUTEURS){tout}{id_auteur=#ENV{id_auteur}}{0,1}>
|
||||
<h2>Contacter #NOM</h2>
|
||||
[<div class='mt-3 mb-3'>Téléphone : (#TELEPHONE) [ou (#TELEPHONE2)]</div>]
|
||||
#FORMULAIRE_NOUS_CONTACTER{#ID_AUTEUR}
|
||||
#FORMULAIRE_NOUS_CONTACTER{#ARRAY{0,#ID_AUTEUR}}
|
||||
</BOUCLE_principale>
|
||||
</div>
|
|
@ -1,13 +1,18 @@
|
|||
<section class="container section-top section-bottom">
|
||||
<div class="cadre-blanc">
|
||||
<div class="cadre-blanc row">
|
||||
<h1 class="col-12">Nous contacter</h1>
|
||||
<div class='col-12 col-md-6'>
|
||||
|
||||
[(#FORMULAIRE_NOUS_CONTACTER{#CONFIG{balint/Tid_destinataires}})]
|
||||
|
||||
</div>
|
||||
<div class='col-12 col-md-6'>
|
||||
<BOUCLE_presentation(ARTICLES){grigri=contact}{0,1}{! par date}>
|
||||
<h1 class="#EDIT{titre}">#TITRE</h1>
|
||||
<div class="#EDIT{texte}">
|
||||
#TEXTE
|
||||
</div>
|
||||
</BOUCLE_presentation>
|
||||
<BOUCLE_contact(AUTEURS){id_auteur=#CONFIG{balint/id_contact}}{0,1}{tout}>
|
||||
#FORMULAIRE_NOUS_CONTACTER{#ID_AUTEUR}
|
||||
</BOUCLE_contact>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
|
@ -83,7 +83,7 @@
|
|||
|
||||
<fieldset>
|
||||
<legend><i class="fas fa-users"></i> Destinataire du formulaire de contact</legend>
|
||||
<select id="id_contact" name="id_contact" class="chosen">
|
||||
<select id="id_contact" name="Tid_destinataires[]" class="chosen" multiple>
|
||||
<option value=""> </option>
|
||||
<BOUCLE_auteurs(AUTEURS){tous}{par nom}>
|
||||
<option value="#ID_AUTEUR" [(#ID_AUTEUR|=={#ENV{id_contact}}|oui) selected]>#NOM</option>
|
||||
|
|
|
@ -15,7 +15,7 @@ if (!defined('_ECRIRE_INC_VERSION')) {
|
|||
return;
|
||||
}
|
||||
|
||||
function formulaires_nous_contacter_charger_dist($id_auteur) {
|
||||
function formulaires_nous_contacter_charger_dist($Tdestinataires) {
|
||||
include_spip('inc/texte');
|
||||
$valeurs = array(
|
||||
'nom_message_auteur' => '',
|
||||
|
@ -26,14 +26,14 @@ function formulaires_nous_contacter_charger_dist($id_auteur) {
|
|||
);
|
||||
|
||||
// id du formulaire (pour en avoir plusieurs sur une meme page)
|
||||
$valeurs['id'] = $id_auteur;
|
||||
// passer l'id_auteur au squelette
|
||||
$valeurs['id_auteur'] = $id_auteur;
|
||||
$valeurs['id'] = intval($Tdestinataires[0]);
|
||||
// passer les id_destinataires au squelette
|
||||
$valeurs['Tdestinataires'] = $Tdestinataires;
|
||||
|
||||
return $valeurs;
|
||||
}
|
||||
|
||||
function formulaires_nous_contacter_verifier_dist($id_auteur) {
|
||||
function formulaires_nous_contacter_verifier_dist($Tdestinataires) {
|
||||
|
||||
$erreurs = array();
|
||||
include_spip('inc/filtres');
|
||||
|
@ -66,11 +66,14 @@ function formulaires_nous_contacter_verifier_dist($id_auteur) {
|
|||
return $erreurs;
|
||||
}
|
||||
|
||||
function formulaires_nous_contacter_traiter_dist($id_auteur) {
|
||||
function formulaires_nous_contacter_traiter_dist($Tdestinataires) {
|
||||
|
||||
$adres = _request('email_message_auteur');
|
||||
$nom = _request('nom_message_auteur');
|
||||
$mail = sql_getfetsel('email','spip_auteurs','id_auteur=' . intval($id_auteur));
|
||||
$Tmails = array();
|
||||
foreach ($Tdestinataires as $id_auteur){
|
||||
$Tmails[] = sql_getfetsel('email','spip_auteurs','id_auteur=' . intval($id_auteur));
|
||||
}
|
||||
|
||||
$sujet = '[' . supprimer_tags(extraire_multi($GLOBALS['meta']['nom_site'])) . '] '
|
||||
. 'Nouveau message de ' . $nom;
|
||||
|
@ -91,7 +94,7 @@ function formulaires_nous_contacter_traiter_dist($id_auteur) {
|
|||
),
|
||||
);
|
||||
|
||||
if ($envoyer_mail($mail, $sujet, $corps)) {
|
||||
if ($envoyer_mail($Tmails, $sujet, $corps)) {
|
||||
$message = _T('form_prop_message_envoye');
|
||||
|
||||
return array('message_ok' => $message);
|
||||
|
|
Loading…
Add table
Reference in a new issue