source: spip-zone/_plugins_/abomailmans/branches/v1/formulaires/abomailman_envoi_liste.php @ 60130

Last change on this file since 60130 was 60130, checked in by yffic@…, 8 years ago
  • Tester l'existence de la version txt d'un template avant de l'inclure
  • Lors de l'envoi ponctuel d'un mail à une liste, dans la fonction traiter :
    • transmettre aussi le sujet au template
    • générer la version txt (ça ne fonctionnait que lors de l'aperçu)
File size: 3.9 KB
Line 
1<?php
2
3if (!defined("_ECRIRE_INC_VERSION")) return;
4
5include_spip('inc/abomailmans');
6include_spip('inc/distant');
7
8// chargement des valeurs par defaut des champs du formulaire
9function formulaires_abomailman_envoi_liste_charger_dist(){
10        //initialise les variables d'environnement pas défaut
11        $valeurs = array(); 
12        if (autoriser('modifier','abomailman')) {
13                $valeurs['editable']=true;
14        } else {
15                return $valeurs['editable']=false;
16        }
17
18        //$valeurs['id_abomailman'] = _request('id_abomailman');
19        $valeurs['sujet'] = _request('sujet');
20        $valeurs['template'] = _request('template');
21        $valeurs['message'] = _request('message');
22        $valeurs['date'] = _request('date');
23        $valeurs['id_rubrique'] = _request('id_rubrique');
24        $valeurs['id_mot'] = _request('id_mot');
25       
26        return $valeurs;
27}
28
29function formulaires_abomailman_envoi_liste_verifier_dist(){
30       
31        //initialise le tableau des erreurs
32        $erreurs = array();
33       
34        //$valeurs['id_abomailman'] = _request('id_abomailman');
35        $valeurs['sujet'] = _request('sujet');
36        $valeurs['template'] = _request('template');
37        $valeurs['message'] = _request('message');
38        $valeurs['date'] = _request('date');
39        $valeurs['id_rubrique'] = _request('id_rubrique');
40        $valeurs['id_mot'] = _request('id_mot');
41
42   if(!$valeurs['sujet']){ 
43                $erreurs['sujet'] = _T('abomailmans:sujet_obligatoire'); 
44   }
45   
46   if (count($erreurs)) {
47        refuser_traiter_formulaire_ajax();
48      $erreurs['message_erreur'] .= _T('abomailmans:verifier_formulaire');
49   }
50 
51        if (!count($erreurs) AND !_request('confirmer_previsu_abomailman')){
52                $previsu = abomailmain_inclure_previsu($valeurs);
53                $erreurs['previsu'] = $previsu;
54        }
55 
56        return $erreurs; // si c'est vide, traiter sera appele, sinon le formulaire sera resoumis
57}
58
59function abomailmain_inclure_previsu($datas){
60        $datas['bouton'] = _T('abomailmans:envoi_confirmer');
61        $datas['template_html'] = recuperer_fond('abomailman_template',$datas);
62        $datas['envoi_txt'] = "oui";
63        $datas['template_txt'] = recuperer_fond('abomailman_template',$datas);
64        return recuperer_fond('formulaires/inc-previsu_mail',$datas);
65}
66
67function formulaires_abomailman_envoi_liste_traiter_dist(){
68   refuser_traiter_formulaire_ajax();
69       
70        $datas = array();
71        $nom_site = lire_meta("nom_site");
72        $email_webmaster = lire_meta("email_webmaster");
73        $charset = lire_meta('charset');
74        $email_receipt = _request('email_liste');
75        $sujet = _request('sujet');
76   
77        // Recuperation des donnees
78        //$query['id_abomailman'] = _request('id_abomailman');
79        $query['template'] = _request('template');
80        $query['sujet'] = _request('sujet');
81        $query['message'] = _request('message');
82        $query['date'] = _request('date');
83        $query['id_rubrique'] = _request('id_rubrique');
84        $query['id_mot'] = _request('id_mot');
85       
86        $fond = recuperer_fond('abomailman_template',$query); 
87        $body = array(
88                'html'=>$fond,
89        );
90        /* Format Texte */
91        $query['envoi_txt'] = "oui";
92        $body['texte'] = recuperer_fond('abomailman_template',$query);
93
94        if (strlen($fond) > 10) {
95                // email denvoi depuis config facteur
96                if ($GLOBALS['meta']['facteur_adresse_envoi'] == 'oui'
97                          AND $GLOBALS['meta']['facteur_adresse_envoi_email'])
98                        $from_email = $GLOBALS['meta']['facteur_adresse_envoi_email'];
99                else
100                        $from_email = $email_webmaster;
101
102                // nom denvoi depuis config facteur
103                if ($GLOBALS['meta']['facteur_adresse_envoi'] == 'oui'
104                          AND $GLOBALS['meta']['facteur_adresse_envoi_nom'])
105                        $from_nom = $GLOBALS['meta']['facteur_adresse_envoi_nom'];
106                else
107                        $from_nom = $nom_site;
108
109                if (abomailman_mail($from_nom, $from_email, "", $email_receipt, $sujet,$body, true, $charset)) {
110                        $message = _T('abomailmans:email_envoye',array('liste'=>$email_receipt));
111                } else {
112                        $message = _T('pass_erreur_probleme_technique');
113                }
114
115        } else {
116                $message = _T('abomailmans:contenu_insuffisant');
117        }
118   return array('message_ok'=>$message);
119}
120
121?>
Note: See TracBrowser for help on using the repository browser.