Changeset 32170 in spip-zone


Ignore:
Timestamp:
Oct 16, 2009, 8:40:47 PM (10 years ago)
Author:
booz@…
Message:

envoyer un mail de confirmation apres la confirmation du reglement

Location:
_plugins_/abonnement
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/abonnement/abonnement_options.php

    r29067 r32170  
    11<?php
    22
    3 function abonnement_envoyer_mails_confirmation($validation_paiement,$abonne,$libelle,$produit,$article=''){
    4 
    5         include_spip('inc/charsets');
    6         include_spip('inc/filtres'); // pour email_valide(), sinon pas d'envoi...
    7         include_spip('inc/mail');
    8        
    9         $nom_expediteur = lire_config('abonnement/nom_envoi');
    10         $adresse_expediteur = lire_config('abonnement/email_envoi');
    11        
    12         if($produit == "abonnement"){                           
    13                 $sujet= "[".$nom_expediteur."-abo] Nouvel abonn&eacute; : ".$abonne['nom_famille'] ;
    14                 $sujet_message_ok = lire_config('abonnement/sujet_ok');
    15                 $sujet_message_ko = lire_config('abonnement/sujet_ko');
    16                 $message_ok = lire_config('abonnement/texte_ok');
    17                 $message_ko = lire_config('abonnement/texte_ko');
    18         }
    19        
    20         if($produit == "article"){                             
    21                 $sujet= "[".$nom_expediteur."-abo] Nouvel achat d'article : ".$abonne['nom_famille'] ;
    22                 $sujet_message_ok = "Bravo pour votre article" ;
    23                 $sujet_message_ko = "Pas de chance pour votre article" ;
    24                 $message_ok = "Votre paiement est accepte" ;
    25                 $message_ko = "Votre paiement est refuse" ;
    26         }
    27        
    28         $expediteur = $nom_expediteur.'<'.$adresse_expediteur.'>';
    29                                        
    30         $entete .= "Reply-To: ".$adresse_expediteur."\n";                                        // réponse
    31         $entete .= "MIME-Version: 1.0\n";
    32         $entete .= "Content-Type: text/plain; charset=$charset\n";      // Type Mime pour un message au format HTML
    33         $entete .= "Content-Transfer-Encoding: 8bit\n";
    34         $entete .= "X-Mailer: PHP/" . phpversion();                             // mailer
    35         //$entetes .= "Return-Path: < webmaster@ >\n";                                  // En cas d' erreurs
    36         //$entetes .= "Errors-To: < webmaster@ >\n";                                            // En cas d' erreurs
    37         //$entetes .= "cc:  \n";                                                                                        // envoi en copie à
    38         //$entetes .= "bcc: \n";                                                                                        // envoi en copie cachée à
    39 
    40 
    41 
    42         if($validation_paiement == "ok"){
    43        
    44                 //au webmaster
    45                 $message = "Une nouvelle transaction a eu lieu :\n\nNom : ".$abonne['nom_famille']."\nPr&eacute;nom : ".$abonne['prenom']."\n\nAdresse: \n".$abonne['adresse']."\n".$abonne['code_postal']." ".$abonne['ville']." ".$abonne['pays']
    46                 ."\n\nEmail : ".$abonne['email']
    47                 ."\nT&eacute;l&eacute;phone: ".$abonne['telephone']
    48                 ."\n\nCommentaire: ".$abonne['commentaire'];
    49                
    50                 if($produit == "abonnement")                           
    51                 $message .= "\n\nAbonnement : ".$libelle ;
    52 
    53                 if($produit == "article")                               
    54                 $message .= "\n\narticle : ".$libelle ;
    55                
    56                 envoyer_mail ( $adresse_expediteur, $sujet, $message, $from = $expediteur, $headers = $entetes );
    57                
    58                 // au demandeur
    59                 $adresse_site = $GLOBALS['meta']["adresse_site"];
    60                 $adresse= $abonne['email'];
    61                 $sujet = $sujet_message_ok ;
    62                 $message= $message_ok."\n\n";
    63                
    64                 // envoyer un lien pour choisir son mdp le cas echeant
    65                 if($abonne['pass'] == ""){
    66                 include_spip('inc/acces'); # pour creer_uniqid
    67                 $cookie = creer_uniqid();
    68                 sql_updateq("spip_auteurs", array("cookie_oubli" => $cookie), "id_auteur=" . $abonne['id_auteur']);
    69                 $message .=  "Votre identifiant de connexion au site est : ".$abonne['login']
    70                 ."\n\nCliquez le lien suivant pour choisir votre mot de passe"
    71                 ."\n".generer_url_public('spip_pass','p='.$cookie, true);
    72                 }
    73                
    74                 if($article['titre'] && $abonne['pass'] == "")
    75                         $message .= "\n\n Vous pourrez ensuite vous connecter et acceder a votre article en suivant ce lien \n\n"
    76                         .$article['titre']." (".$adresse_site."/?page=article&id_article=".$article['id_article'].")";
    77                
    78                 if($article['titre'] && $abonne['pass'] != "")
    79                         $message .= "\n\n Vous pouvez acceder a votre article en suivant ce lien \n\n"
    80                         .$article['titre']." (".$adresse_site."/?page=article&id_article=".$article['id_article'].")";
    81                
    82                        
    83                 $message .= "\n\n".$nom_expediteur."\r\n";
    84                
    85                 envoyer_mail ( $adresse, $sujet, $message, $from = $expediteur, $headers = $entetes );
    86                 envoyer_mail ('booz@rezo.net', $sujet, $message, $from = $expediteur, $headers = $entetes );
    87        
    88         }
    89 
    90         elseif ($validation_paiement == "erreur_bank") {
    91        
    92                 $sujet= "[".$nom_expediteur."-abo] Echec abonnement : ".$abonne['nom_famille'] ;
    93                 //au webmaster
    94                 $message = "Un abonn&eacute; n'a pas pu valider son abonnement (refus du paiement par la banque) :\n\nNom : ".$abonne['nom_famille']."\nPr&eacute;nom : ".$abonne['prenom']."\n\nAdresse : \n".$abonne['adresse']."\n".$abonne['code_postal']." ".$abonne['ville']." ".$abonne['pays']
    95                 ."\n\nEmail : ".$abonne['email']
    96                 ."\nT&eacute;l&eacute;phone : ".$abonne['telephone']
    97                 ."\n\nCommentaire : ".$abonne['commentaire'];
    98                
    99                 if($produit == "abonnement")                           
    100                 $message .= "\n\nAbonnement : ".$libelle ;
    101 
    102                 if($produit == "article")                               
    103                 $message .= "\n\narticle : ".$libelle ;
    104                
    105                
    106                 envoyer_mail ( $adresse_expediteur, $sujet, $message, $from = $expediteur, $headers = $entetes );
    107                
    108                 // au demandeur
    109                 $adresse= $abonne['email'];
    110                 $sujet = $sujet_message_ko ;
    111                 $message= $message_ko."\n\n\n".$nom_expediteur."\r\n";
    112                 envoyer_mail ( $adresse, $sujet, $message, $from = $expediteur, $headers = $entetes );
    113                 envoyer_mail ('booz@rezo.net', $sujet, $message, $from = $expediteur, $headers = $entetes );
    114         }
    115 }
    116 
    117 
    1183?>
  • _plugins_/abonnement/action/activer_abonnement.php

    r29259 r32170  
    106106       
    107107        // ouvir des zones pour acces restreint selon l'abonnement (action a faire)
     108        // envoyer le mail de confirmation (action a faire)             
     109        $produit = "abonnement";
     110        $validation_paiement = "ok" ;
     111        $libelle = $abonnement['libelle'] ;
     112       
    108113       
    109114        // signaler un changement
    110         spip_log("abonnement: activation abo n°$id_abonnement pour auteur $id_auteur","abonnement");
     115        spip_log("abonnement: appel action/envoyer_mail_confirmation abo $libelle pour auteur $id_auteur","abonnement");
    111116       
    112         if($libelle = $abonnement['libelle']){
    113                 return $libelle;
    114         }else{
    115                 return false ; 
    116         }
     117        include_spip('action/envoyer_mail_confirmation');
     118                        if (!abonnement_envoyer_mails_confirmation($validation_paiement,$id_auteur,$libelle,$produit)) {
     119                                spip_log("Erreur de traitement mail (abonnement)", 'abonnement');
     120                                $message = "erreur_site";
     121                        }
     122                       
     123        return true;
    117124}
    118125
  • _plugins_/abonnement/action/envoyer_mail_confirmation.php

    r29260 r32170  
    88if (!defined("_ECRIRE_INC_VERSION")) return;
    99
    10 include_spip('inc/filtres');
    1110
    12 
    13 function abo_envoyer_mail_confirmation($validation_paiement,$id_abonne,$libelle,$produit,$id_produit='')
    14 {
    15         $securiser_action = charger_fonction('securiser_action', 'inc');
    16         $args = $securiser_action();
    17 
    18         // id_article-id_auteur-hash_article
    19         $args = explode('-',$args);
     11/*
     12 * -
     13 * -
     14 */
    2015       
    21         if (count($args)!=2) {
    22                 spip_log("action_envoyer_mail pas compris");
    23                 // die("action_activer_article_dist pas compris");
    24         }
    25        
     16function abonnement_envoyer_mails_confirmation($validation_paiement,$id_auteur,$libelle,$produit,$article=''){
    2617
    2718        include_spip('inc/charsets');
     
    3223        $adresse_expediteur = lire_config('abonnement/email_envoi');
    3324       
    34         $expediteur = $nom_expediteur.'<'.$adresse_expediteur.'>';
    35                                        
    36         $entete .= "Reply-To: ".$adresse_expediteur."\n";                                        // réponse
    37         $entete .= "MIME-Version: 1.0\n";
    38         $entete .= "Content-Type: text/plain; charset=$charset\n";      // Type Mime pour un message au format HTML
    39         $entete .= "Content-Transfer-Encoding: 8bit\n";
    40         $entete .= "X-Mailer: PHP/" . phpversion();                             // mailer
    41         //$entetes .= "Return-Path: < webmaster@ >\n";                                  // En cas d' erreurs
    42         //$entetes .= "Errors-To: < webmaster@ >\n";                                            // En cas d' erreurs
    43         //$entetes .= "cc:  \n";                                                                                        // envoi en copie à
    44         //$entetes .= "bcc: \n";                                                                                        // envoi en copie cachée à     
     25        $abonne = sql_fetsel('*', 'spip_auteurs_elargis a, spip_auteurs b', 'a.id_auteur = b.id_auteur and a.id_auteur = ' . sql_quote($id_auteur)) ;
    4526       
    46         // il faudrait ajouter  a.commentaire, s'il existe dans la bdd
    47         $r = sql_query("SELECT a.nom_famille, a.prenom, a.adresse, a.code_postal, a.ville, a.pays, a.telephone, b.email, b.id_auteur, b.login , b.pass FROM `spip_auteurs_elargis` a, `spip_auteurs` b WHERE a.id_auteur='$id_abonne' AND a.id_auteur = b.id_auteur") ;
    48         $abonne = sql_fetch($r);
    49                
     27        spip_log("Preparer le mail, prise en compte de l'abonne " .$abonne['nom_famille'] ." ".$abonne['email']." ".$abonne['id_auteur'],"abonnement");
     28       
     29       
     30       
     31       
    5032        if($produit == "abonnement"){                           
    5133                $sujet= "[".$nom_expediteur."-abo] Nouvel abonn&eacute; : ".$abonne['nom_famille'] ;
     
    6042                $sujet_message_ok = "Bravo pour votre article" ;
    6143                $sujet_message_ko = "Pas de chance pour votre article" ;
    62                 // a revoir
    6344                $message_ok = "Votre paiement est accepte" ;
    6445                $message_ko = "Votre paiement est refuse" ;
    6546        }
     47       
     48        $expediteur = $nom_expediteur.'<'.$adresse_expediteur.'>';
     49                                       
     50        $entete .= "Reply-To: ".$adresse_expediteur."\n";                                        // réponse
     51        $entete .= "MIME-Version: 1.0\n";
     52        $entete .= "Content-Type: text/plain; charset=$charset\n";      // Type Mime pour un message au format HTML
     53        $entete .= "Content-Transfer-Encoding: 8bit\n";
     54        $entete .= "X-Mailer: PHP/" . phpversion();                             // mailer
     55        //$entetes .= "Return-Path: < webmaster@ >\n";                                  // En cas d' erreurs
     56        //$entetes .= "Errors-To: < webmaster@ >\n";                                            // En cas d' erreurs
     57        //$entetes .= "cc:  \n";                                                                                        // envoi en copie à
     58        //$entetes .= "bcc: booz@rezo.net\n";                                                                                   // envoi en copie cachée à
     59
     60
    6661
    6762        if($validation_paiement == "ok"){
    6863       
    69                 $sujet = $sujet_message_ok ;
    70                 $message= $message_ok."\n\n";
    71                
    72                 // envoyer un lien pour choisir son mdp le cas echeant
    73                 $adresse_site = $GLOBALS['meta']["adresse_site"];
    74                
    75                 if($abonne['pass'] == ""){
    76                 include_spip('inc/acces'); # pour creer_uniqid
    77                 $cookie = creer_uniqid();
    78                 // a revoir
    79                 sql_updateq("spip_auteurs", array("cookie_oubli" => $cookie), "id_auteur=" . $abonne['id_auteur']);
    80                 $message .=  "Votre identifiant de connexion au site est : ".$abonne['login']
    81                 ."\n\nCliquez le lien suivant pour choisir votre mot de passe"
    82                 ."\n".generer_url_public('spip_pass','p='.$cookie, true);
    83                 }
    84                                
    85                 if($id_article && $abonne['pass'] == "")
    86                         $message .= "\n\n Vous pourrez ensuite vous connecter et acceder a votre article en suivant ce lien \n\n"
    87                         .$libelle." (".$adresse_site."/?page=article&id_article=".$id_article.")";
    88                
    89                 if($id_article && $abonne['pass'] != "")
    90                         $message .= "\n\n Identifiez-vous et accedez a votre article en suivant ce lien \n\n"
    91                         .$libelle." (".$adresse_site."/?page=article&id_article=".$id_article.")";
    92                
    93                        
    94                 $message .= "\n\n".$nom_expediteur."\r\n";
    95                
    96         }elseif ($validation_paiement == "erreur_bank") {
    97                        
    98                 $sujet = $sujet_message_ko ;
    99                 $message= $message_ko."\n\n\n".$nom_expediteur."\r\n";
    100                
    101         }       
     64        spip_log("Preparer le mail, paiement validé " .$abonne['nom_famille'] ." ".$abonne['email']." ".$abonne['id_auteur'],"abonnement");
    10265       
    103         // envoyer mail de confirmation a l'abonné
    104         $adresse= $abonne['email'];
    10566       
    106         envoyer_mail ( $adresse, $sujet, $message, $from = $expediteur, $headers = $entetes );
    107         // copie au webmestre
    108         envoyer_mail ('booz@rezo.net', $sujet, $message, $from = $expediteur, $headers = $entetes );
    109                
    110        
    111         // alerte webmestre
    112                 //envoyer alerte au webmaster
    113                
    114                 if($validation_paiement == "ok"){
    115                         $sujet= "[".$nom_expediteur."-abo] Nouvel abonn&eacute; : ".$abonne['nom_famille'] ;
    116                         $message = "Une nouvelle transaction a eu lieu ";
    117                 }else{
    118                         $sujet= "[".$nom_expediteur."-abo] Echec abonnement : ".$abonne['nom_famille'] ;
    119                         $message = "Un abonn&eacute; n'a pas pu valider son abonnement (refus du paiement par la banque)";     
    120                 }
    121                                                
    122                 $message .= "\n\nNom : ".$abonne['nom_famille']."\nPr&eacute;nom : ".$abonne['prenom']."\n\nAdresse: \n".$abonne['adresse']."\n".$abonne['code_postal']." ".$abonne['ville']." ".$abonne['pays']
     67                //au webmaster
     68                $message = "Une nouvelle transaction a eu lieu :\n\nNom : ".$abonne['nom_famille']."\nPr&eacute;nom : ".$abonne['prenom']."\n\nAdresse: \n".$abonne['adresse']."\n".$abonne['code_postal']." ".$abonne['ville']." ".$abonne['pays']
    12369                ."\n\nEmail : ".$abonne['email']
    12470                ."\nT&eacute;l&eacute;phone: ".$abonne['telephone']
     
    13177                $message .= "\n\narticle : ".$libelle ;
    13278               
    133                 envoyer_mail ($adresse_expediteur, $sujet, $message, $from = $expediteur, $headers = $entetes );
    134                 envoyer_mail ('booz@rezo.net', $sujet, $message, $from = $expediteur, $headers = $entetes );
     79                // Mail de reporting au webmaster
     80                envoyer_mail ( $adresse_expediteur, $sujet, $message, $from = $expediteur, $headers = $entetes );
     81               
     82                // Preparer le mail de confirmation au demandeur
     83                $adresse_site = $GLOBALS['meta']["adresse_site"];
     84                $sujet = $sujet_message_ok ;
     85                $message= $message_ok."\n\n";
     86               
     87                // envoyer un lien pour choisir son mdp le cas echeant
     88                if($abonne['pass'] == ""){
     89                include_spip('inc/acces'); # pour creer_uniqid
     90                $cookie = creer_uniqid();
     91                sql_updateq("spip_auteurs", array("cookie_oubli" => $cookie), "id_auteur=" . $abonne['id_auteur']);
     92                $message .=  "Votre identifiant de connexion au site est : ".$abonne['login']
     93                ."\n\nCliquez le lien suivant pour choisir votre mot de passe"
     94                ."\n".generer_url_public('spip_pass','p='.$cookie, true);
     95                }
     96               
     97                if($article['titre'] && $abonne['pass'] == "")
     98                        $message .= "\n\n Vous pourrez ensuite vous connecter et acceder a votre article en suivant ce lien \n\n"
     99                        .$article['titre']." (".$adresse_site."/?page=article&id_article=".$article['id_article'].")";
     100               
     101                if($article['titre'] && $abonne['pass'] != "")
     102                        $message .= "\n\n Vous pouvez acceder a votre article en suivant ce lien \n\n"
     103                        .$article['titre']." (".$adresse_site."/?page=article&id_article=".$article['id_article'].")";
     104               
     105                       
     106                $message .= "\n\n".$nom_expediteur."\r\n";
     107               
     108                // Envoyer la confirmation à l'abonné
     109                $adresse = $abonne['email'];
     110                spip_log("mail -> " .$abonne['nom_famille'] ." ".$adresse." ".$abonne['id_auteur']." ".$message." ".$sujet,"abonnement");
     111                envoyer_mail ( $adresse, $sujet, $message, $from = $expediteur, $headers = $entetes );
     112       
     113        }
    135114
     115        else {
    136116       
    137 // signaler un changement
    138         spip_log("abonnement: yeah","abonnement");
     117                $sujet= "[".$nom_expediteur."-abo] Echec abonnement : ".$abonne['nom_famille'] ;
     118
     119                $message = "Un abonn&eacute; n'a pas pu valider son abonnement (refus du paiement par la banque) :\n\nNom : ".$abonne['nom_famille']."\nPr&eacute;nom : ".$abonne['prenom']."\n\nAdresse : \n".$abonne['adresse']."\n".$abonne['code_postal']." ".$abonne['ville']." ".$abonne['pays']
     120                ."\n\nEmail : ".$abonne['email']
     121                ."\nT&eacute;l&eacute;phone : ".$abonne['telephone']
     122                ."\n\nCommentaire : ".$abonne['commentaire'];
     123               
     124                if($produit == "abonnement")                           
     125                $message .= "\n\nAbonnement : ".$libelle ;
     126
     127                if($produit == "article")                               
     128                $message .= "\n\narticle : ".$libelle ;
     129               
     130                // Mail reporting echec au webmaster
     131                envoyer_mail ( $adresse_expediteur, $sujet, $message, $from = $expediteur, $headers = $entetes );
     132               
     133                // mail de notification de l'echec au demandeur
     134                $sujet = $sujet_message_ko ;
     135                $message= $message_ko."\n\n\n".$nom_expediteur."\r\n";
     136               
     137                $adresse= $abonne['email'];
     138                envoyer_mail ( $adresse, $sujet, $message, $from = $expediteur, $headers = $entetes );
     139        }
     140       
     141        // signaler un changement
     142        spip_log("abonnement: mail envoyé. $libelle pour auteur " .$abonne['id_auteur'],"abonnement");
    139143       
    140144        return true;
     145
    141146}
    142147
     148
    143149?>
Note: See TracChangeset for help on using the changeset viewer.