Changeset 95471 in spip-zone for _plugins_/facteur


Ignore:
Timestamp:
Feb 25, 2016, 10:59:33 AM (3 years ago)
Author:
cedric@…
Message:

Mise a jour de la class facteur : _construc, public/protected sur les methodes
fonction de log wrapper qui renvoit sur spip_log, a utiliser avec
define('_MAX_LOG',1000);
define('_FACTEUR_DEBUG_SMTP',1); 1,2,3 ou 4

pour loger toutes les informations de PHPMailer

Location:
_plugins_/facteur/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/facteur/trunk/classes/facteur.php

    r92831 r95471  
    2020include_spip('facteur_fonctions');
    2121
     22/**
     23 * Wrapper de spip_log pour par PHPMailer
     24 * @param $message
     25 * @param $level
     26 */
     27function facteur_log_debug($message,$level){
     28        spip_log("$level: ".trim($message),"facteur"._LOG_DEBUG);
     29}
     30
     31
    2232class Facteur extends PHPMailer {
    2333
     
    3040         *
    3141         */
    32         function Facteur($email, $objet, $message_html, $message_texte, $options = array()) {
     42        public function __construct($email, $objet, $message_html, $message_texte, $options = array()) {
    3343                // On récupère toutes les options par défaut depuis le formulaire de config
    3444                $defaut = array();
     
    4454                // On fusionne les options avec d'éventuelles surcharges lors de l'appel
    4555                $options = array_merge($defaut, $options);
    46                
     56
     57                // par defaut on log rien car tres verbeux
     58                // on utilise facteur_log_debug qui filtre log SPIP en _LOG_DEBUG
     59                $this->SMTPDebug = 0;
     60                $this->Debugoutput = "facteur_log_debug";
    4761                // Il est possible d'avoir beaucoup plus de logs avec 2, 3 ou 4, ce qui logs les échanges complets avec le serveur
     62                // utiliser avec un define('_MAX_LOG',1000); car sinon on est limite a 100 lignes par hit et phpMailer est tres verbeux
    4863                if (defined('_FACTEUR_DEBUG_SMTP')) {
    4964                        $this->SMTPDebug = _FACTEUR_DEBUG_SMTP ;
    5065                }
    51                
     66
     67
    5268                if (
    5369                        $options['adresse_envoi'] == 'oui'
     
    181197         * @return string Retourne un texte brut formaté correctement
    182198         */
    183         function html2text($html, $advanced = false){
     199        public function html2text($html, $advanced = false){
    184200                return facteur_mail_html2text($html);
    185201        }
    186        
     202
     203        /**
     204         * Compat ascendante, obsolete
     205         * @deprecated
     206         */
     207        public function ConvertirStylesEnligne() {
     208                $this->Body = facteur_convertir_styles_inline($this->Body);
     209        }
     210
    187211        /**
    188212         * Transformer les urls des liens et des images en url absolues
    189213         * sans toucher aux images embarquees de la forme "cid:..."
    190214         */
    191         function UrlsAbsolues($base=null){
     215        protected function UrlsAbsolues($base=null){
    192216                include_spip('inc/filtres_mini');
    193217                if (preg_match_all(',(<(a|link)[[:space:]]+[^<>]*href=["\']?)([^"\' ><[:space:]]+)([^<>]*>),imsS',
     
    213237        }
    214238
    215         function JoindreImagesHTML() {
     239        /**
     240         * Embed les images HTML dans l'email
     241         */
     242        protected function JoindreImagesHTML() {
    216243                $image_types = array(
    217244                                                        'gif'   => 'image/gif',
     
    266293
    267294        /**
    268          * Compat ascendante, obsolete
    269          */
    270         function ConvertirStylesEnligne() {
    271                 $this->Body = facteur_convertir_styles_inline($this->Body);
    272         }
    273 
    274 
    275         function safe_utf8_decode($text,$mode='texte_brut') {
     295         * Conversion safe d'un texte utf en isotruc
     296         * @param string $text
     297         * @param string $mode
     298         * @return string
     299         */
     300        protected function safe_utf8_decode($text,$mode='texte_brut') {
    276301                if (!is_utf8($text))
    277302                        return ($text);
     
    291316        }
    292317
    293         function ConvertirUtf8VersIso8859() {
     318        /**
     319         * Convertir tout le mail utf en isotruc
     320         */
     321        protected function ConvertirUtf8VersIso8859() {
    294322                $this->CharSet  = 'iso-8859-1';
    295323                $this->Body             = str_ireplace('charset=utf-8', 'charset=iso-8859-1', $this->Body);
     
    300328        }
    301329
    302         function ConvertirAccents() {
     330        /**
     331         * Convertir les accents du body en entites html
     332         */
     333        protected function ConvertirAccents() {
    303334                // tableau à compléter au fur et à mesure
    304335                $cor = array(
     
    324355                $this->Body = strtr($this->Body, $cor);
    325356        }
     357
     358        /**
     359         * Envoi de l'email
     360         * @return bool
     361         */
    326362        public function Send() {
    327363                ob_start();
  • _plugins_/facteur/trunk/paquet.xml

    r95470 r95471  
    22        prefix="facteur"
    33        categorie="communication"
    4         version="3.1.4"
     4        version="3.2.0"
    55        etat="stable"
    66        compatibilite="[3.0.0;3.1.*]"
Note: See TracChangeset for help on using the changeset viewer.