Dotclear

Changeset 1038


Ignore:
Timestamp:
04/18/09 10:50:52 (15 years ago)
Author:
kwon
Message:

Newsletter 3.5.7rc2
closes #139
optimisation des traitements lors de l'envoi des mails du plugin

Location:
plugins/newsletter/trunk
Files:
2 added
23 edited

Legend:

Unmodified
Added
Removed
  • plugins/newsletter/trunk/_define.php

    r921 r1038  
    1515     /* Description*/    "Manager newsletter", 
    1616     /* Author */        "Benoit de Marne", 
    17      /* Version */       "3.5.6", 
     17     /* Version */       "3.5.7", 
    1818     /* Permissions */   "usage,contentadmin", 
    1919     /* Priority */      null 
    2020); 
    2121 
    22 /* Original Author : Olivier Le Bris */ 
     22/* Original Author (3.4.2) : Olivier Le Bris */ 
    2323 
    2424?> 
  • plugins/newsletter/trunk/_public.php

    r978 r1038  
    1515// chargement des librairies 
    1616require_once dirname(__FILE__).'/inc/class.captcha.php'; 
     17require_once dirname(__FILE__).'/inc/class.newsletter.tools.php'; 
    1718require_once dirname(__FILE__).'/inc/class.newsletter.plugin.php'; 
    1819require_once dirname(__FILE__).'/inc/class.newsletter.core.php'; 
     
    9394                              $msg = __('Account already confirmed.'); 
    9495                         else { 
    95                               newsletterCore::sendEnable($rs->subscriber_id); 
     96                              newsletterCore::send($rs->subscriber_id,'enable'); 
    9697                              $msg = __('Your subscription is confirmed.').'<br />'.__('You will soon receive an email.'); 
    9798                         } 
     
    109110                              $msg = __('Account already enabled.'); 
    110111                         else { 
    111                               newsletterCore::sendEnable($rs->subscriber_id); 
     112                              newsletterCore::send($rs->subscriber_id,'enable'); 
    112113                              $msg = __('Your account is enabled.').'<br />'.__('You will soon receive an email.'); 
    113114                         } 
     
    125126                              $msg = __('Account already disabled.'); 
    126127                         else { 
    127                               newsletterCore::sendDisable($rs->subscriber_id); 
     128                              newsletterCore::send($rs->subscriber_id,'disable'); 
    128129                              $msg = __('Your account is disabled.').'<br />'.__('You will soon receive an email.'); 
    129130                         } 
     
    141142                              $msg = __('Account already suspended.'); 
    142143                         else { 
    143                               newsletterCore::sendSuspend($rs->subscriber_id); 
     144                              newsletterCore::send($rs->subscriber_id,'suspend'); 
    144145                              $msg = __('Your account is suspended.').'<br />'.__('You will soon receive an email.'); 
    145146                         } 
     
    155156                              $msg = __('Unable to find you account informations.'); 
    156157                         else { 
    157                               newsletterCore::sendChangeMode($rs->subscriber_id); 
     158                              newsletterCore::send($rs->subscriber_id,'changemode'); 
    158159                              $msg = __('Your sending format is').$modesend.'<br />'.__('You will soon receive an email.'); 
    159160                         } 
     
    268269     public static function NewsletterFormRandom() 
    269270     { 
    270           return '<?php  echo "'.newsletterCore::getRandom().'" ?>'; 
     271          return '<?php  echo "'.newsletterTools::getRandom().'" ?>'; 
    271272     } 
    272273 
     
    450451                    '<form action="'.$link.'" method="post" id="nl_form">'. 
    451452                    $core->formNonce(). 
    452                     form::hidden(array('nl_random'),newsletterCore::getRandom()). 
     453                    form::hidden(array('nl_random'),newsletterTools::getRandom()). 
    453454                    '<ul>'. 
    454455                    '<li><label for="nl_email">'.__('Email').'</label>&nbsp;:&nbsp;'. 
     
    569570            
    570571               if (isset($params[1]) && !empty($params[1])) { 
    571                     $email = newsletterCore::base64_url_decode((string)html::clean($params[1])); 
     572                    $email = newsletterTools::base64_url_decode((string)html::clean($params[1])); 
    572573               } 
    573574               else  
     
    580581 
    581582               if (isset($params[3]) && !empty($params[3]))  
    582                     $modesend = newsletterCore::base64_url_decode((string)html::clean($params[3])); 
     583                    $modesend = newsletterTools::base64_url_decode((string)html::clean($params[3])); 
    583584               else  
    584585                    $modesend = null;              
  • plugins/newsletter/trunk/changelog.txt

    r978 r1038  
     1Todo : 
     2=> Ticket #127 : timeout lors de l'envoi des newletters 
     3=> ajout d'un template avec le nombre d'abonnés actifs 
     4=> Ticket #117 : ajout des sous catégories lors de la sélection des billets 
     5=> Ticket #121 : possibilité de modifier le contenu des mails de gestion d'abonnements 
     6 
    17Newsletter 3.5.7 - 2009-xx-xx 
    28=========================================================== 
     9* correction du Ticket #139 : suppression des balises HTML en mode texte 
     10* optimisation du code sur l'envoi des mails 
    311* correction du Ticket #125 : Possibilité de modifier le nom "Lettre d'informations" dans le titre du formulaire côté public.  
    412* correction du Ticket #123 : Remplacer la mention "by nom de l'auteur" par "par nom de l'auteur" 
  • plugins/newsletter/trunk/default-templates/changemode.html

    r821 r1038  
    99 
    1010<p> 
    11 {$header}<br /> 
    12 <a href="{$blogUrl}">{$blogName}</a> 
     11{$header}&nbsp;<a href="{$blogUrl}">{$blogName}</a> 
    1312</p> 
    1413 
    1514<p> 
    16 {$txtChangingMode} 
     15{$txtChangingMode}<br /><br /> 
    1716</p> 
    1817 
  • plugins/newsletter/trunk/default-templates/changemode.txt

    r821 r1038  
    1 {$header} 
    2 {$blogName} 
    3  
     1{$header} {$blogName} 
     2{nl}{nl} 
    43{$txtChangingMode} 
    5  
     4{nl}{nl} 
    65{$footer} 
  • plugins/newsletter/trunk/default-templates/confirm.html

    r821 r1038  
    99 
    1010<p> 
    11 {$header}<br /> 
    12 <a href="{$blogUrl}">{$blogName}</a> 
     11{$header}&nbsp;<a href="{$blogUrl}">{$blogName}</a> 
    1312</p> 
    1413 
    1514<p> 
    1615{$txt_intro_confirm} <a href="{$urlConfirm}">{$txtConfirm}</a><br /> 
    17 {$txt_intro_disable} <a href="{$urlDisable}">{$txtDisable}</a> 
     16{$txt_intro_disable} <a href="{$urlDisable}">{$txtDisable}</a><br /> 
     17<br /> 
    1818</p> 
    1919 
  • plugins/newsletter/trunk/default-templates/confirm.txt

    r821 r1038  
    1 {$header} 
    2 {$blogName} 
    3  
     1{$header} {$blogName} 
     2{nl}{nl} 
    43{$txt_intro_confirm} 
    54{$txtConfirm} 
    65{$urlConfirm} 
    7  
     6{nl}{nl} 
    87{$txt_intro_disable} 
    98{$txtDisable} 
    109{$urlDisable} 
    11  
     10{nl}{nl} 
    1211{$footer} 
  • plugins/newsletter/trunk/default-templates/disable.html

    r821 r1038  
    99 
    1010<p> 
    11 {$header}<br /> 
    12 <a href="{$blogUrl}">{$blogName}</a> 
     11{$header}&nbsp;<a href="{$blogUrl}">{$blogName}</a> 
    1312</p> 
    1413 
    15 {$txtDisabled} 
     14<p>{$txtDisabled}</p> 
    1615 
    1716<p> 
    18 {$txt_intro_enable} <a href="{$urlEnable}">{$txtEnable}</a> 
     17{$txt_intro_enable} <a href="{$urlEnable}">{$txtEnable}</a><br /> 
     18<br /> 
    1919</p> 
    2020 
  • plugins/newsletter/trunk/default-templates/disable.txt

    r821 r1038  
    1 {$header} 
    2 {$blogName} 
    3  
     1{$header} {$blogName} 
     2{nl}{nl} 
    43{$txtDisabled} 
    5  
     4{nl}{nl} 
    65{$txt_intro_enable} 
    76{$txtEnable} 
    87{$urlEnable} 
    9  
     8{nl}{nl} 
    109{$footer} 
  • plugins/newsletter/trunk/default-templates/enable.html

    r834 r1038  
    1212</p> 
    1313 
    14 {$txtEnabled} 
     14<p>{$txtEnabled}</p> 
    1515 
    1616<p> 
    1717{$txt_intro_suspend} <a href="{$urlSuspend}">{$txtSuspend}</a><br /> 
    18 {$txt_intro_disable} <a href="{$urlDisable}">{$txtDisable}</a> 
     18{$txt_intro_disable} <a href="{$urlDisable}">{$txtDisable}</a><br /> 
     19<br /> 
    1920</p> 
    2021 
  • plugins/newsletter/trunk/default-templates/enable.txt

    r821 r1038  
    1 {$header} 
    2 {$blogName} 
    3  
     1{$header} {$blogName} 
     2{nl}{nl} 
    43{$txtEnabled} 
    5  
     4{nl}{nl} 
    65{$txt_intro_suspend} 
    76{$txtSuspend} 
    87{$urlSuspend} 
    9  
     8{nl}{nl} 
    109{$txt_intro_disable} 
    1110{$txtDisable} 
    1211{$urlDisable} 
    13  
     12{nl}{nl} 
    1413{$footer} 
  • plugins/newsletter/trunk/default-templates/newsletter.html

    r978 r1038  
    2929 
    3030<p> 
    31 {$txt_intro_suspend} <a href="{$urlSuspend}">{$txtSuspend}</a>{nl} 
    32 {$txt_intro_disable} <a href="{$urlDisable}">{$txtDisable}</a> 
     31{$txt_intro_suspend} <a href="{$urlSuspend}">{$txtSuspend}</a><br /> 
     32{$txt_intro_disable} <a href="{$urlDisable}">{$txtDisable}</a><br /> 
     33<br /> 
    3334</p> 
    3435 
  • plugins/newsletter/trunk/default-templates/newsletter.txt

    r978 r1038  
    11{$header} {$blogName} 
    22{$blogUrl} 
    3  
     3{nl}{nl} 
    44{$txtIntroductoryMsg} 
    5  
     5{nl}{nl} 
    66{$txtHeading} 
    7  
     7{nl}{nl} 
    88{loop:posts} 
    9 posts.title (posts.date {$txtBy} posts.author) 
    10 posts.url 
    11 posts.content{nl}{nl} 
     9posts.title (posts.date {$txtBy} posts.author){nl} 
     10posts.url{nl} 
     11posts.content{nl} 
    1212{/loop} 
    13  
     13{nl}{nl} 
    1414{$txt_intro_suspend} 
    1515{$txtSuspend} 
    1616{$urlSuspend} 
    17  
     17{nl} 
    1818{$txt_intro_disable} 
    1919{$txtDisable} 
    2020{$urlDisable} 
    21  
     21{nl}{nl} 
    2222{$footer} 
  • plugins/newsletter/trunk/default-templates/resume.html

    r836 r1038  
    1818 
    1919<p> 
    20 {$urlResume} 
     20{$urlResume}<br /> 
     21<br /> 
    2122</p> 
    2223 
  • plugins/newsletter/trunk/default-templates/resume.txt

    r836 r1038  
    1 {$header} 
    2 {$blogName} 
    3  
    4 {$txtResume} 
     1{$header} {$blogName} 
     2{nl}{nl} 
     3{$txtResume}{nl} 
    54{$txtMode} 
    6  
     5{nl}{nl} 
    76{$urlResume} 
    8  
     7{nl}{nl} 
    98{$footer} 
     9{nl}{nl} 
  • plugins/newsletter/trunk/default-templates/suspend.html

    r821 r1038  
    99 
    1010<p> 
    11 {$header}<br /> 
    12 <a href="{$blogUrl}">{$blogName}</a> 
     11{$header}&nbsp;<a href="{$blogUrl}">{$blogName}</a> 
    1312</p> 
    1413 
    15 {$txtSuspended} 
     14<p>{$txtSuspended}</p> 
    1615 
    1716<p> 
    18 {$txt_intro_enable} <a href="{$urlEnable}">{$txtEnable}</a> 
     17{$txt_intro_enable} <a href="{$urlEnable}">{$txtEnable}</a><br /> 
     18<br /> 
    1919</p> 
    2020 
  • plugins/newsletter/trunk/default-templates/suspend.txt

    r821 r1038  
    1 {$header} 
    2 {$blogName} 
    3  
     1{$header} {$blogName} 
     2{nl}{nl} 
    43{$txtSuspended} 
    5  
     4{nl}{nl} 
    65{$txt_intro_enable} 
    76{$txtEnable} 
    87{$urlEnable} 
    9  
     8{nl}{nl} 
    109{$footer} 
  • plugins/newsletter/trunk/inc/class.html2text.php

    r858 r1038  
    126126        '/<p[^>]*>/i',                           // <P> 
    127127        '/<br[^>]*>/i',                          // <br> 
     128        '/<br[^>]*\/>/i',                        // <br /> 
    128129        '/<b[^>]*>(.+?)<\/b>/ie',                // <b> 
    129130        '/<i[^>]*>(.+?)<\/i>/i',                 // <i> 
     
    176177        "\n\n\t",                               // <P> 
    177178        "\n",                                   // <br> 
     179        "\n",                                   // <br /> 
    178180        'strtoupper("\\1")',                    // <b> 
    179181        '_\\1_',                                // <i> 
  • plugins/newsletter/trunk/inc/class.newsletter.core.php

    r978 r1038  
    1313// chargement des librairies 
    1414require dirname(__FILE__).'/class.template.php'; 
     15require dirname(__FILE__).'/class.newsletter.mailing.php'; 
    1516 
    1617// le plugin 
     
    5758     {  
    5859          return newsletterPlugin::isInstalled();  
    59      } 
    60  
    61      // Fonction récupérée dans le plugin dCom 
    62      // Oleksandr Syenchuk, Jean-François Michaud and contributors. 
    63      public static function cutString($str,$maxlength=false) 
    64      { 
    65           if (mb_strlen($str) > $maxlength && $maxlength) 
    66                return self::myCutString($str,$maxlength).'...'; 
    67           return $str; 
    68      } 
    69       
    70      // Fonction cutString() de Dotclear écrite par Olivier Meunier 
    71      // Corrigée pour supporter le UTF-8 
    72      // https://clearbricks.org/svn/trunk/common/lib.text.php [72] 
    73      public static function myCutString($str,$l) 
    74      { 
    75           $s = preg_split('/([\s]+)/u',$str,-1,PREG_SPLIT_DELIM_CAPTURE); 
    76            
    77           $res = ''; 
    78           $L = 0; 
    79            
    80           if (mb_strlen($s[0]) >= $l) { 
    81                return mb_substr($s[0],0,$l); 
    82           } 
    83            
    84           foreach ($s as $v) 
    85           { 
    86                $L = $L+strlen($v); 
    87                 
    88                if ($L > $l) { 
    89                     break; 
    90                } else { 
    91                     $res .= $v; 
    92                } 
    93           } 
    94            
    95           return trim($res); 
    9660     } 
    9761 
     
    187151 
    188152     /** 
    189      * génère un code d'enregistrement 
    190      */ 
    191      public static function regcode()  
    192      { 
    193           return md5(date('Y-m-d H:i:s', strtotime("now")) );  
    194      } 
    195  
    196      /** 
    197      * encodage en base64 pour une url 
    198      */ 
    199      public static function base64_url_encode($val) 
    200      { 
    201           return strtr(base64_encode($val), '+/=', '-_,'); 
    202      } 
    203  
    204      /** 
    205      * decodage en base64 pour une url 
    206      */ 
    207      public static function base64_url_decode($val) 
    208      { 
    209           return base64_decode(strtr($val, '-_,', '+/=')); 
    210      } 
    211  
    212      /** 
    213153     * test l'existence d'un abonné par son id 
    214154     */ 
     
    342282                    // génération des informations manquantes 
    343283                    if ($_regcode == null) { 
    344                          $_regcode = self::regcode(); 
     284                         $_regcode = newsletterTools::regcode(); 
    345285                    } 
    346286 
     
    372312     } 
    373313      
    374      /** 
    375      * implode un tableau associatif (http://www.php.net/manual/fr/function.implode.php) 
    376      */ 
    377      private static function implode_assoc($glue1, $glue2, $array) 
    378      { 
    379           foreach($array as $key => $val) { 
    380                $array2[] = $key.$glue1.$val; 
    381           } 
    382           return implode($glue2, $array2); 
    383      } 
    384  
    385314     /** 
    386315     * met à jour un abonné par son id 
     
    484413               $blogid = $con->escape((string)$blog->id); 
    485414 
    486                // requète sur les données et renvoi null si erreur 
     415               // requête sur les données et renvoi null si erreur 
    487416               $strReq = 
    488417                    'SELECT *'. 
     
    697626     * retourne les billets pour la newsletter: 
    698627     */ 
    699      public static function getPosts($dt) 
     628     public static function getPosts($dt=null) 
    700629     { 
    701630          global $core; 
     
    719648               // limitation du nombre de billets 
    720649               $maxPost = newsletterPlugin::getMaxPosts(); 
    721                if ($maxPost > 0)  
     650               if ($maxPost > 0) { 
    722651                    $params['limit'] = $maxPost; 
     652               } 
    723653 
    724654               // définition du tris des enregistrements et filtrage dans le temps 
     
    737667                    } 
    738668               } 
    739                 
    740               $year = dt::dt2str('%Y', $dt); 
    741               $month = dt::dt2str('%m', $dt); 
    742               $day = dt::dt2str('%d', $dt); 
    743               $hours = dt::dt2str('%H', $dt); 
    744               $minutes = dt::dt2str('%M', $dt); 
    745               $seconds = dt::dt2str('%S', $dt); 
     669 
     670               /*              
     671               $year = dt::dt2str('%Y', $dt); 
     672               $month = dt::dt2str('%m', $dt); 
     673               $day = dt::dt2str('%d', $dt); 
     674               $hours = dt::dt2str('%H', $dt); 
     675               $minutes = dt::dt2str('%M', $dt); 
     676               $seconds = dt::dt2str('%S', $dt); 
    746677 
    747678               // depuis lastsent 
    748               $params['sql'] .= ' AND '.$con->dateFormat('P.post_dt','%Y-%m-%d %H:%M:%S')."> '$year-$month-$day $hours:$minutes:$seconds'"; 
     679               $params['sql'] .= ' AND '.$con->dateFormat('P.post_dt','%Y-%m-%d %H:%M:%S')."> '$year-$month-$day $hours:$minutes:$seconds'"; 
     680               */ 
    749681 
    750682               // récupération des billets 
    751683               $rs = $blog->getPosts($params, false); 
    752  
     684                
    753685               $minPosts = newsletterPlugin::getMinPosts(); 
    754686               if($rs->count() < $minPosts) 
     
    762694     } 
    763695 
     696     public static function getNewsletterPosts() 
     697     { 
     698          global $core; 
     699 
     700          // boucle sur les billets concernés pour l'abonnés 
     701          $bodies = array(); 
     702          $posts = array(); 
     703 
     704          $format = ''; 
     705          if (!empty($attr['format'])) { 
     706               $format = addslashes($attr['format']); 
     707          }               
     708      
     709          $posts = self::getPosts(); 
     710           
     711          //$posts->core = $core; 
     712          //$posts->moveStart(); 
     713          while ($posts->fetch()) 
     714          { 
     715               //$p_ids[] = $posts->post_id; 
     716 
     717               // récupération des informations du billet 
     718               if(newsletterPlugin::getViewContentPost()) { 
     719                    $bodies[] = array( 
     720                         'title' => $posts->post_title, 
     721                         'url' => $posts->getURL(), 
     722                         'date' => $posts->getDate($format), 
     723                         'category' => $posts->getCategoryURL(), 
     724                         'content' => html::escapeHTML(newsletterTools::cutString(html::decodeEntities(html::clean($posts->getContent())),newsletterPlugin::getSizeContentPost())), 
     725                         'author' => $posts->getAuthorCN(), 
     726                         'post_dt' => $posts->post_dt 
     727                         ); 
     728               } else { 
     729                    $bodies[] = array( 
     730                         'title' => $posts->post_title, 
     731                         'url' => $posts->getURL(), 
     732                         'date' => $posts->getDate($format), 
     733                         'category' => $posts->getCategoryURL(), 
     734                         'content' => html::escapeHTML(''), 
     735                         'author' => $posts->getAuthorCN(), 
     736                         'post_dt' => $posts->post_dt 
     737                         ); 
     738               } 
     739          } 
     740          return $bodies; 
     741     } 
     742 
     743     public function getUserPosts($posts=array(),$dt=null) 
     744     { 
     745          $bodies = array(); 
     746          foreach ($posts as $k => $v) { 
     747               if($dt < $v['post_dt']) { 
     748                    $bodies[] = $posts[$k]; 
     749               } 
     750          } 
     751           
     752          return $bodies; 
     753     } 
     754 
    764755     /* ================================================== 
    765756          emails 
     
    767758 
    768759     /** 
    769      * convertit le texte en 7 bits 
    770      */ 
    771      private static function to7bit($text, $from_enc) 
     760     * renvoi l'url de base de newsletter 
     761     */ 
     762     public static function url($cmd = '') 
    772763     { 
    773764          global $core; 
    774765          try { 
    775                return preg_replace( 
    776                     array('/&szlig;/', '/&(..)lig;/','/&([aouAOU])uml;/', '/&(.)[^;]*;/'), 
    777                     array('ss', "$1", "$1" . 'e', "$1"), 
    778                     mb_convert_encoding($text, 'HTML-ENTITIES', $from_enc)); 
     766               $url = &$core->url; 
     767               $blog = &$core->blog; 
     768               $blogurl = &$blog->url; 
     769 
     770               if ($cmd == '')  
     771                    return http::concatURL($blogurl, $url->getBase('newsletter')); 
     772               else  
     773                    return http::concatURL($blogurl, $url->getBase('newsletter')).'/'.$cmd; 
    779774          } catch (Exception $e) {  
    780775               $core->error->add($e->getMessage());  
    781776          } 
    782777     } 
    783  
    784      /** 
    785      * envoi de mail 
    786      */ 
    787      public static function Sendmail($_from, $_name, $_email, $_subject, $_body, $_type = 'text', $_lang = 'fr') 
    788      { 
    789           global $core; 
    790           if (empty($_from) || empty($_email) || empty($_subject) || empty($_body)) { 
    791                return false; 
    792           } else { 
    793                if (empty($_name)) { 
    794                     $_name = $_from; 
    795                } 
    796                 
    797                try { 
    798                     $f_check_notification = newsletterPlugin::getCheckNotification(); 
    799                     //$email_from = mail::B64Header($_name.' <'.$_from.'>'); 
    800                     $_name = mail::B64Header($_name); 
    801                     $email_from = mail::B64Header('<'.$_from.'>'); 
    802                     $email_to = mail::B64Header($_email.' <'.$_email.'>'); 
    803  
    804                     $headers = array( 
    805                          'From: "'.$_name.'" '.$email_from, 
    806                          'Reply-To: '.$email_from, 
    807                          'Delivered-to: '.$email_to,              
    808                          'X-Sender:'.$email_from, 
    809                          'MIME-Version: 1.0', 
    810                          (($_type == 'html') ? 'Content-Type: text/html; charset=UTF-8;' : 'Content-Type: text/plain; charset=UTF-8;'), 
    811                          'X-Mailer: Dotclear '.mail::B64Header(newsletterPlugin::dbVersion()), 
    812                          'X-Blog-Id: '.mail::B64Header($core->blog->id), 
    813                          'X-Blog-Name: '.mail::B64Header($core->blog->name), 
    814                          'X-Blog-Url: '.mail::B64Header($core->blog->url), 
    815                          'X-Originating-IP: '.http::realIP(), 
    816                          (($f_check_notification) ? 'Disposition-Notification-To: '.$email_from : '') 
    817                     ); 
    818                      
    819                     $subject = mail::B64Header($_subject); 
    820                      
    821                     return (mail::sendMail($_email, $subject, $_body, $headers)); 
    822                } catch (Exception $e) {  
    823                     //$core->error->add($e->getMessage()); 
    824                     return false; 
    825                } 
    826           } 
    827      } 
    828  
    829      /** 
    830      * renvoi l'url de base de newsletter 
    831      */ 
    832     public static function url($cmd = '') 
    833     { 
    834         global $core; 
    835         try { 
    836              $url = &$core->url; 
    837              $blog = &$core->blog; 
    838              $blogurl = &$blog->url; 
    839  
    840             if ($cmd == '') return http::concatURL($blogurl, $url->getBase('newsletter')); 
    841             else return http::concatURL($blogurl, $url->getBase('newsletter')).'/'.$cmd; 
    842         } catch (Exception $e) {  
    843           $core->error->add($e->getMessage());  
    844         } 
    845     } 
    846778 
    847779     /** 
     
    895827     } 
    896828 
    897      /** 
    898      * envoi de la newsletter 
    899      */ 
    900      public static function sendNewsletter($id = -1) 
    901      { 
    902           if (!newsletterPlugin::isActive()) {    // test si le plugin est actif 
    903                return false; 
    904           } else if ($id == -1) {                 // test sur la valeur de l'id qui doit être positive ou null 
    905                return false; 
    906           } else {                                // envoi des mails aux abonnés 
    907                global $core; 
    908                try 
    909                { 
    910                     $url = &$core->url; 
    911                     $blog = &$core->blog; 
    912                     $blogurl = &$blog->url; 
    913                     
    914                     $format = ''; 
    915                     if (!empty($attr['format'])) { 
    916                          $format = addslashes($attr['format']); 
    917                     }                   
     829 
     830 
     831     /** 
     832      * Prepare la liste des messages et declenche l'envoi de cette liste. 
     833      * Retourne les resultats des envois dans un string 
     834      * 
     835      * @param:     $id            array 
     836      * @param:     $action        string 
     837      * 
     838      * @return:    string 
     839      */ 
     840     public function send($id=-1,$action=null) 
     841     { 
     842          global $core; 
     843 
     844          $url = &$core->url; 
     845          $blog = &$core->blog; 
     846          $blogurl = &$blog->url; 
     847 
     848          $send = array(); 
     849 
     850          try { 
     851               if (!newsletterPlugin::isActive()) {         // test si le plugin est actif 
     852                    return false; 
     853               } else if ($id == -1 || $action === null) {  // test sur la valeur de l'id qui doit être positive ou null 
     854                    return false; 
     855               } else {                                     // envoi des mails aux abonnés 
    918856 
    919857                    // prise en compte du paramètres: liste d'id ou id simple 
     
    924862                         $ids[] = $id;  
    925863                    } 
    926  
    927                     // initialisation du moteur de template 
    928                     $send = array(); 
    929                     self::BeforeSendmailTo(newsletterPlugin::getPresentationMsg(), newsletterPlugin::getConcludingMsg()); 
    930                     $states = array(); 
    931  
    932                     // initialisation des variables de travail 
    933                     $blogname = &$blog->name; 
    934                     $editorName = newsletterPlugin::getEditorName(); 
    935                     $editorEmail = newsletterPlugin::getEditorEmail(); 
    936                     $mode = newsletterPlugin::getSendMode(); 
    937                     //$subject = text::toUTF8(__('Newsletter for').' '.$blogname); 
    938                     $subject = text::toUTF8(newsletterPlugin::getNewsletterSubject()); 
    939  
    940                     // boucle sur les ids des abonnés à mailer 
    941                     foreach ($ids as $subscriber_id) 
    942                     { 
    943                          // récupération de l'abonné et extraction des données 
    944                         $subscriber = self::get($subscriber_id); 
    945  
    946                          // récupération des billets en fonction de l'abonné (date de dernier envoi et billets déja envoyés) 
    947                          $posts = self::getPosts($subscriber->lastsent); 
    948                          if ($posts == null) { 
    949                               $send['nothing'][] = $subscriber->email; // rien à envoyer (aucun billet) 
    950                          } else { 
    951                               $body = ''; 
    952                               $bodies = array(); 
    953                               $convert = new html2text(); 
    954                               $convert->labelLinks = __('Links:'); 
    955                               $convert->set_base_url($blogurl); 
    956                               // boucle sur les billets concernés pour l'abonnés 
    957                               $posts->core = $core; 
    958                               $posts->moveStart(); 
    959                               while ($posts->fetch()) 
    960                               { 
    961                                    $p_ids[] = $posts->post_id; 
    962  
    963                                    // récupération des informations du billet 
    964                                    if(newsletterPlugin::getViewContentPost()) { 
    965                                         $bodies[] = array( 
    966                                         'title' => $posts->post_title, 
    967                                         'url' => $posts->getURL(), 
    968                                         'date' => $posts->getDate($format), 
    969                                         'category' => $posts->getCategoryURL(), 
    970                                         'content' => html::escapeHTML(self::cutString(html::decodeEntities(html::clean($posts->getContent())),newsletterPlugin::getSizeContentPost())), 
    971                                         'author' => $posts->getAuthorCN() 
    972                                         ); 
    973                                    } else { 
    974                                         $bodies[] = array( 
    975                                         'title' => $posts->post_title, 
    976                                         'url' => $posts->getURL(), 
    977                                         'date' => $posts->getDate($format), 
    978                                         'category' => $posts->getCategoryURL(), 
    979                                         'content' => html::escapeHTML(''), 
    980                                         'author' => $posts->getAuthorCN() 
    981                                         ); 
    982                                    } 
    983                               } 
    984  
    985                               // définition du format d'envoi 
    986                               if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
    987                                    $mode = $subscriber->modesend; 
    988                               } 
    989                                
    990                               // intégration dans le template des billets en génération du rendu 
    991                               if(newsletterPlugin::getCheckUseSuspend()) { 
    992                                    nlTemplate::assign('urlSuspend', self::url('suspend/'.self::base64_url_encode($subscriber->email))); 
    993                               } else { 
    994                                    nlTemplate::assign('urlSuspend', ' '); 
    995                               } 
    996                               nlTemplate::assign('urlDisable', self::url('disable/'.self::base64_url_encode($subscriber->email))); 
    997                               nlTemplate::assign('posts', $bodies); 
    998                               $body = nlTemplate::render('newsletter', $mode); 
    999  
    1000                               // envoi du mail et log 
    1001                               if (self::Sendmail($editorEmail, $editorName, $subscriber->email, $subject, $body, $mode)) { 
    1002                                    // prise en compte email envoyé et mise à jour de l'abonné (date de dernier envoi et liste de billets déja envoyés) 
    1003                                    $send['ok'][] = $subscriber->email; 
    1004                                    $states[] = $subscriber->subscriber_id; 
    1005                               } else {  
    1006                                    // erreur d'envoi de mail 
    1007                                    $send['error'][] = $subscriber->email; 
    1008                               } 
    1009                                
    1010                          } 
    1011                     } 
    1012  
    1013             if (is_array($states) && count($states) > 0) 
    1014                self::lastsent($states);                                
     864           
     865                    $newsletter_mailing = new newsletterMailing($core);          
     866 
     867                    // filtrage sur le type de mail 
     868                    switch ($action) { 
     869                         case 'newsletter': 
     870                              self::prepareMessagesNewsletter($ids,$newsletter_mailing); 
     871                              break; 
     872                         case 'confirm': 
     873                              self::prepareMessagesConfirm($ids,$newsletter_mailing); 
     874                              break; 
     875                         case 'suspend': 
     876                              self::prepareMessagesSuspend($ids,$newsletter_mailing); 
     877                              break; 
     878                         case 'enable': 
     879                              self::prepareMessagesEnable($ids,$newsletter_mailing); 
     880                              break; 
     881                         case 'disable': 
     882                              self::prepareMessagesDisable($ids,$newsletter_mailing); 
     883                              break; 
     884                         case 'resume': 
     885                              self::prepareMessagesResume($ids,$newsletter_mailing); 
     886                              break; 
     887                         case 'changemode': 
     888                              self::prepareMessagesChangeMode($ids,$newsletter_mailing); 
     889                              break; 
     890                         default: 
     891                              return false; 
     892                    } 
     893 
     894                    // Envoi des messages 
     895                    $newsletter_mailing->batchSend(); 
     896                     
     897                    $sent_states = $newsletter_mailing->getStates(); 
     898                    $sent_success = $newsletter_mailing->getSuccess(); 
     899                    $sent_errors = $newsletter_mailing->getErrors(); 
     900                    $sent_nothing = $newsletter_mailing->getNothingToSend(); 
     901                     
     902                    if (is_array($sent_states) && count($sent_states) > 0) { 
     903                         // positionnement de l'état des comptes 
     904                         switch ($action) { 
     905                              case 'newsletter': 
     906                                   self::lastsent($sent_states); 
     907                                   break; 
     908                              case 'confirm': 
     909                                   self::confirm($sent_states); 
     910                                   break; 
     911                              case 'suspend':  
     912                                   self::suspend($sent_states); 
     913                                   break; 
     914                              case 'enable':  
     915                                   self::enable($sent_states); 
     916                                   break; 
     917                              case 'disable':  
     918                                   self::disable($sent_states); 
     919                                   break; 
     920                              case 'resume': 
     921                                   break; 
     922                              case 'changemode': 
     923                                   break; 
     924                         } 
     925                    }          
    1015926                 
    1016927                    $msg = ''; 
    1017                     if (isset($send['ok']) && count($send['ok']) > 0)  
    1018                          $msg .= __('Successful mail sent for').' '.implode(', ', $send['ok']).'<br />'; 
    1019                     if (isset($send['error']) && count($send['error']) > 0)  
    1020                          $msg .= __('Mail sent error for').' '.implode(', ', $send['error']).'<br />'; 
    1021                     if (isset($send['nothing']) &&count($send['nothing']) > 0)  
    1022                          $msg .= __('Nothing to send for').' '.implode(', ', $send['nothing']).'<br />'; 
    1023  
     928                     
     929                    if (isset($sent_success) && count($sent_success) > 0)  
     930                         $msg .= __('Successful mail sent for').' '.implode(', ', $sent_success).'<br />'; 
     931 
     932                    if (isset($sent_errors) && count($sent_errors) > 0)  
     933                         $msg .= __('Mail sent error for').' '.implode(', ', $sent_errors).'<br />'; 
     934 
     935                    if (isset($sent_nothing) &&count($sent_nothing) > 0)  
     936                         $msg .= __('Nothing to send for').' '.implode(', ', $sent_nothing).'<br />'; 
     937                     
    1024938                    return $msg; 
    1025939               } 
    1026                catch (Exception $e) {  
    1027                     $core->error->add($e->getMessage());  
    1028                } 
    1029           } 
    1030      } 
    1031  
    1032      /** 
    1033      * envoi automatique de la newsletter 
    1034      */ 
     940          } catch (Exception $e) {  
     941               $core->error->add($e->getMessage());  
     942          } 
     943     } 
     944 
     945     /** 
     946      * Prepare le contenu des messages de type newsletter 
     947      * Modifie l'objet newsletterMailing fourni en parametre 
     948      * 
     949      * @param:     $ids                     array 
     950      * @param:     $newsletter_mailing      newsletterMailing 
     951      * 
     952      * @return:    boolean 
     953      */ 
     954     private static function prepareMessagesNewsletter($ids=-1,&$newsletter_mailing) 
     955     { 
     956          // initialisation des variables de travail 
     957          $mode = newsletterPlugin::getSendMode(); 
     958          $subject = text::toUTF8(newsletterPlugin::getNewsletterSubject()); 
     959          $minPosts = newsletterPlugin::getMinPosts(); 
     960                     
     961          // initialisation du moteur de template 
     962          self::BeforeSendmailTo(newsletterPlugin::getPresentationMsg(), newsletterPlugin::getConcludingMsg()); 
     963                     
     964          // recuperation des billets 
     965          $newsletter_posts = self::getNewsletterPosts(); 
     966 
     967          // boucle sur les ids des abonnés 
     968          foreach ($ids as $subscriber_id) 
     969          { 
     970               // récupération de l'abonné et extraction des données 
     971               $subscriber = self::get($subscriber_id); 
     972 
     973               // récupération des billets en fonction de l'abonné (date de dernier envoi) 
     974               $user_posts = self::getUserPosts($newsletter_posts,$subscriber->lastsent); 
     975           
     976               if(count($user_posts) < $minPosts) { 
     977                    $newsletter_mailing->addNothingToSend($subscriber_id,$subscriber->email); 
     978               } else { 
     979                    $body = ''; 
     980                    /*$convert = new html2text(); 
     981                    $convert->labelLinks = __('Links:'); 
     982                    $convert->set_base_url($blogurl);*/ 
     983                               
     984                    // définition du format d'envoi 
     985                    if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
     986                         $mode = $subscriber->modesend; 
     987                    } 
     988                               
     989                    // intégration dans le template des billets en génération du rendu 
     990                    if(newsletterPlugin::getCheckUseSuspend()) { 
     991                         nlTemplate::assign('urlSuspend', self::url('suspend/'.newsletterTools::base64_url_encode($subscriber->email))); 
     992                    } else { 
     993                         nlTemplate::assign('urlSuspend', ' '); 
     994                    } 
     995                    nlTemplate::assign('urlDisable', self::url('disable/'.newsletterTools::base64_url_encode($subscriber->email))); 
     996                    nlTemplate::assign('posts', $user_posts); 
     997 
     998                    $body = nlTemplate::render('newsletter', $mode); 
     999                               
     1000                    if($mode == 'text') { 
     1001                         $convert = new html2text(); 
     1002                         $convert->set_html($body); 
     1003                         $convert->labelLinks = __('Links:'); 
     1004                         $body = $convert->get_text(); 
     1005                    } 
     1006                               
     1007                    // ajoute le message dans la liste d'envoi 
     1008                    $newsletter_mailing->addMessage($subscriber_id,$subscriber->email,$subject,$body,$mode); 
     1009               } 
     1010          } 
     1011          return true; 
     1012     } 
     1013 
     1014     /** 
     1015      * Prepare le contenu des messages de type confirm 
     1016      * Modifie l'objet newsletterMailing fourni en parametre 
     1017      * 
     1018      * @param:     $ids                     array 
     1019      * @param:     $newsletter_mailing      newsletterMailing 
     1020      * 
     1021      * @return:    boolean 
     1022      */ 
     1023     private static function prepareMessagesConfirm($ids=-1,&$newsletter_mailing) 
     1024     { 
     1025          // initialisation des variables de travail 
     1026          $mode = newsletterPlugin::getSendMode(); 
     1027          $subject = text::toUTF8(newsletterPlugin::getConfirmSubject()); 
     1028 
     1029          // initialisation du moteur de template 
     1030          self::BeforeSendmailTo(__('Newsletter subscription confirmation for'), __('Thanks you for subscribing.')); 
     1031 
     1032          // boucle sur les ids des abonnés 
     1033          foreach ($ids as $subscriber_id) 
     1034          { 
     1035               $body = ''; 
     1036               // récupération de l'abonné et extraction des données 
     1037               $subscriber = self::get($subscriber_id); 
     1038 
     1039               // définition du format d'envoi 
     1040               if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
     1041                    $mode = $subscriber->modesend; 
     1042               } 
     1043 
     1044               // génération du rendu 
     1045               nlTemplate::assign('urlConfirm', self::url('confirm/'.newsletterTools::base64_url_encode($subscriber->email).'/'.$subscriber->regcode.'/'.newsletterTools::base64_url_encode($subscriber->modesend))); 
     1046               nlTemplate::assign('urlDisable', self::url('disable/'.newsletterTools::base64_url_encode($subscriber->email))); 
     1047 
     1048               $body = nlTemplate::render('confirm', $mode); 
     1049 
     1050               if($mode == 'text') { 
     1051                    $convert = new html2text(); 
     1052                    $convert->set_html($body); 
     1053                    $convert->labelLinks = __('Links:'); 
     1054                    $body = $convert->get_text(); 
     1055               } 
     1056 
     1057               // ajoute le message dans la liste d'envoi 
     1058               $newsletter_mailing->addMessage($subscriber_id,$subscriber->email,$subject,$body,$mode); 
     1059          } 
     1060          return true; 
     1061     } 
     1062 
     1063     /** 
     1064      * Prepare le contenu des messages de type suspend 
     1065      * Modifie l'objet newsletterMailing fourni en parametre 
     1066      * 
     1067      * @param:     $ids                     array 
     1068      * @param:     $newsletter_mailing      newsletterMailing 
     1069      * 
     1070      * @return:    boolean 
     1071      */ 
     1072     private static function prepareMessagesSuspend($ids=-1,&$newsletter_mailing) 
     1073     { 
     1074          // initialisation des variables de travail 
     1075          $mode = newsletterPlugin::getSendMode(); 
     1076          $subject = text::toUTF8(newsletterPlugin::getSuspendSubject()); 
     1077 
     1078          // initialisation du moteur de template 
     1079          self::BeforeSendmailTo(__('Newsletter account suspend for'), __('Have a nice day !')); 
     1080 
     1081          // boucle sur les ids des abonnés 
     1082          foreach ($ids as $subscriber_id) 
     1083          { 
     1084               // récupération de l'abonné et extraction des données 
     1085               $subscriber = self::get($subscriber_id); 
     1086 
     1087               // définition du format d'envoi 
     1088               if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
     1089                    $mode = $subscriber->modesend; 
     1090               } 
     1091 
     1092               // génération du rendu 
     1093               nlTemplate::assign('urlEnable', self::url('enable/'.newsletterTools::base64_url_encode($subscriber->email))); 
     1094 
     1095               $body = nlTemplate::render('suspend', $mode); 
     1096                
     1097               if($mode == 'text') { 
     1098                    $convert = new html2text(); 
     1099                    $convert->set_html($body); 
     1100                    $convert->labelLinks = __('Links:'); 
     1101                    $body = $convert->get_text(); 
     1102               } 
     1103 
     1104               // ajoute le message dans la liste d'envoi 
     1105               $newsletter_mailing->addMessage($subscriber_id,$subscriber->email,$subject,$body,$mode); 
     1106          } 
     1107          return true; 
     1108     } 
     1109 
     1110     /** 
     1111      * Prepare le contenu des messages de type enable 
     1112      * Modifie l'objet newsletterMailing fourni en parametre 
     1113      * 
     1114      * @param:     $ids                     array 
     1115      * @param:     $newsletter_mailing      newsletterMailing 
     1116      * 
     1117      * @return:    boolean 
     1118      */ 
     1119     private static function prepareMessagesEnable($ids=-1,&$newsletter_mailing) 
     1120     { 
     1121          // initialisation des variables de travail 
     1122          $mode = newsletterPlugin::getSendMode(); 
     1123          $subject = text::toUTF8(newsletterPlugin::getEnableSubject()); 
     1124 
     1125          // initialisation du moteur de template 
     1126          self::BeforeSendmailTo(__('Newsletter account activation for'), __('Thank you for subscribing.')); 
     1127 
     1128          // boucle sur les ids des abonnés 
     1129          foreach ($ids as $subscriber_id) 
     1130          { 
     1131               // récupération de l'abonné et extraction des données 
     1132               $subscriber = self::get($subscriber_id); 
     1133 
     1134               // définition du format d'envoi 
     1135               if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
     1136                    $mode = $subscriber->modesend; 
     1137               } 
     1138 
     1139               // génération du rendu 
     1140               nlTemplate::assign('urlDisable', self::url('disable/'.newsletterTools::base64_url_encode($subscriber->email))); 
     1141                    if(newsletterPlugin::getCheckUseSuspend()) { 
     1142                         nlTemplate::assign('urlSuspend', self::url('suspend/'.newsletterTools::base64_url_encode($subscriber->email))); 
     1143                    } else { 
     1144                         nlTemplate::assign('urlSuspend', ' '); 
     1145                    } 
     1146 
     1147               $body = nlTemplate::render('enable', $mode); 
     1148 
     1149               if($mode == 'text') { 
     1150                    $convert = new html2text(); 
     1151                    $convert->set_html($body); 
     1152                    $convert->labelLinks = __('Links:'); 
     1153                    $body = $convert->get_text(); 
     1154               } 
     1155           
     1156               // ajoute le message dans la liste d'envoi 
     1157               $newsletter_mailing->addMessage($subscriber_id,$subscriber->email,$subject,$body,$mode); 
     1158          } 
     1159          return true; 
     1160     } 
     1161 
     1162     /** 
     1163      * Prepare le contenu des messages de type disable 
     1164      * Modifie l'objet newsletterMailing fourni en parametre 
     1165      * 
     1166      * @param:     $ids                     array 
     1167      * @param:     $newsletter_mailing      newsletterMailing 
     1168      * 
     1169      * @return:    boolean 
     1170      */ 
     1171     private static function prepareMessagesDisable($ids=-1,&$newsletter_mailing) 
     1172     { 
     1173          // initialisation des variables de travail 
     1174          $mode = newsletterPlugin::getSendMode(); 
     1175          $subject = text::toUTF8(newsletterPlugin::getDisableSubject()); 
     1176 
     1177          // initialisation du moteur de template 
     1178          self::BeforeSendmailTo(__('Newsletter account removal for'), __('Have a nice day !')); 
     1179 
     1180          // boucle sur les ids des abonnés 
     1181          foreach ($ids as $subscriber_id) 
     1182          { 
     1183               // récupération de l'abonné et extraction des données 
     1184               $subscriber = self::get($subscriber_id); 
     1185 
     1186               // définition du format d'envoi 
     1187               if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
     1188                    $mode = $subscriber->modesend; 
     1189               } 
     1190 
     1191               // génération du rendu 
     1192               nlTemplate::assign('urlEnable', self::url('enable/'.newsletterTools::base64_url_encode($subscriber->email))); 
     1193 
     1194               $body = nlTemplate::render('disable', $mode); 
     1195 
     1196               if($mode == 'text') { 
     1197                    $convert = new html2text(); 
     1198                    $convert->set_html($body); 
     1199                    $convert->labelLinks = __('Links:'); 
     1200                    $body = $convert->get_text(); 
     1201               } 
     1202           
     1203               // ajoute le message dans la liste d'envoi 
     1204               $newsletter_mailing->addMessage($subscriber_id,$subscriber->email,$subject,$body,$mode); 
     1205          } 
     1206          return true; 
     1207     } 
     1208 
     1209     /** 
     1210      * Prepare le contenu des messages de type resume 
     1211      * Modifie l'objet newsletterMailing fourni en parametre 
     1212      * 
     1213      * @param:     $ids                     array 
     1214      * @param:     $newsletter_mailing      newsletterMailing 
     1215      * 
     1216      * @return:    boolean 
     1217      */ 
     1218     private static function prepareMessagesResume($ids=-1,&$newsletter_mailing) 
     1219     { 
     1220          // initialisation des variables de travail 
     1221          $mode = newsletterPlugin::getSendMode(); 
     1222          $subject = text::toUTF8(newsletterPlugin::getResumeSubject()); 
     1223 
     1224          // initialisation du moteur de template 
     1225          self::BeforeSendmailTo(__('Newsletter account resume for'), __('Have a nice day !')); 
     1226 
     1227          // boucle sur les ids des abonnés 
     1228          foreach ($ids as $subscriber_id) 
     1229          { 
     1230               // récupération de l'abonné et extraction des données 
     1231               $subscriber = self::get($subscriber_id); 
     1232 
     1233               $txt_intro_enable = newsletterPlugin::getTxtIntroEnable().', '; 
     1234               $urlEnable = self::url('enable/'.newsletterTools::base64_url_encode($subscriber->email)); 
     1235               $txtEnable = newsletterPlugin::getTxtEnable(); 
     1236                          
     1237               $txt_intro_disable = newsletterPlugin::getTxtIntroDisable().', '; 
     1238               $urlDisable = self::url('disable/'.newsletterTools::base64_url_encode($subscriber->email)); 
     1239               $txtDisable = newsletterPlugin::getTxtDisable(); 
     1240 
     1241               $txt_intro_suspend = newsletterPlugin::getTxtIntroSuspend().', '; 
     1242               $urlSuspend = self::url('suspend/'.newsletterTools::base64_url_encode($subscriber->email)); 
     1243               $txtSuspend = newsletterPlugin::getTxtSuspend(); 
     1244                          
     1245               $txt_intro_confirm = newsletterPlugin::getTxtIntroConfirm().', '; 
     1246               $urlConfirm = self::url('confirm/'.newsletterTools::base64_url_encode($subscriber->email).'/'.$subscriber->regcode.'/'.newsletterTools::base64_url_encode($subscriber->modesend)); 
     1247               $txtConfirm = newsletterPlugin::getTxtConfirm(); 
     1248                
     1249               $urlResume = ''; 
     1250                          
     1251               switch ($subscriber->state) { 
     1252                    case 'suspended': 
     1253                    { 
     1254                         $urlResume = $txt_intro_enable.' <a href="'.$urlEnable.'">'.$txtEnable.'</a><br />'; 
     1255                         $urlResume .= $txt_intro_disable.' <a href="'.$urlDisable.'">'.$txtDisable.'</a>'; 
     1256                         nlTemplate::assign('txtResume', __('Your account is suspended.')); 
     1257                         break; 
     1258                    } 
     1259                    case 'disabled': 
     1260                    { 
     1261                         $urlResume = $txt_intro_enable.' <a href="'.$urlEnable.'">'.$txtEnable.'</a><br />'; 
     1262                         if(newsletterPlugin::getCheckUseSuspend()) { 
     1263                              $urlResume .= $txt_intro_suspend.' <a href="'.$urlSuspend.'">'.$txtSuspend.'</a>'; 
     1264                         } 
     1265                         nlTemplate::assign('txtResume', __('Your account is disabled.')); 
     1266                         break; 
     1267                    } 
     1268                    case 'enabled': 
     1269                    { 
     1270                         $urlResume = $txt_intro_disable.' <a href="'.$urlDisable.'">'.$txtDisable.'</a><br />'; 
     1271                         if(newsletterPlugin::getCheckUseSuspend()) { 
     1272                              $urlResume .= $txt_intro_suspend.' <a href="'.$urlSuspend.'">'.$txtSuspend.'</a>'; 
     1273                         } 
     1274                         nlTemplate::assign('txtResume', __('Your account is enabled.')); 
     1275                         break; 
     1276                    } 
     1277                    case 'pending': 
     1278                    { 
     1279                         $urlResume = $txt_intro_disable.' <a href="'.$urlDisable.'">'.$txtDisable.'</a><br />'; 
     1280                         $urlResume .= $txt_intro_confirm.' <a href="'.$urlConfirm.'">'.$txtConfirm.'</a>'; 
     1281                         nlTemplate::assign('txtResume', __('Your account is pending confirmation.')); 
     1282                         break; 
     1283                    } 
     1284                    default: 
     1285                    { 
     1286                    } 
     1287               } 
     1288  
     1289               // définition du format d'envoi 
     1290               if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
     1291                    $mode = $subscriber->modesend; 
     1292               } 
     1293 
     1294               nlTemplate::assign('txtMode', __('Your sending mode is'). ' ' .__(''.$mode.''). '.'); 
     1295               nlTemplate::assign('urlResume', $urlResume); 
     1296               $body = nlTemplate::render('resume', $mode); 
     1297 
     1298               if($mode == 'text') { 
     1299                    $convert = new html2text(); 
     1300                    $convert->set_html($body); 
     1301                    $convert->labelLinks = __('Links:'); 
     1302                    $body = $convert->get_text(); 
     1303               } 
     1304 
     1305               // ajoute le message dans la liste d'envoi 
     1306               $newsletter_mailing->addMessage($subscriber_id,$subscriber->email,$subject,$body,$mode); 
     1307          } 
     1308          return true; 
     1309     } 
     1310 
     1311     /** 
     1312      * Prepare le contenu des messages de type changemode 
     1313      * Modifie l'objet newsletterMailing fourni en parametre 
     1314      * 
     1315      * @param:     $ids                     array 
     1316      * @param:     $newsletter_mailing      newsletterMailing 
     1317      * 
     1318      * @return:    boolean 
     1319      */ 
     1320     private static function prepareMessagesChangeMode($ids=-1,&$newsletter_mailing) 
     1321     { 
     1322          // initialisation des variables de travail 
     1323          $mode = newsletterPlugin::getSendMode(); 
     1324          $subject = text::toUTF8(newsletterPlugin::getChangeModeSubject()); 
     1325 
     1326          // initialisation du moteur de template 
     1327          self::BeforeSendmailTo(__('Newsletter account change format for'), __('Have a nice day !')); 
     1328 
     1329          // boucle sur les ids des abonnés 
     1330          foreach ($ids as $subscriber_id) 
     1331          { 
     1332               // récupération de l'abonné et extraction des données 
     1333               $subscriber = self::get($subscriber_id); 
     1334 
     1335               // définition du format d'envoi 
     1336               if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
     1337                    $mode = $subscriber->modesend; 
     1338               }                         
     1339                          
     1340               // génération du rendu 
     1341               nlTemplate::assign('urlEnable', self::url('enable/'.newsletterTools::base64_url_encode($subscriber->email))); 
     1342 
     1343               $body = nlTemplate::render('changemode', $mode); 
     1344 
     1345               if($mode == 'text') { 
     1346                    $convert = new html2text(); 
     1347                    $convert->set_html($body); 
     1348                    $convert->labelLinks = __('Links:'); 
     1349                    $body = $convert->get_text(); 
     1350               } 
     1351 
     1352               // ajoute le message dans la liste d'envoi 
     1353               $newsletter_mailing->addMessage($subscriber_id,$subscriber->email,$subject,$body,$mode); 
     1354          } 
     1355          return true; 
     1356     } 
     1357 
     1358     /** 
     1359      * Envoi automatique de la newsletter pour tous les abonnés actifs 
     1360      * 
     1361      * @return:    boolean 
     1362      */ 
    10351363     public static function autosendNewsletter() 
    10361364     { 
     
    10451373          } else { 
    10461374               $datas = self::getlist(true); 
    1047           if (!is_object($datas)) { 
    1048                return; 
    1049           } else { 
    1050                     global $core; 
    1051                     try { 
    1052                          $datas->moveStart(); 
    1053                          while ($datas->fetch()) {  
    1054                               self::sendNewsletter($datas->subscriber_id);  
    1055                          } 
    1056                     } catch (Exception $e) {  
    1057                          $core->error->add($e->getMessage());  
    1058                           
    1059                     } 
     1375               if (!is_object($datas)) { 
     1376                    return; 
     1377               } else { 
     1378                    $ids = array(); 
     1379                    $datas->moveStart(); 
     1380                    while ($datas->fetch()) {  
     1381                         $ids[] = $datas->subscriber_id; 
     1382                    } 
     1383                    self::send($ids,'newsletter'); 
    10601384               }               
    10611385          }     
     
    10631387 
    10641388     /** 
    1065      * envoi automatique de la newsletter par la tâche planifiée 
    1066      */ 
     1389      * Envoi par tâche planifiée de la newsletter pour tous les abonnés actifs 
     1390      * 
     1391      * @return:    boolean 
     1392      */ 
    10671393     public static function cronSendNewsletter() 
    10681394     { 
     
    10801406                    return; 
    10811407               } else { 
    1082                     global $core; 
    1083                     try { 
    1084                          $datas->moveStart(); 
    1085                          while ($datas->fetch()) {  
    1086                               $msg = self::sendNewsletter($datas->subscriber_id);  
    1087                          } 
    1088                     } catch (Exception $e) {  
    1089                          $core->error->add($e->getMessage());  
    1090                     } 
    1091                } 
    1092           } 
    1093      } 
    1094       
    1095      /** 
    1096      * envoi de la confirmation 
    1097      */ 
    1098      public static function sendConfirm($id = -1) 
    1099      { 
    1100           // test si le plugin est actif 
    1101           if (!newsletterPlugin::isActive()) return false; 
    1102  
    1103           // test sur la valeur de l'id qui doit être positive ou null 
    1104           else if ($id == -1) return false; 
    1105  
    1106           // envoi des mails aux abonnés 
    1107           else 
    1108           { 
    1109                global $core; 
    1110                try 
    1111                { 
    1112                    $url = &$core->url; 
    1113                    $blog = &$core->blog; 
    1114                    $blogurl = &$blog->url; 
    1115  
    1116                     // prise en compte du paramètres: liste d'id ou id simple 
    1117                     if (is_array($id)) { 
    1118                          $ids = $id; 
    1119                     } else {  
    1120                          $ids = array(); $ids[] = $id;  
    1121                     } 
    1122  
    1123                     // initialisation du moteur de template 
    1124                     $send_ok = array(); 
    1125                     $send_error = array(); 
    1126                     $states = array(); 
    1127                     self::BeforeSendmailTo(__('Newsletter subscription confirmation for'), __('Thanks you for subscribing.')); 
    1128  
    1129                     // initialisation des variables de travail 
    1130                     $blogname = &$blog->name; 
    1131                     $editorName = newsletterPlugin::getEditorName(); 
    1132                     $editorEmail = newsletterPlugin::getEditorEmail(); 
    1133                     $mode = newsletterPlugin::getSendMode(); 
    1134                     $subject = text::toUTF8(newsletterPlugin::getConfirmSubject()); 
    1135  
    1136                     // boucle sur les ids des abonnés à mailer 
    1137                     foreach ($ids as $subscriber_id) 
    1138                     { 
    1139                          // récupération de l'abonné et extraction des données 
    1140                          $subscriber = self::get($subscriber_id); 
    1141  
    1142                          // définition du format d'envoi 
    1143                          if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
    1144                               $mode = $subscriber->modesend; 
    1145                          } 
    1146  
    1147                          // génération du rendu 
    1148                          //* 
    1149                          nlTemplate::assign('urlConfirm', self::url('confirm/'.self::base64_url_encode($subscriber->email).'/'.$subscriber->regcode.'/'.self::base64_url_encode($subscriber->modesend))); 
    1150                          nlTemplate::assign('urlDisable', self::url('disable/'.self::base64_url_encode($subscriber->email))); 
    1151                          //*/ 
    1152                          /* 
    1153                          nlTemplate::assign('urlConfirm', self::url('confirm/'.str_replace('=','',base64_encode($subscriber->email).'/'.$subscriber->regcode.'/'.base64_encode($subscriber->modesend)))); 
    1154                          nlTemplate::assign('urlDisable', self::url('disable/'.str_replace('=','',base64_encode($subscriber->email)))); 
    1155                          //*/ 
    1156                          $body = nlTemplate::render('confirm', $mode); 
    1157  
    1158                          // envoi du mail et log 
    1159                          if (self::Sendmail($editorEmail, $editorName, $subscriber->email, $subject, $body, $mode)) 
    1160                          { 
    1161                               $send_ok[] = $subscriber->email; 
    1162                               $states[] = $subscriber_id; 
    1163                          } 
    1164                          else  
    1165                               $send_error[] = $subscriber->email; 
    1166                     } 
    1167  
    1168                 if (is_array($states) && count($states) > 0) 
    1169                     self::confirm($states); 
    1170                  
    1171                     $msg = ''; 
    1172                     if (count($send_ok) > 0) $msg .= __('Successful mail sent for').' '.implode(', ', $send_ok); 
    1173                     if (count($send_ok) > 0 && count($send_error) > 0) $msg .= '<br />'; 
    1174                     if (count($send_error) > 0) $msg .= __('Mail sent error for').' '.implode(', ', $send_error); 
    1175  
    1176                     return $msg; 
    1177                } 
    1178                catch (Exception $e) { $core->error->add($e->getMessage()); } 
    1179           } 
    1180      } 
    1181  
    1182      /** 
    1183      * envoi de la notification de suspension 
    1184      */ 
    1185      public static function sendSuspend($id = -1) 
    1186      { 
    1187           if (!newsletterPlugin::isActive()) { // test si le plugin est actif 
    1188                return false; 
    1189            
    1190           } else if ($id == -1) { // test sur la valeur de l'id qui doit être positive ou null 
    1191                return false; 
    1192           } else {   
    1193                // envoi des mails aux abonnés 
    1194                global $core; 
    1195                try 
    1196                { 
    1197                    $url = &$core->url; 
    1198                    $blog = &$core->blog; 
    1199                    $blogurl = &$blog->url; 
    1200  
    1201                     // prise en compte du paramètres: liste d'id ou id simple 
    1202                     if (is_array($id))  
    1203                          $ids = $id; 
    1204                     else {  
    1205                          $ids = array();  
    1206                          $ids[] = $id;  
    1207                     } 
    1208  
    1209                     // initialisation du moteur de template 
    1210                     $send_ok = array(); 
    1211                     $send_error = array(); 
    1212                     $states = array(); 
    1213                     self::BeforeSendmailTo(__('Newsletter account suspend for'), __('Have a nice day !')); 
    1214  
    1215                     // initialisation des variables de travail 
    1216                     $blogname = &$blog->name; 
    1217                     $editorName = newsletterPlugin::getEditorName(); 
    1218                     $editorEmail = newsletterPlugin::getEditorEmail(); 
    1219                     $mode = newsletterPlugin::getSendMode(); 
    1220                     $subject = text::toUTF8(newsletterPlugin::getSuspendSubject()); 
    1221  
    1222                     // boucle sur les ids des abonnés à mailer 
    1223                     foreach ($ids as $subscriber_id) 
    1224                     { 
    1225                          // récupération de l'abonné et extraction des données 
    1226                         $subscriber = self::get($subscriber_id); 
    1227  
    1228                          // définition du format d'envoi 
    1229                          if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
    1230                               $mode = $subscriber->modesend; 
    1231                          } 
    1232  
    1233                          // génération du rendu 
    1234                          //* 
    1235                          nlTemplate::assign('urlEnable', self::url('enable/'.self::base64_url_encode($subscriber->email))); 
    1236                          //*/ 
    1237                          /* 
    1238                          nlTemplate::assign('urlEnable', self::url('enable/'.str_replace('=','',base64_encode($subscriber->email)))); 
    1239                          //*/ 
    1240                          $body = nlTemplate::render('suspend', $mode); 
    1241  
    1242                          // envoi du mail et log 
    1243                          if (self::Sendmail($editorEmail, $editorName, $subscriber->email, $subject, $body, $mode)) 
    1244                          { 
    1245                               $send_ok[] = $subscriber->email; 
    1246                               $states[] = $subscriber_id; 
    1247                          } 
    1248                          else  
    1249                               $send_error[] = $subscriber->email; 
    1250                     } 
    1251                 
    1252                     // positionnement de l'état des comptes sur 'compte suspendu' 
    1253                 if (is_array($states) && count($states) > 0) 
    1254                     self::suspend($states); 
    1255  
    1256                     $msg = ''; 
    1257                     if (count($send_ok) > 0) $msg .= __('Successful mail sent for').' '.implode(', ', $send_ok); 
    1258                     if (count($send_ok) > 0 && count($send_error) > 0) $msg .= '<br />'; 
    1259                     if (count($send_error) > 0) $msg .= __('Mail sent error for').' '.implode(', ', $send_error); 
    1260  
    1261                     return $msg; 
    1262                } 
    1263                catch (Exception $e) { $core->error->add($e->getMessage()); } 
    1264           } 
    1265      } 
    1266  
    1267      /** 
    1268      * envoi de la notification d'activation 
    1269      */ 
    1270      static function sendEnable($id = -1) 
    1271      { 
    1272           // test si le plugin est actif 
    1273           if (!newsletterPlugin::isActive()) return false; 
    1274  
    1275           // test sur la valeur de l'id qui doit être positive ou null 
    1276           else if ($id == -1) return false; 
    1277  
    1278           // envoi des mails aux abonnés 
    1279           else 
    1280           { 
    1281                global $core; 
    1282                try 
    1283                { 
    1284                    $url = &$core->url; 
    1285                    $blog = &$core->blog; 
    1286                    $blogurl = &$blog->url; 
    1287  
    1288                     // prise en compte du paramètres: liste d'id ou id simple 
    1289                 if (is_array($id)) $ids = $id; 
    1290                 else { $ids = array(); $ids[] = $id; } 
    1291  
    1292                     // initialisation du moteur de template 
    1293                     $send_ok = array(); 
    1294                     $send_error = array(); 
    1295                     $states = array(); 
    1296                     self::BeforeSendmailTo(__('Newsletter account activation for'), __('Thank you for subscribing.')); 
    1297  
    1298                     // initialisation des variables de travail 
    1299                     $blogname = &$blog->name; 
    1300                     $editorName = newsletterPlugin::getEditorName(); 
    1301                     $editorEmail = newsletterPlugin::getEditorEmail(); 
    1302                     $mode = newsletterPlugin::getSendMode(); 
    1303                     $subject = text::toUTF8(newsletterPlugin::getEnableSubject()); 
    1304  
    1305                     // boucle sur les ids des abonnés à mailer 
    1306                     foreach ($ids as $subscriber_id) 
    1307                     { 
    1308                          // récupération de l'abonné et extraction des données 
    1309                          $subscriber = self::get($subscriber_id); 
    1310  
    1311                          // définition du format d'envoi 
    1312                          if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
    1313                               $mode = $subscriber->modesend; 
    1314                          } 
    1315  
    1316                          // génération du rendu 
    1317                          //* 
    1318                          nlTemplate::assign('urlDisable', self::url('disable/'.self::base64_url_encode($subscriber->email))); 
    1319                          nlTemplate::assign('urlSuspend', self::url('suspend/'.self::base64_url_encode($subscriber->email))); 
    1320                          //*/ 
    1321                          /* 
    1322                          nlTemplate::assign('urlDisable', self::url('disable/'.str_replace('=','',base64_encode($subscriber->email)))); 
    1323                          nlTemplate::assign('urlSuspend', self::url('suspend/'.str_replace('=','',base64_encode($subscriber->email)))); 
    1324                          //*/ 
    1325                          $body = nlTemplate::render('enable', $mode); 
    1326  
    1327                          // envoi du mail et log 
    1328                          if (self::Sendmail($editorEmail, $editorName, $subscriber->email, $subject, $body, $mode)) 
    1329                          { 
    1330                               $send_ok[] = $subscriber->email; 
    1331                               $states[] = $subscriber_id; 
    1332                          } 
    1333                          else  
    1334                               $send_error[] = $subscriber->email; 
    1335                     } 
    1336  
    1337                     // positionnement de l'état des comptes sur 'compte validé' 
    1338                 if (is_array($states) && count($states) > 0) 
    1339                     self::enable($states); 
    1340  
    1341                     $msg = ''; 
    1342                     if (count($send_ok) > 0) $msg .= __('Successful mail sent for').' '.implode(', ', $send_ok); 
    1343                     if (count($send_ok) > 0 && count($send_error) > 0) $msg .= '<br />'; 
    1344                     if (count($send_error) > 0) $msg .= __('Mail sent error for').' '.implode(', ', $send_error); 
    1345  
    1346                     return $msg; 
    1347                } 
    1348                catch (Exception $e) { $core->error->add($e->getMessage()); } 
    1349           } 
    1350      } 
    1351  
    1352      /** 
    1353      * envoi de la notification de désactivation de compte 
    1354      */ 
    1355      static function sendDisable($id = -1) 
    1356      { 
    1357           // test si le plugin est actif 
    1358           if (!newsletterPlugin::isActive()) return false; 
    1359  
    1360           // test sur la valeur de l'id qui doit être positive ou null 
    1361           else if ($id == -1) return false; 
    1362  
    1363           // envoi des mails aux abonnés 
    1364           else 
    1365           { 
    1366                global $core; 
    1367                try 
    1368                { 
    1369                    $url = &$core->url; 
    1370                    $blog = &$core->blog; 
    1371                    $blogurl = &$blog->url; 
    1372  
    1373                     // prise en compte du paramètres: liste d'id ou id simple 
    1374                 if (is_array($id)) $ids = $id; 
    1375                 else { $ids = array(); $ids[] = $id; } 
    1376  
    1377                     // initialisation du moteur de template 
    1378                     $send_ok = array(); 
    1379                     $send_error = array(); 
    1380                     $states = array(); 
    1381                     self::BeforeSendmailTo(__('Newsletter account removal for'), __('Have a nice day !')); 
    1382  
    1383                     // initialisation des variables de travail 
    1384                     $blogname = &$blog->name; 
    1385                     $editorName = newsletterPlugin::getEditorName(); 
    1386                     $editorEmail = newsletterPlugin::getEditorEmail(); 
    1387                     $mode = newsletterPlugin::getSendMode(); 
    1388                     $subject = text::toUTF8(newsletterPlugin::getDisableSubject()); 
    1389  
    1390                     // boucle sur les ids des abonnés à mailer 
    1391                     foreach ($ids as $subscriber_id) 
    1392                     { 
    1393                          // récupération de l'abonné et extraction des données 
    1394                         $subscriber = self::get($subscriber_id); 
    1395  
    1396                          // définition du format d'envoi 
    1397                          if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
    1398                               $mode = $subscriber->modesend; 
    1399                          } 
    1400  
    1401                          // génération du rendu 
    1402                          //* 
    1403                          nlTemplate::assign('urlEnable', self::url('enable/'.self::base64_url_encode($subscriber->email))); 
    1404                          //*/ 
    1405                          /* 
    1406                          nlTemplate::assign('urlEnable', self::url('enable/'.str_replace('=','',base64_encode($subscriber->email)))); 
    1407                          //*/ 
    1408                          $body = nlTemplate::render('disable', $mode); 
    1409  
    1410                          // envoi du mail et log 
    1411                          if (self::Sendmail($editorEmail, $editorName, $subscriber->email, $subject, $body, $mode)) 
    1412                          { 
    1413                               $send_ok[] = $subscriber->email; 
    1414                               $states[] = $subscriber_id; 
    1415                          } 
    1416                          else $send_error[] = $subscriber->email; 
    1417                     } 
    1418  
    1419                     // positionnement de l'état des comptes sur 'compte désactivés' 
    1420                 if (is_array($states) && count($states) > 0) 
    1421                     self::disable($states); 
    1422  
    1423                     $msg = ''; 
    1424                     if (count($send_ok) > 0) $msg .= __('Successful mail sent for').' '.implode(', ', $send_ok); 
    1425                     if (count($send_ok) > 0 && count($send_error) > 0) $msg .= '<br />'; 
    1426                     if (count($send_error) > 0) $msg .= __('Mail sent error for').' '.implode(', ', $send_error); 
    1427  
    1428                     return $msg; 
    1429                } 
    1430                catch (Exception $e) { $core->error->add($e->getMessage()); } 
    1431           } 
    1432      } 
    1433  
    1434      /** 
    1435      * envoi d'un resumé du compte 
    1436      */ 
    1437      public static function sendResume($id = -1) 
    1438      { 
    1439           if (!newsletterPlugin::isActive()) { // test si le plugin est actif 
    1440                return false; 
    1441           } else if ($id == -1) { // test sur la valeur de l'id qui doit être positive ou null 
    1442                return false; 
    1443           } else {   
    1444                // envoi des mails aux abonnés 
    1445                global $core; 
    1446                try 
    1447                { 
    1448                    $url = &$core->url; 
    1449                    $blog = &$core->blog; 
    1450                    $blogurl = &$blog->url; 
    1451  
    1452                     // prise en compte du paramètres: liste d'id ou id simple 
    1453                     if (is_array($id))  
    1454                          $ids = $id; 
    1455                     else {  
    1456                          $ids = array();  
    1457                          $ids[] = $id;  
    1458                     } 
    1459  
    1460                     // initialisation du moteur de template 
    1461                     $send_ok = array(); 
    1462                     $send_error = array(); 
    1463                     $states = array(); 
    1464                     self::BeforeSendmailTo(__('Newsletter account resume for'), __('Have a nice day !')); 
    1465  
    1466                     // initialisation des variables de travail 
    1467                     $blogname = &$blog->name; 
    1468                     $editorName = newsletterPlugin::getEditorName(); 
    1469                     $editorEmail = newsletterPlugin::getEditorEmail(); 
    1470                     $mode = newsletterPlugin::getSendMode(); 
    1471                     $subject = text::toUTF8(newsletterPlugin::getResumeSubject()); 
    1472  
    1473                     // boucle sur les ids des abonnés à mailer 
    1474                     foreach ($ids as $subscriber_id) 
    1475                     { 
    1476                          // récupération de l'abonné et extraction des données 
    1477                          $subscriber = self::get($subscriber_id); 
    1478  
    1479                          $txt_intro_enable = newsletterPlugin::getTxtIntroEnable().', '; 
    1480                          /* 
    1481                          $urlEnable = self::url('enable/'.str_replace('=','',base64_encode($subscriber->email))); 
    1482                          //*/ 
    1483                          $urlEnable = self::url('enable/'.self::base64_url_encode($subscriber->email)); 
    1484                          $txtEnable = newsletterPlugin::getTxtEnable(); 
    1485                           
    1486                          $txt_intro_disable = newsletterPlugin::getTxtIntroDisable().', '; 
    1487                          /* 
    1488                          $urlDisable = self::url('disable/'.str_replace('=','',base64_encode($subscriber->email))); 
    1489                          //*/ 
    1490                          $urlDisable = self::url('disable/'.self::base64_url_encode($subscriber->email)); 
    1491                          $txtDisable = newsletterPlugin::getTxtDisable(); 
    1492  
    1493                           
    1494                          if(newsletterPlugin::getCheckUseSuspend()) { 
    1495                               $txt_intro_suspend = newsletterPlugin::getTxtIntroSuspend().', '; 
    1496                               /* 
    1497                               $urlSuspend = self::url('suspend/'.str_replace('=','',base64_encode($subscriber->email))); 
    1498                               //*/ 
    1499                               $urlSuspend = self::url('suspend/'.self::base64_url_encode($subscriber->email)); 
    1500                               $txtSuspend = newsletterPlugin::getTxtSuspend(); 
    1501                          } else { 
    1502                               $txt_intro_suspend = ' '; 
    1503                               $urlSuspend = ' '; 
    1504                               $txtSuspend = ' '; 
    1505                          } 
    1506                           
    1507  
    1508                          $txt_intro_confirm = newsletterPlugin::getTxtIntroConfirm().', '; 
    1509                          /* 
    1510                          $urlConfirm = self::url('confirm/'.str_replace('=','',base64_encode($subscriber->email).'/'.$subscriber->regcode.'/'.base64_encode($subscriber->modesend))); 
    1511                          //*/ 
    1512                          $urlConfirm = self::url('confirm/'.self::base64_url_encode($subscriber->email).'/'.$subscriber->regcode.'/'.self::base64_url_encode($subscriber->modesend)); 
    1513                          $txtConfirm = newsletterPlugin::getTxtConfirm(); 
    1514                 
    1515                          $urlResume = ''; 
    1516                           
    1517                          switch ($subscriber->state) { 
    1518                               case 'suspended': 
    1519                               { 
    1520                                    $urlResume = $txt_intro_enable.' <a href="'.$urlEnable.'">'.$txtEnable.'</a><br />'; 
    1521                                    $urlResume .= $txt_intro_disable.' <a href="'.$urlDisable.'">'.$txtDisable.'</a>'; 
    1522                                    nlTemplate::assign('txtResume', __('Your account is suspended.')); 
    1523                                    break; 
    1524                               } 
    1525                               case 'disabled': 
    1526                               { 
    1527                                    $urlResume = $txt_intro_enable.' <a href="'.$urlEnable.'">'.$txtEnable.'</a><br />'; 
    1528                                    $urlResume .= $txt_intro_suspend.' <a href="'.$urlSuspend.'">'.$txtSuspend.'</a>'; 
    1529                                    nlTemplate::assign('txtResume', __('Your account is disabled.')); 
    1530                                    break; 
    1531                               } 
    1532                               case 'enabled': 
    1533                               { 
    1534                                    $urlResume = $txt_intro_disable.' <a href="'.$urlDisable.'">'.$txtDisable.'</a><br />'; 
    1535                                    $urlResume .= $txt_intro_suspend.' <a href="'.$urlSuspend.'">'.$txtSuspend.'</a>'; 
    1536                                    nlTemplate::assign('txtResume', __('Your account is enabled.')); 
    1537                                    break; 
    1538                               } 
    1539                               case 'pending': 
    1540                               { 
    1541                                    $urlResume = $txt_intro_disable.' <a href="'.$urlDisable.'">'.$txtDisable.'</a><br />'; 
    1542                                    $urlResume .= $txt_intro_confirm.' <a href="'.$urlConfirm.'">'.$txtConfirm.'</a>'; 
    1543                                    nlTemplate::assign('txtResume', __('Your account is pending confirmation.')); 
    1544                                    break; 
    1545                               } 
    1546                               default: 
    1547                               { 
    1548                               } 
    1549                          } 
    1550   
    1551                          // définition du format d'envoi 
    1552                          if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
    1553                               $mode = $subscriber->modesend; 
    1554                          } 
    1555  
    1556                          if($mode == 'text') { 
    1557                               $convert = new html2text(); 
    1558                               $convert->set_html($urlResume); 
    1559                               $urlResume = $convert->get_text(); 
    1560                          }  
    1561                           
    1562                          nlTemplate::assign('txtMode', __('Your sending mode is'). ' ' .__(''.$mode.''). '.'); 
    1563                          nlTemplate::assign('urlResume', $urlResume); 
    1564                          $body = nlTemplate::render('resume', $mode); 
    1565                           
    1566                          // envoi du mail et log 
    1567                          if (self::Sendmail($editorEmail, $editorName, $subscriber->email, $subject, $body, $mode)) 
    1568                          { 
    1569                               $send_ok[] = $subscriber->email; 
    1570                               $states[] = $subscriber_id; 
    1571                          } 
    1572                          else $send_error[] = $subscriber->email; 
    1573                     } 
    1574                 
    1575                     if (count($send_ok) > 0) $msg .= __('Successful mail sent for').' '.implode(', ', $send_ok); 
    1576                     if (count($send_ok) > 0 && count($send_error) > 0) $msg .= '<br />'; 
    1577                     if (count($send_error) > 0) $msg .= __('Mail sent error for').' '.implode(', ', $send_error); 
    1578  
    1579                     return $msg; 
    1580                } 
    1581                catch (Exception $e) {  
    1582                     $core->error->add($e->getMessage());  
    1583                } 
    1584           } 
    1585      } 
    1586  
    1587      /** 
    1588      * envoi de la notification de changement de format 
    1589      */ 
    1590      static function sendChangeMode($id = -1) 
    1591      { 
    1592           // test si le plugin est actif 
    1593           if (!newsletterPlugin::isActive())  
    1594                return false; 
    1595  
    1596           // test sur la valeur de l'id qui doit être positive ou null 
    1597           else if ($id == -1)  
    1598                return false; 
    1599  
    1600           // envoi des mails aux abonnés 
    1601           else 
    1602           { 
    1603                global $core; 
    1604                try 
    1605                { 
    1606                     $url = &$core->url; 
    1607                     $blog = &$core->blog; 
    1608                     $blogurl = &$blog->url; 
    1609  
    1610                     // prise en compte du paramètres: liste d'id ou id simple 
    1611                     if (is_array($id))  
    1612                          $ids = $id; 
    1613                     else {  
    1614                          $ids = array(); $ids[] = $id;  
    1615                     } 
    1616  
    1617                     // initialisation du moteur de template 
    1618                     $send_ok = array(); 
    1619                     $send_error = array(); 
    1620                     $states = array(); 
    1621                     self::BeforeSendmailTo(__('Newsletter account change format for'), __('Have a nice day !')); 
    1622  
    1623                     // initialisation des variables de travail 
    1624                     $blogname = &$blog->name; 
    1625                     $editorName = newsletterPlugin::getEditorName(); 
    1626                     $editorEmail = newsletterPlugin::getEditorEmail(); 
    1627                     $mode = newsletterPlugin::getSendMode(); 
    1628                     $subject = text::toUTF8(newsletterPlugin::getChangeModeSubject()); 
    1629  
    1630                     // boucle sur les ids des abonnés à mailer 
    1631                     foreach ($ids as $subscriber_id) 
    1632                     { 
    1633                          // récupération de l'abonné et extraction des données 
    1634                          $subscriber = self::get($subscriber_id); 
    1635  
    1636                          // définition du format d'envoi 
    1637                          if (!newsletterPlugin::getUseDefaultFormat() && $subscriber->modesend != null) { 
    1638                               $mode = $subscriber->modesend; 
    1639                          }                         
    1640                           
    1641                          // génération du rendu 
    1642                          /* 
    1643                          nlTemplate::assign('urlEnable', self::url('enable/'.str_replace('=','',base64_encode($subscriber->email)))); 
    1644                          //*/ 
    1645                          nlTemplate::assign('urlEnable', self::url('enable/'.self::base64_url_encode($subscriber->email))); 
    1646  
    1647                          $body = nlTemplate::render('changemode', $mode); 
    1648  
    1649                          // envoi du mail et log 
    1650                          if (self::Sendmail($editorEmail, $editorName, $subscriber->email, $subject, $body, $mode)) 
    1651                          { 
    1652                               $send_ok[] = $subscriber->email; 
    1653                               $states[] = $subscriber_id; 
    1654                          } 
    1655                          else  
    1656                               $send_error[] = $subscriber->email; 
    1657                     } 
    1658  
    1659                     $msg = ''; 
    1660                     if (count($send_ok) > 0) $msg .= __('Successful mail sent for').' '.implode(', ', $send_ok); 
    1661                     if (count($send_ok) > 0 && count($send_error) > 0) $msg .= '<br />'; 
    1662                     if (count($send_error) > 0) $msg .= __('Mail sent error for').' '.implode(', ', $send_error); 
    1663  
    1664                     return $msg; 
    1665                } 
    1666                catch (Exception $e) { $core->error->add($e->getMessage()); } 
     1408                    $ids = array(); 
     1409                    $datas->moveStart(); 
     1410                    while ($datas->fetch()) {  
     1411                         $ids[] = $datas->subscriber_id; 
     1412                    } 
     1413                    self::send($ids,'newsletter'); 
     1414               } 
    16671415          } 
    16681416     } 
     
    16751423     * création du compte 
    16761424     */ 
    1677      static function accountCreate($email = null, $regcode = null, $modesend = null) 
    1678      { 
    1679            
    1680           if (!newsletterPlugin::isActive()) {    // test si le plugin est actif 
    1681                return __('Newsletter is disabled.'); 
    1682           } else if ($email == null) {            // l'email doit être renseigné 
    1683                return __('Bad email !'); 
    1684           } else {                                // création du compte 
    1685                global $core; 
    1686                try { 
    1687                   if (self::getemail($email) != null) { 
    1688                     return __('Email already exist !'); 
    1689                   } else if (!self::add($email, null, null, $modesend)) { 
    1690                     return __('Error creating account !'); 
    1691                   } else { 
    1692                        $subscriber = self::getemail($email); 
    1693                        return self::sendConfirm($subscriber->subscriber_id); 
    1694                     } 
    1695                } catch (Exception $e) {  
    1696                     $core->error->add($e->getMessage());  
    1697                } 
     1425     public static function accountCreate($email = null, $regcode = null, $modesend = null) 
     1426     { 
     1427          global $core; 
     1428          try {           
     1429               if ($email == null) {              // l'email doit être renseigné 
     1430                    return __('Bad email !'); 
     1431               } else {                           // création du compte 
     1432                    if (self::getemail($email) != null) { 
     1433                         return __('Email already exist !'); 
     1434                    } else if (!self::add($email, null, null, $modesend)) { 
     1435                         return __('Error creating account !'); 
     1436                    } else { 
     1437                         $subscriber = self::getemail($email); 
     1438                         $msg = self::send($subscriber->subscriber_id,'confirm'); 
     1439                         return $msg; 
     1440                    } 
     1441               } 
     1442          } catch (Exception $e) {  
     1443               $core->error->add($e->getMessage());  
    16981444          } 
    16991445     } 
     
    17021448     * suppression du compte 
    17031449     */ 
    1704      static function accountDelete($email = null) 
    1705      { 
    1706           // test si le plugin est actif 
    1707           if (!newsletterPlugin::isActive())  
    1708                return __('Newsletter is disabled.'); 
    1709           // l'email doit être renseigné 
    1710           else if ($email == null)  
    1711                return __('Bad email !'); 
    1712           // création du compte 
    1713           else { 
    1714                global $core; 
    1715                try { 
     1450     public static function accountDelete($email = null) 
     1451     { 
     1452          global $core; 
     1453          try {           
     1454               if ($email == null) {              // l'email doit être renseigné 
     1455                    return __('Bad email !'); 
     1456               } else {                           // suppression du compte 
    17161457                    $subscriber = self::getemail($email); 
    17171458                    $msg = null; 
     
    17191460                         return __('Email don\'t exist !'); 
    17201461                    else { 
    1721                          $msg = self::sendDisable($subscriber->subscriber_id); 
     1462                         $msg = self::send($subscriber->subscriber_id,'disable'); 
    17221463                         self::delete($subscriber->subscriber_id); 
    17231464                         return $msg; 
    17241465                    } 
    1725                } catch (Exception $e) {  
    1726                     $core->error->add($e->getMessage());  
    1727                } 
     1466               } 
     1467          } catch (Exception $e) {  
     1468               $core->error->add($e->getMessage());  
    17281469          } 
    17291470     } 
     
    17341475     static function accountSuspend($email = null) 
    17351476     { 
    1736           if (!newsletterPlugin::isActive()) { // test si le plugin est actif 
    1737                return __('Newsletter is disabled.'); 
    1738           } else if ($email == null) { // l'email doit être renseigné 
    1739                return __('Bad email !'); 
    1740           } else { // suspension du compte 
    1741                global $core; 
    1742                try { 
     1477          global $core; 
     1478          try { 
     1479 
     1480               if ($email == null) {              // l'email doit être renseigné 
     1481                    return __('Bad email !'); 
     1482               } else {                           // suspension du compte 
    17431483                    $subscriber = self::getemail($email); 
    1744                          $msg = null; 
     1484                    $msg = ''; 
    17451485                    if (!$subscriber || $subscriber->subscriber_id == null)  
    17461486                         return __('Email don\'t exist !'); 
    17471487                    else { 
    1748                          $msg = self::sendSuspend($subscriber->subscriber_id); 
     1488                         $msg = self::send($subscriber->subscriber_id,'suspend');                         
    17491489                         self::suspend($subscriber->subscriber_id); 
    17501490                         return $msg; 
    17511491                    } 
    1752                } catch (Exception $e) {  
    1753                     $core->error->add($e->getMessage());  
    1754                } 
     1492               } 
     1493          } catch (Exception $e) {  
     1494               $core->error->add($e->getMessage());  
    17551495          } 
    17561496     } 
     
    17591499     * information sur le compte 
    17601500     */ 
    1761      static function accountResume($email = null) 
    1762      { 
    1763           if (!newsletterPlugin::isActive()) { // test si le plugin est actif 
    1764                return __('Newsletter is disabled.'); 
    1765           } else if ($email == null) { // l'email doit être renseigné 
    1766                return __('Bad email !'); 
    1767           } else { // information sur le compte 
    1768                global $core; 
    1769                try { 
     1501     public static function accountResume($email = null) 
     1502     { 
     1503          global $core; 
     1504          try {           
     1505               if ($email == null) {              // l'email doit être renseigné 
     1506                    return __('Bad email !'); 
     1507               } else {                           // information sur le compte 
    17701508                    $subscriber = self::getemail($email); 
    1771                          $msg = null; 
     1509                    $msg = ''; 
    17721510                    if (!$subscriber || $subscriber->subscriber_id == null)  
    17731511                         return __('Email don\'t exist !'); 
    17741512                    else { 
    1775                          $msg = self::sendResume($subscriber->subscriber_id); 
     1513                         $msg = self::send($subscriber->subscriber_id,'resume');                          
    17761514                         //self::resume($subscriber->subscriber_id); 
    17771515                         return $msg; 
    17781516                    } 
    1779                } catch (Exception $e) {  
    1780                     $core->error->add($e->getMessage());  
    1781                } 
    1782           } 
     1517               } 
     1518          } catch (Exception $e) {  
     1519               $core->error->add($e->getMessage());  
     1520          }          
    17831521     } 
    17841522 
     
    17861524     * changement du format sur le compte 
    17871525     */ 
    1788      static function accountChangeMode($email = null, $modesend = null) 
    1789      { 
    1790           if (!newsletterPlugin::isActive()) { // test si le plugin est actif 
    1791                return __('Newsletter is disabled.'); 
    1792           } else if ($email == null) { // l'email doit être renseigné 
    1793                return __('Bad email !'); 
    1794           } else { // information sur le compte 
    1795                global $core; 
    1796                try { 
     1526     public static function accountChangeMode($email = null, $modesend = null) 
     1527     { 
     1528          global $core; 
     1529          try { 
     1530               if ($email == null) {              // l'email doit être renseigné 
     1531                    return __('Bad email !'); 
     1532               } else {                           // information sur le compte 
    17971533                    $subscriber = self::getemail($email); 
    1798                          $msg = null; 
     1534                    $msg = ''; 
    17991535                    if (!$subscriber || $subscriber->subscriber_id == null)  
    18001536                         return __('Email don\'t exist !'); 
    18011537                    else { 
    1802                          $msg = self::sendChangeMode($subscriber->subscriber_id); 
     1538                         $msg = self::send($subscriber->subscriber_id,'changemode');                      
    18031539                         self::changeMode($subscriber->subscriber_id, $modesend); 
    18041540                         return $msg; 
    18051541                    } 
    1806                } catch (Exception $e) {  
    1807                     $core->error->add($e->getMessage());  
    1808                } 
    1809           } 
    1810      } 
    1811  
    1812      // use by : NewsletterFormRandom 
    1813      public static function getRandom() 
    1814      { 
    1815           list($usec, $sec) = explode(' ', microtime()); 
    1816           $seed = (float) $sec + ((float) $usec * 100000); 
    1817           mt_srand($seed); 
    1818           return mt_rand(); 
     1542               } 
     1543          } catch (Exception $e) {  
     1544               $core->error->add($e->getMessage());  
     1545          } 
    18191546     } 
    18201547 
  • plugins/newsletter/trunk/inc/class.template.php

    r898 r1038  
    2222     * répertoire des templates 
    2323     */ 
    24      //public static function folder() { return newsletterPlugin::folder().'templates/'; } 
    2524     public static function folder() {  
    2625          return newsletterPlugin::folder().'../default-templates/';  
     
    7473                    break; 
    7574                
    76                default: return false; 
     75               default:  
     76                    return false; 
    7777          } 
    7878      
     
    158158 
    159159                         if ($mode == 'text')  
    160                               $content = str_replace("{nl}", "\n", $content); 
     160                              $content = str_replace("{nl}", "<br />", $content); 
     161                              //$content = str_replace("{nl}", "\n", $content); 
    161162                         else if ($mode == 'html')  
    162163                              $content = str_replace("{nl}", "<br />", $content);               
    163                          }               
     164                          
    164165                    } 
     166               } 
    165167                
    166                     // boucle sur la liste des méta champs pour en remplacer les valeurs 
    167                     foreach (self::$metas as $k => $v) 
    168                     { 
    169                          if (!is_array($v)) { 
    170                               $tag = '{$'.$k.'}'; 
    171                               $content = str_replace($tag, $v, $content); 
    172                          } 
     168               // boucle sur la liste des méta champs pour en remplacer les valeurs 
     169               foreach (self::$metas as $k => $v) 
     170               { 
     171                    if (!is_array($v)) { 
     172                         $tag = '{$'.$k.'}'; 
     173                         $content = str_replace($tag, $v, $content); 
     174                          
     175                         if ($mode == 'text')  
     176                              $content = str_replace("{nl}", "<br />", $content); 
     177                              //$content = str_replace("{nl}", "\n", $content); 
     178                         else if ($mode == 'html')  
     179                              $content = str_replace("{nl}", "<br />", $content);                              
     180                          
    173181                    } 
     182               } 
    174183                
    175                     // renvoi le contenu transformé 
    176                     return $content; 
     184               // renvoi le contenu transformé 
     185               return $content; 
    177186           
    178187          } catch (Exception $e) {  
  • plugins/newsletter/trunk/index.php

    r978 r1038  
    1919require_once dirname(__FILE__).'/inc/class.newsletter.admin.php'; 
    2020require_once dirname(__FILE__).'/inc/class.newsletter.cron.php'; 
     21require_once dirname(__FILE__).'/inc/class.newsletter.tools.php'; 
     22//require_once dirname(__FILE__).'/inc/class.newsletter.mailing.php'; 
     23 
    2124 
    2225// paramétrage des variables 
     
    615618                    $ids[] = $id;  
    616619               } 
    617                $msg = newsletterCore::sendNewsletter($ids); 
    618                //$msg .= ' subscribers count = '.sizeof($ids); 
     620               $msg = newsletterCore::send($ids,'newsletter'); 
    619621          } catch (Exception $e) {  
    620622               $core->error->add($e->getMessage()); 
     
    637639         { 
    638640               $msg = __('No account changed.'); 
    639                if (is_array($_POST['subscriber'])) 
    640                { 
     641               if (is_array($_POST['subscriber'])) { 
    641642                    $ids = array(); 
    642                     foreach (array_keys($_POST['subscriber']) as $id) { $ids[] = $id; } 
    643                     { 
     643                    foreach (array_keys($_POST['subscriber']) as $id) { $ids[] = $id; } 
     644                    { 
    644645                         if (newsletterCore::lastsent($ids, 'clear'))  
    645646                              $msg = __('Account(s) successfully changed.'); 
     
    696697          $plugin_tab = 'tab_listblog'; 
    697698 
    698          try 
    699          { 
    700              $ids = array(); 
    701              foreach (array_keys($_POST['subscriber']) as $id) { $ids[] = $id; } 
    702              $msg = newsletterCore::sendConfirm($ids); 
    703           } 
    704          catch (Exception $e) { $core->error->add($e->getMessage()); } 
     699          try { 
     700               $ids = array(); 
     701               foreach (array_keys($_POST['subscriber']) as $id)  
     702               {  
     703                    $ids[] = $id;  
     704               } 
     705               $msg = newsletterCore::send($ids,'confirm'); 
     706          } catch (Exception $e) {  
     707               $core->error->add($e->getMessage());  
     708          } 
    705709     } 
    706710     break; 
     
    711715          $plugin_tab = 'tab_listblog'; 
    712716 
    713          try 
    714          { 
    715              $ids = array(); 
    716              foreach (array_keys($_POST['subscriber']) as $id) { $ids[] = $id; } 
    717              $msg = newsletterCore::sendSuspend($ids); 
    718           } 
    719          catch (Exception $e) { $core->error->add($e->getMessage()); } 
     717          try { 
     718               $ids = array(); 
     719               foreach (array_keys($_POST['subscriber']) as $id)  
     720               {  
     721                    $ids[] = $id;  
     722               } 
     723               $msg = newsletterCore::send($ids,'suspend'); 
     724          } catch (Exception $e) {  
     725               $core->error->add($e->getMessage());  
     726          } 
    720727     } 
    721728     break; 
     
    726733          $plugin_tab = 'tab_listblog'; 
    727734 
    728          try 
    729          { 
    730              $ids = array(); 
    731              foreach (array_keys($_POST['subscriber']) as $id) { $ids[] = $id; } 
    732              $msg = newsletterCore::sendDisable($ids); 
    733           } 
    734          catch (Exception $e) { $core->error->add($e->getMessage()); } 
     735          try { 
     736               $ids = array(); 
     737               foreach (array_keys($_POST['subscriber']) as $id)  
     738               {  
     739                    $ids[] = $id;  
     740               } 
     741               $msg = newsletterCore::send($ids,'disable'); 
     742          } catch (Exception $e) {  
     743               $core->error->add($e->getMessage());  
     744          } 
    735745     } 
    736746     break; 
     
    741751          $plugin_tab = 'tab_listblog'; 
    742752 
    743          try 
    744          { 
    745              $ids = array(); 
    746              foreach (array_keys($_POST['subscriber']) as $id) { $ids[] = $id; } 
    747              $msg = newsletterCore::sendEnable($ids); 
    748           } 
    749          catch (Exception $e) { $core->error->add($e->getMessage()); } 
     753          try { 
     754               $ids = array(); 
     755               foreach (array_keys($_POST['subscriber']) as $id)  
     756               {  
     757                    $ids[] = $id;  
     758               } 
     759               $msg = newsletterCore::send($ids,'enable'); 
     760          } catch (Exception $e) {  
     761               $core->error->add($e->getMessage());  
     762          } 
    750763     } 
    751764     break; 
     
    803816               $msg = __('No template adapted.'); 
    804817               if (!empty($_POST['fthemes'])) { 
    805                     if (newsletterAdmin::Adapt($_POST['fthemes'])) $msg = __('Template successfully adapted.'); 
     818                    if (newsletterAdmin::Adapt($_POST['fthemes']))  
     819                         $msg = __('Template successfully adapted.'); 
    806820               } 
    807821          } catch (Exception $e) {  
     
    816830          $plugin_tab = 'tab_maintenance'; 
    817831          try { 
    818            
    819832               newsletterAdmin::Uninstall(); 
    820833               $msg = __('Erasing complete.'); 
  • plugins/newsletter/trunk/locales/fr/main.lang.php

    r927 r1038  
    44 
    55# _install.php:40 
    6 # index.php:45 
     6# index.php:48 
    77$GLOBALS['__l10n']['Unable to install Newsletter.']='Impossible d\'installer Newsletter'; 
    88 
    9 # _public.php:71 
     9# _public.php:75 
    1010$GLOBALS['__l10n']['Test display template.']='Test d\'affichage du template.'; 
    1111 
    12 # _public.php:75 
     12# _public.php:79 
    1313$GLOBALS['__l10n']['About Newsletter ...']='A propos de Newsletter ...'; 
    1414 
    15 # _public.php:76 
     15# _public.php:80 
    1616$GLOBALS['__l10n']['About']='A propos'; 
    1717 
    18 # _public.php:78 
     18# _public.php:82 
    1919$GLOBALS['__l10n']['Authors']='Auteurs'; 
    2020 
    21 # _public.php:84 
    22 # _public.php:100 
    23 # _public.php:116 
    24 # _public.php:132 
    25 # _public.php:148 
    26 $GLOBALS['__l10n']['Missing informations. ']='Informations manquantes.'; 
    27  
    2821# _public.php:88 
    29 $GLOBALS['__l10n']['Your subscription code is invalid.']='Votre code d\'inscription est invalide.'; 
    30  
    31 # _public.php:90 
    32 $GLOBALS['__l10n']['Account already confirmed.']='Abonnement déja confirmé.'; 
    33  
    34 # _public.php:93 
    35 $GLOBALS['__l10n']['Your subscription is confirmed.']='Votre inscription est confirmée.'; 
    36  
    37 # _public.php:93 
    38 # _public.php:109 
    39 # _public.php:125 
    40 # _public.php:141 
    41 # _public.php:155 
    42 $GLOBALS['__l10n']['You will soon receive an email.']='Vous allez bientôt recevoir un email.'; 
    43  
    4422# _public.php:104 
    4523# _public.php:120 
    4624# _public.php:136 
    4725# _public.php:152 
     26$GLOBALS['__l10n']['Missing informations. ']='Informations manquantes.'; 
     27 
     28# _public.php:92 
     29$GLOBALS['__l10n']['Your subscription code is invalid.']='Votre code d\'inscription est invalide.'; 
     30 
     31# _public.php:94 
     32$GLOBALS['__l10n']['Account already confirmed.']='Abonnement déja confirmé.'; 
     33 
     34# _public.php:97 
     35$GLOBALS['__l10n']['Your subscription is confirmed.']='Votre inscription est confirmée.'; 
     36 
     37# _public.php:97 
     38# _public.php:113 
     39# _public.php:129 
     40# _public.php:145 
     41# _public.php:159 
     42$GLOBALS['__l10n']['You will soon receive an email.']='Vous allez bientôt recevoir un email.'; 
     43 
     44# _public.php:108 
     45# _public.php:124 
     46# _public.php:140 
     47# _public.php:156 
    4848$GLOBALS['__l10n']['Unable to find you account informations.']='Impossible de trouver les informations de votre compte.'; 
    4949 
    50 # _public.php:106 
     50# _public.php:110 
    5151$GLOBALS['__l10n']['Account already enabled.']='Abonnement déja activé.'; 
    5252 
    53 # _public.php:109 
    54 # inc/class.newsletter.core.php:1536 
     53# _public.php:113 
     54# inc/class.newsletter.core.php:1245 
    5555$GLOBALS['__l10n']['Your account is enabled.']='Votre abonnement est activé.'; 
    5656 
    57 # _public.php:122 
     57# _public.php:126 
    5858$GLOBALS['__l10n']['Account already disabled.']='Abonnement déja désactivé.'; 
    5959 
    60 # _public.php:125 
    61 # inc/class.newsletter.core.php:1529 
     60# _public.php:129 
     61# inc/class.newsletter.core.php:1238 
    6262$GLOBALS['__l10n']['Your account is disabled.']='Votre abonnement est désactivé.'; 
    6363 
    64 # _public.php:138 
     64# _public.php:142 
    6565$GLOBALS['__l10n']['Account already suspended.']='Abonnement déja suspendu.'; 
    6666 
    67 # _public.php:141 
    68 # inc/class.newsletter.core.php:1522 
     67# _public.php:145 
     68# inc/class.newsletter.core.php:1231 
    6969$GLOBALS['__l10n']['Your account is suspended.']='Votre abonnement est suspendu.'; 
    7070 
    71 # _public.php:155 
     71# _public.php:159 
    7272$GLOBALS['__l10n']['Your sending format is']='Votre format d\'envoi est'; 
    7373 
    74 # _public.php:178 
     74# _public.php:182 
    7575$GLOBALS['__l10n']['Bad captcha code.']='Mauvais code de vérification.'; 
    7676 
    77 # _public.php:201 
     77# _public.php:205 
    7878$GLOBALS['__l10n']['Error in formular.']='Erreur dans le formulaire.'; 
    7979 
    80 # _public.php:219 
    81 # _public.php:436 
     80# _public.php:223 
     81# _public.php:440 
    8282# _widgets.php:25 
    8383# _widgets.php:27 
    84 # inc/class.newsletter.admin.php:925 
    85 # index.php:23 
     84# inc/class.newsletter.admin.php:930 
     85# inc/class.newsletter.plugin.php:776 
     86# index.php:26 
    8687$GLOBALS['__l10n']['Newsletter']='Lettre d\'informations'; 
    8788 
    88 # _public.php:272 
    89 # _public.php:494 
    90 # _public.php:495 
    91 # inc/class.newsletter.admin.php:499 
     89# _public.php:276 
     90# _public.php:498 
     91# _public.php:499 
     92# inc/class.newsletter.admin.php:504 
    9293$GLOBALS['__l10n']['Captcha']='Code visuel'; 
    9394 
    94 # _public.php:298 
     95# _public.php:302 
     96# _public.php:387 
     97# _public.php:472 
     98# _public.php:477 
     99# inc/class.newsletter.admin.php:923 
     100$GLOBALS['__l10n']['Suspend']='Suspendre'; 
     101 
     102# _public.php:306 
     103# _public.php:390 
     104# _public.php:478 
     105$GLOBALS['__l10n']['Resume']='Résumé'; 
     106 
     107# _public.php:325 
     108# _public.php:368 
     109# _public.php:461 
     110# inc/class.newsletter.admin.php:341 
     111# inc/class.newsletter.admin.php:942 
     112# inc/class.newsletter.admin.php:994 
     113$GLOBALS['__l10n']['text']='texte'; 
     114 
     115# _public.php:332 
    95116# _public.php:383 
    96117# _public.php:468 
    97 # _public.php:473 
    98 # inc/class.newsletter.admin.php:918 
    99 $GLOBALS['__l10n']['Suspend']='Suspendre'; 
    100  
    101 # _public.php:302 
    102 # _public.php:386 
    103 # _public.php:474 
    104 $GLOBALS['__l10n']['Resume']='Résumé'; 
    105  
    106 # _public.php:321 
    107 # _public.php:364 
    108 # _public.php:457 
    109 # inc/class.newsletter.admin.php:341 
    110 # inc/class.newsletter.admin.php:937 
    111 # inc/class.newsletter.admin.php:989 
    112 $GLOBALS['__l10n']['text']='texte'; 
    113  
    114 # _public.php:328 
    115 # _public.php:379 
    116 # _public.php:464 
    117118$GLOBALS['__l10n']['Change format']='Changer le format'; 
    118119 
    119 # _public.php:361 
    120 # _public.php:454 
     120# _public.php:365 
     121# _public.php:458 
    121122$GLOBALS['__l10n']['Format']='Format'; 
    122123 
    123 # _public.php:363 
    124 # _public.php:456 
     124# _public.php:367 
     125# _public.php:460 
    125126# inc/class.newsletter.admin.php:342 
    126 # inc/class.newsletter.admin.php:936 
    127 # inc/class.newsletter.admin.php:990 
     127# inc/class.newsletter.admin.php:941 
     128# inc/class.newsletter.admin.php:995 
    128129$GLOBALS['__l10n']['html']='html'; 
    129130 
    130 # _public.php:388 
    131 # _public.php:476 
    132 # _public.php:481 
     131# _public.php:392 
     132# _public.php:480 
     133# _public.php:485 
    133134$GLOBALS['__l10n']['Unsubscribe']='Se désabonner'; 
    134135 
    135 # _public.php:439 
     136# _public.php:443 
    136137# _widgets.php:32 
    137138$GLOBALS['__l10n']['Subscription link']='S\'abonner'; 
    138139 
    139 # _public.php:451 
     140# _public.php:455 
    140141$GLOBALS['__l10n']['Email']='Courriel'; 
    141142 
    142 # _public.php:459 
    143 # _public.php:479 
     143# _public.php:463 
     144# _public.php:483 
    144145$GLOBALS['__l10n']['Actions']='Actions'; 
    145146 
     
    175176$GLOBALS['__l10n']['Unable to write file.']='Impossible d\'écrire le fichier.'; 
    176177 
    177 # inc/class.newsletter.admin.php:394 
    178 # index.php:856 
     178# inc/class.newsletter.admin.php:395 
     179# index.php:886 
    179180$GLOBALS['__l10n']['Settings']='Paramètres'; 
    180181 
    181 # inc/class.newsletter.admin.php:406 
     182# inc/class.newsletter.admin.php:407 
    182183$GLOBALS['__l10n']['Editor name']='Nom de l\'éditeur'; 
    183184 
    184 # inc/class.newsletter.admin.php:410 
     185# inc/class.newsletter.admin.php:411 
    185186$GLOBALS['__l10n']['Editor email']='Email de l\'éditeur'; 
    186187 
    187 # inc/class.newsletter.admin.php:414 
     188# inc/class.newsletter.admin.php:415 
    188189$GLOBALS['__l10n']['Message presentation']='Message de présentation'; 
    189190 
    190 # inc/class.newsletter.admin.php:418 
     191# inc/class.newsletter.admin.php:419 
    191192$GLOBALS['__l10n']['Presentation message for posts']='Message de présentation pour les billets'; 
    192193 
    193 # inc/class.newsletter.admin.php:422 
     194# inc/class.newsletter.admin.php:423 
    194195$GLOBALS['__l10n']['Introductory confirm message']='Introduction au lien de confirmation'; 
    195196 
    196 # inc/class.newsletter.admin.php:426 
     197# inc/class.newsletter.admin.php:427 
    197198$GLOBALS['__l10n']['Title confirmation link']='Titre du lien de confirmation'; 
    198199 
    199 # inc/class.newsletter.admin.php:430 
     200# inc/class.newsletter.admin.php:431 
    200201$GLOBALS['__l10n']['Subject of the mail Confirm']='Sujet du mail de confirmation'; 
    201202 
    202 # inc/class.newsletter.admin.php:434 
     203# inc/class.newsletter.admin.php:435 
    203204$GLOBALS['__l10n']['Introductory disable message']='Introduction au lien de désactivation'; 
    204205 
    205 # inc/class.newsletter.admin.php:438 
     206# inc/class.newsletter.admin.php:439 
    206207$GLOBALS['__l10n']['Title disable link']='Titre du lien de désactivation'; 
    207208 
    208 # inc/class.newsletter.admin.php:442 
     209# inc/class.newsletter.admin.php:443 
    209210$GLOBALS['__l10n']['Subject of the mail Disable']='Sujet du mail de désactivation'; 
    210211 
    211 # inc/class.newsletter.admin.php:446 
     212# inc/class.newsletter.admin.php:447 
    212213$GLOBALS['__l10n']['Introductory enable message']='Introduction au lien d\'activation'; 
    213214 
    214 # inc/class.newsletter.admin.php:450 
     215# inc/class.newsletter.admin.php:451 
    215216$GLOBALS['__l10n']['Title enable link']='Titre du lien d\'activation'; 
    216217 
    217 # inc/class.newsletter.admin.php:454 
     218# inc/class.newsletter.admin.php:455 
    218219$GLOBALS['__l10n']['Subject of the mail Enable']='Sujet du mail d\'activation'; 
    219220 
    220 # inc/class.newsletter.admin.php:458 
     221# inc/class.newsletter.admin.php:459 
    221222$GLOBALS['__l10n']['Introductory suspend message']='Introduction au lien de suspension'; 
    222223 
    223 # inc/class.newsletter.admin.php:462 
     224# inc/class.newsletter.admin.php:463 
    224225$GLOBALS['__l10n']['Title suspend link']='Titre du lien de suspension'; 
    225226 
    226 # inc/class.newsletter.admin.php:466 
     227# inc/class.newsletter.admin.php:467 
    227228$GLOBALS['__l10n']['Subject of the mail Suspend']='Sujet du mail de suspension'; 
    228229 
    229 # inc/class.newsletter.admin.php:470 
     230# inc/class.newsletter.admin.php:471 
    230231$GLOBALS['__l10n']['Subject of the mail Resume']='Sujet du mail de résumé'; 
    231232 
    232 # inc/class.newsletter.admin.php:474 
     233# inc/class.newsletter.admin.php:475 
    233234$GLOBALS['__l10n']['Subject of the mail Changing mode']='Sujet du mail de changement de mode'; 
    234235 
    235 # inc/class.newsletter.admin.php:478 
     236# inc/class.newsletter.admin.php:479 
    236237$GLOBALS['__l10n']['Subject of the Newsletter']='Sujet de la Newsletter'; 
    237238 
    238 # inc/class.newsletter.admin.php:484 
     239# inc/class.newsletter.admin.php:483 
     240$GLOBALS['__l10n']['Title page of the subscribe form']='Titre de la page du formulaire d\'abonnement'; 
     241 
     242# inc/class.newsletter.admin.php:489 
    239243$GLOBALS['__l10n']['Introductory message']='Message d\'introduction'; 
    240244 
    241 # inc/class.newsletter.admin.php:487 
     245# inc/class.newsletter.admin.php:492 
    242246$GLOBALS['__l10n']['Concluding message']='Message de conclusion'; 
    243247 
    244 # inc/class.newsletter.admin.php:490 
     248# inc/class.newsletter.admin.php:495 
    245249$GLOBALS['__l10n']['Message presentation form']='Message de présentation du formulaire'; 
    246250 
    247 # inc/class.newsletter.admin.php:496 
     251# inc/class.newsletter.admin.php:501 
    248252$GLOBALS['__l10n']['Advanced Settings']='Paramètres avancés'; 
    249253 
    250 # inc/class.newsletter.admin.php:500 
     254# inc/class.newsletter.admin.php:505 
    251255$GLOBALS['__l10n']['Default format for sending']='Format par défaut pour l\'envoi'; 
    252256 
    253 # inc/class.newsletter.admin.php:505 
     257# inc/class.newsletter.admin.php:510 
    254258$GLOBALS['__l10n']['Use default format for sending']='Utiliser le format par défaut pour l\'envoi'; 
    255259 
    256 # inc/class.newsletter.admin.php:509 
     260# inc/class.newsletter.admin.php:514 
    257261$GLOBALS['__l10n']['Automatic send']='Envoi automatique'; 
    258262 
    259 # inc/class.newsletter.admin.php:513 
     263# inc/class.newsletter.admin.php:518 
    260264$GLOBALS['__l10n']['Notification sending']='Accusé de réception'; 
    261265 
    262 # inc/class.newsletter.admin.php:515 
     266# inc/class.newsletter.admin.php:520 
    263267$GLOBALS['__l10n']['Minimum posts']='Nombre minimum de billets'; 
    264268 
    265 # inc/class.newsletter.admin.php:518 
     269# inc/class.newsletter.admin.php:523 
    266270$GLOBALS['__l10n']['Maximum posts']='Nombre maximal de billets'; 
    267271 
    268 # inc/class.newsletter.admin.php:523 
     272# inc/class.newsletter.admin.php:528 
    269273$GLOBALS['__l10n']['View contents posts']='Affiche le contenu des billets'; 
    270274 
    271 # inc/class.newsletter.admin.php:525 
     275# inc/class.newsletter.admin.php:530 
    272276$GLOBALS['__l10n']['Size contents posts']='Taille maximale du contenu des billets'; 
    273277 
    274 # inc/class.newsletter.admin.php:533 
     278# inc/class.newsletter.admin.php:538 
    275279$GLOBALS['__l10n']['Use suspend option']='Utiliser l\'option Suspendre'; 
    276280 
    277 # inc/class.newsletter.admin.php:541 
     281# inc/class.newsletter.admin.php:546 
    278282$GLOBALS['__l10n']['Defaults']='Défauts'; 
    279283 
    280 # inc/class.newsletter.admin.php:551 
    281 # inc/class.newsletter.admin.php:683 
    282 # inc/class.newsletter.admin.php:838 
    283 # inc/class.newsletter.admin.php:963 
    284 # inc/class.newsletter.admin.php:1079 
     284# inc/class.newsletter.admin.php:556 
     285# inc/class.newsletter.admin.php:688 
     286# inc/class.newsletter.admin.php:843 
     287# inc/class.newsletter.admin.php:968 
     288# inc/class.newsletter.admin.php:1084 
    285289$GLOBALS['__l10n']['Activate the plugin in the Maintenance tab to view all options']='Activer le plugin dans l\'onglet maintenance pour afficher toutes les options'; 
    286290 
    287 # inc/class.newsletter.admin.php:591 
    288 # inc/class.newsletter.admin.php:673 
     291# inc/class.newsletter.admin.php:596 
     292# inc/class.newsletter.admin.php:678 
    289293$GLOBALS['__l10n']['Planning newsletter']='Planification de la newsletter'; 
    290294 
    291 # inc/class.newsletter.admin.php:594 
     295# inc/class.newsletter.admin.php:599 
    292296$GLOBALS['__l10n']['Interval time in seconds between 2 runs']='Intervalle de temps en secondes entre 2 exécutions'; 
    293297 
    294 # inc/class.newsletter.admin.php:598 
     298# inc/class.newsletter.admin.php:603 
    295299$GLOBALS['__l10n']['samples']='exemples'; 
    296300 
    297 # inc/class.newsletter.admin.php:598 
     301# inc/class.newsletter.admin.php:603 
    298302$GLOBALS['__l10n']['day']='jour'; 
    299303 
    300 # inc/class.newsletter.admin.php:598 
     304# inc/class.newsletter.admin.php:603 
    301305$GLOBALS['__l10n']['week']='semaine'; 
    302306 
    303 # inc/class.newsletter.admin.php:601 
     307# inc/class.newsletter.admin.php:606 
    304308$GLOBALS['__l10n']['Date for the first run']='Date de la première exécution'; 
    305309 
    306 # inc/class.newsletter.admin.php:607 
     310# inc/class.newsletter.admin.php:612 
    307311$GLOBALS['__l10n']['Unschedule']='Déplanifier'; 
    308312 
    309 # inc/class.newsletter.admin.php:607 
     313# inc/class.newsletter.admin.php:612 
    310314$GLOBALS['__l10n']['Schedule']='Planifier'; 
    311315 
    312 # inc/class.newsletter.admin.php:623 
     316# inc/class.newsletter.admin.php:628 
    313317$GLOBALS['__l10n']['Scheduled task']='Tâche planifiée'; 
    314318 
    315 # inc/class.newsletter.admin.php:633 
     319# inc/class.newsletter.admin.php:638 
    316320$GLOBALS['__l10n']['State']='Etat'; 
    317321 
    318 # inc/class.newsletter.admin.php:637 
     322# inc/class.newsletter.admin.php:642 
    319323$GLOBALS['__l10n']['Interval']='Intervalle'; 
    320324 
    321 # inc/class.newsletter.admin.php:641 
     325# inc/class.newsletter.admin.php:646 
    322326$GLOBALS['__l10n']['Last run']='Dernière exécution'; 
    323327 
    324 # inc/class.newsletter.admin.php:645 
     328# inc/class.newsletter.admin.php:650 
    325329$GLOBALS['__l10n']['Next run']='Prochaine exécution'; 
    326330 
    327 # inc/class.newsletter.admin.php:649 
     331# inc/class.newsletter.admin.php:654 
    328332$GLOBALS['__l10n']['Remaining Time']='Temps restant'; 
    329333 
    330 # inc/class.newsletter.admin.php:659 
    331 # inc/class.newsletter.admin.php:920 
     334# inc/class.newsletter.admin.php:664 
     335# inc/class.newsletter.admin.php:925 
    332336$GLOBALS['__l10n']['Disable']='Désactiver'; 
    333337 
    334 # inc/class.newsletter.admin.php:659 
    335 # inc/class.newsletter.admin.php:921 
     338# inc/class.newsletter.admin.php:664 
     339# inc/class.newsletter.admin.php:926 
    336340$GLOBALS['__l10n']['Enable']='Activer'; 
    337341 
    338 # inc/class.newsletter.admin.php:674 
     342# inc/class.newsletter.admin.php:679 
    339343$GLOBALS['__l10n']['Install the plugin dcCron for using planning']='Installez l\'extension dcCron pour utiliser la planification'; 
    340344 
    341 # inc/class.newsletter.admin.php:736 
     345# inc/class.newsletter.admin.php:741 
    342346$GLOBALS['__l10n']['Plugin state']='Etat de l\'extension'; 
    343347 
    344 # inc/class.newsletter.admin.php:739 
     348# inc/class.newsletter.admin.php:744 
    345349$GLOBALS['__l10n']['Activate plugin']='Activer l\'extension'; 
    346350 
    347 # inc/class.newsletter.admin.php:757 
     351# inc/class.newsletter.admin.php:762 
    348352$GLOBALS['__l10n']['Import/Export subscribers list']='Import/Export de la liste des abonnés'; 
    349353 
    350 # inc/class.newsletter.admin.php:760 
     354# inc/class.newsletter.admin.php:765 
    351355$GLOBALS['__l10n']['This blog only']='Ce blog seulement'; 
    352356 
    353 # inc/class.newsletter.admin.php:764 
     357# inc/class.newsletter.admin.php:769 
    354358$GLOBALS['__l10n']['All datas']='Toutes les données'; 
    355359 
    356 # inc/class.newsletter.admin.php:781 
     360# inc/class.newsletter.admin.php:786 
    357361$GLOBALS['__l10n']['Adapt the template for the theme']='Adapter le template pour le thème'; 
    358362 
    359 # inc/class.newsletter.admin.php:782 
     363# inc/class.newsletter.admin.php:787 
    360364$GLOBALS['__l10n']['Theme name']='Nom du thème'; 
    361365 
    362 # inc/class.newsletter.admin.php:786 
     366# inc/class.newsletter.admin.php:791 
    363367$GLOBALS['__l10n']['Adapt']='Adapter'; 
    364368 
    365 # inc/class.newsletter.admin.php:792 
     369# inc/class.newsletter.admin.php:797 
    366370$GLOBALS['__l10n']['Clic here to test the template.']='Cliquez ici pour tester le template.'; 
    367371 
    368 # inc/class.newsletter.admin.php:804 
     372# inc/class.newsletter.admin.php:809 
    369373$GLOBALS['__l10n']['Check for plugin update']='Vérifier les mises à jour'; 
    370374 
    371 # inc/class.newsletter.admin.php:811 
     375# inc/class.newsletter.admin.php:816 
    372376$GLOBALS['__l10n']['Check']='Vérifier'; 
    373377 
    374 # inc/class.newsletter.admin.php:821 
     378# inc/class.newsletter.admin.php:826 
    375379$GLOBALS['__l10n']['Erasing all informations about newsletter in database']='Suppression de toutes les informations concernant newsletter dans votre base de données'; 
    376380 
    377 # inc/class.newsletter.admin.php:822 
     381# inc/class.newsletter.admin.php:827 
    378382$GLOBALS['__l10n']['Be careful, please backup your database before erasing']='Attention, vous êtes priés de sauvegarder votre base de données avant de lancer la suppression'; 
    379383 
    380 # inc/class.newsletter.admin.php:825 
     384# inc/class.newsletter.admin.php:830 
    381385$GLOBALS['__l10n']['Erasing']='Suppression'; 
    382386 
    383 # inc/class.newsletter.admin.php:863 
     387# inc/class.newsletter.admin.php:868 
    384388$GLOBALS['__l10n']['No subscriber for this blog.']='Pas d\'abonnés pour ce blog.'; 
    385389 
    386 # inc/class.newsletter.admin.php:878 
     390# inc/class.newsletter.admin.php:883 
    387391$GLOBALS['__l10n']['Subscriber']='Abonné'; 
    388392 
    389 # inc/class.newsletter.admin.php:879 
     393# inc/class.newsletter.admin.php:884 
    390394$GLOBALS['__l10n']['Subscribed']='Inscription'; 
    391395 
    392 # inc/class.newsletter.admin.php:881 
    393 # inc/class.newsletter.admin.php:922 
     396# inc/class.newsletter.admin.php:886 
     397# inc/class.newsletter.admin.php:927 
    394398$GLOBALS['__l10n']['Last sent']='Dernier envoi'; 
    395399 
    396 # inc/class.newsletter.admin.php:882 
    397 # inc/class.newsletter.admin.php:1028 
     400# inc/class.newsletter.admin.php:887 
     401# inc/class.newsletter.admin.php:1033 
    398402$GLOBALS['__l10n']['Mode send']='Mode d\'envoi'; 
    399403 
    400 # inc/class.newsletter.admin.php:883 
    401 # index.php:853 
     404# inc/class.newsletter.admin.php:888 
     405# index.php:883 
    402406$GLOBALS['__l10n']['Edit']='Modifier'; 
    403407 
    404 # inc/class.newsletter.admin.php:891 
    405 # inc/class.newsletter.admin.php:891 
     408# inc/class.newsletter.admin.php:896 
     409# inc/class.newsletter.admin.php:896 
    406410$GLOBALS['__l10n']['Edit subscriber']='Modifier l\'abonné'; 
    407411 
    408 # inc/class.newsletter.admin.php:896 
    409412# inc/class.newsletter.admin.php:901 
    410 # inc/class.newsletter.admin.php:1016 
     413# inc/class.newsletter.admin.php:906 
    411414# inc/class.newsletter.admin.php:1021 
     415# inc/class.newsletter.admin.php:1026 
    412416# inc/class.newsletter.cron.php:142 
    413417$GLOBALS['__l10n']['Never']='Jamais'; 
    414418 
    415 # inc/class.newsletter.admin.php:926 
     419# inc/class.newsletter.admin.php:931 
    416420$GLOBALS['__l10n']['Confirmation']='Confirmation'; 
    417421 
    418 # inc/class.newsletter.admin.php:928 
     422# inc/class.newsletter.admin.php:933 
    419423$GLOBALS['__l10n']['Suspension']='Suspension'; 
    420424 
    421 # inc/class.newsletter.admin.php:930 
     425# inc/class.newsletter.admin.php:935 
    422426$GLOBALS['__l10n']['Deactivation']='Désactivation'; 
    423427 
    424 # inc/class.newsletter.admin.php:931 
     428# inc/class.newsletter.admin.php:936 
    425429$GLOBALS['__l10n']['Activation']='Activation'; 
    426430 
    427 # inc/class.newsletter.admin.php:932 
     431# inc/class.newsletter.admin.php:937 
    428432$GLOBALS['__l10n']['Changing format']='Changer de format'; 
    429433 
    430 # inc/class.newsletter.admin.php:943 
     434# inc/class.newsletter.admin.php:948 
    431435$GLOBALS['__l10n']['refresh']='actualiser'; 
    432436 
    433 # inc/class.newsletter.admin.php:944 
     437# inc/class.newsletter.admin.php:949 
    434438$GLOBALS['__l10n']['check all']='sélectionner tout'; 
    435439 
    436 # inc/class.newsletter.admin.php:945 
     440# inc/class.newsletter.admin.php:950 
    437441$GLOBALS['__l10n']['uncheck all']='désélectionner tout'; 
    438442 
    439 # inc/class.newsletter.admin.php:946 
     443# inc/class.newsletter.admin.php:951 
    440444$GLOBALS['__l10n']['toggle check all']='inverser la sélection'; 
    441445 
    442 # inc/class.newsletter.admin.php:950 
     446# inc/class.newsletter.admin.php:955 
    443447$GLOBALS['__l10n']['Set state']='Modifier l\'état'; 
    444448 
    445 # inc/class.newsletter.admin.php:951 
     449# inc/class.newsletter.admin.php:956 
    446450$GLOBALS['__l10n']['Set']='Modifier'; 
    447451 
    448 # inc/class.newsletter.admin.php:952 
     452# inc/class.newsletter.admin.php:957 
    449453$GLOBALS['__l10n']['Mail to send']='Courrier à envoyer'; 
    450454 
    451 # inc/class.newsletter.admin.php:955 
     455# inc/class.newsletter.admin.php:960 
    452456$GLOBALS['__l10n']['Set format']='Modifier le format'; 
    453457 
    454 # inc/class.newsletter.admin.php:956 
     458# inc/class.newsletter.admin.php:961 
    455459$GLOBALS['__l10n']['Change']='Changer'; 
    456460 
    457 # inc/class.newsletter.admin.php:1008 
     461# inc/class.newsletter.admin.php:1013 
    458462$GLOBALS['__l10n']['Edit a subscriber']='Modifier un abonné'; 
    459463 
    460 # inc/class.newsletter.admin.php:1010 
     464# inc/class.newsletter.admin.php:1015 
    461465$GLOBALS['__l10n']['Update']='Mettre à jour'; 
    462466 
    463 # inc/class.newsletter.admin.php:1024 
     467# inc/class.newsletter.admin.php:1029 
    464468$GLOBALS['__l10n']['Subscribed:']='Inscrit:'; 
    465469 
    466 # inc/class.newsletter.admin.php:1026 
     470# inc/class.newsletter.admin.php:1031 
    467471$GLOBALS['__l10n']['Last sent:']='Dernier envoi:'; 
    468472 
    469 # inc/class.newsletter.admin.php:1030 
     473# inc/class.newsletter.admin.php:1035 
    470474$GLOBALS['__l10n']['Registration code:']='Code d\'inscription:'; 
    471475 
    472 # inc/class.newsletter.admin.php:1034 
     476# inc/class.newsletter.admin.php:1039 
    473477$GLOBALS['__l10n']['enabled']='actif'; 
    474478 
    475 # inc/class.newsletter.admin.php:1035 
     479# inc/class.newsletter.admin.php:1040 
    476480$GLOBALS['__l10n']['suspended']='suspendu'; 
    477481 
    478 # inc/class.newsletter.admin.php:1036 
     482# inc/class.newsletter.admin.php:1041 
    479483$GLOBALS['__l10n']['disabled']='désactivé'; 
    480484 
    481 # inc/class.newsletter.admin.php:1046 
     485# inc/class.newsletter.admin.php:1051 
    482486$GLOBALS['__l10n']['Add a subscriber']='Ajouter un abonné'; 
    483487 
    484 # inc/class.newsletter.admin.php:1054 
     488# inc/class.newsletter.admin.php:1059 
    485489$GLOBALS['__l10n']['Not allowed.']='Interdit.'; 
    486490 
    487 # inc/class.newsletter.core.php:880 
     491# inc/class.newsletter.core.php:812 
    488492$GLOBALS['__l10n']['Your account has been suspended.']='Votre compte a été suspendu.'; 
    489493 
    490 # inc/class.newsletter.core.php:887 
     494# inc/class.newsletter.core.php:819 
    491495$GLOBALS['__l10n']['Thank you for your subscription.']='Merci pour votre inscription !'; 
    492496 
    493 # inc/class.newsletter.core.php:888 
     497# inc/class.newsletter.core.php:820 
    494498$GLOBALS['__l10n']['Your account has been canceled.']='Votre compte a été supprimé.'; 
    495499 
    496 # inc/class.newsletter.core.php:889 
     500# inc/class.newsletter.core.php:821 
    497501$GLOBALS['__l10n']['Your account has been validated.']='Votre compte a été validé.'; 
    498502 
    499 # inc/class.newsletter.core.php:890 
     503# inc/class.newsletter.core.php:822 
    500504$GLOBALS['__l10n']['Your sending format has been updated.']='Votre format d\'envoi a été mis à jour.'; 
    501505 
    502 # inc/class.newsletter.core.php:937 
    503 # inc/class.newsletter.plugin.php:590 
    504 $GLOBALS['__l10n']['Newsletter for']='Lettre d\'information pour'; 
    505  
    506 # inc/class.newsletter.core.php:954 
     506# inc/class.newsletter.core.php:823 
     507$GLOBALS['__l10n'][', by']=', par'; 
     508 
     509# inc/class.newsletter.core.php:930 
     510$GLOBALS['__l10n']['Successful mail sent for']='Courriel envoyé avec succès pour'; 
     511 
     512# inc/class.newsletter.core.php:933 
     513$GLOBALS['__l10n']['Mail sent error for']='Echec de l\'envoi du courriel pour'; 
     514 
     515# inc/class.newsletter.core.php:936 
     516$GLOBALS['__l10n']['Nothing to send for']='Rien à envoyer pour'; 
     517 
     518# inc/class.newsletter.core.php:981 
    507519$GLOBALS['__l10n']['Links:']='Liens:'; 
    508520 
    509 # inc/class.newsletter.core.php:1018 
    510 # inc/class.newsletter.core.php:1172 
    511 # inc/class.newsletter.core.php:1257 
    512 # inc/class.newsletter.core.php:1342 
    513 # inc/class.newsletter.core.php:1424 
    514 # inc/class.newsletter.core.php:1575 
    515 # inc/class.newsletter.core.php:1660 
    516 $GLOBALS['__l10n']['Successful mail sent for']='Courriel envoyé avec succès pour'; 
    517  
    518 # inc/class.newsletter.core.php:1020 
    519 # inc/class.newsletter.core.php:1174 
    520 # inc/class.newsletter.core.php:1259 
    521 # inc/class.newsletter.core.php:1344 
    522 # inc/class.newsletter.core.php:1426 
    523 # inc/class.newsletter.core.php:1577 
    524 # inc/class.newsletter.core.php:1662 
    525 $GLOBALS['__l10n']['Mail sent error for']='Echec de l\'envoi du courriel pour'; 
    526  
    527 # inc/class.newsletter.core.php:1022 
    528 $GLOBALS['__l10n']['Nothing to send for']='Rien à envoyer pour'; 
    529  
    530 # inc/class.newsletter.core.php:1127 
     521# inc/class.newsletter.core.php:1032 
    531522# inc/class.newsletter.plugin.php:610 
    532523$GLOBALS['__l10n']['Newsletter subscription confirmation for']='Confirmation d\'inscription pour'; 
    533524 
    534 # inc/class.newsletter.core.php:1127 
     525# inc/class.newsletter.core.php:1032 
    535526$GLOBALS['__l10n']['Thanks you for subscribing.']='Merci pour votre inscription.'; 
    536527 
    537 # inc/class.newsletter.core.php:1213 
     528# inc/class.newsletter.core.php:1073 
    538529# inc/class.newsletter.plugin.php:630 
    539530$GLOBALS['__l10n']['Newsletter account suspend for']='Suspension d\'abonnement à la lettre d\'information pour'; 
    540531 
    541 # inc/class.newsletter.core.php:1213 
    542 # inc/class.newsletter.core.php:1381 
    543 # inc/class.newsletter.core.php:1464 
    544 # inc/class.newsletter.core.php:1621 
     532# inc/class.newsletter.core.php:1073 
     533# inc/class.newsletter.core.php:1154 
     534# inc/class.newsletter.core.php:1194 
     535# inc/class.newsletter.core.php:1297 
    545536$GLOBALS['__l10n']['Have a nice day !']='Passez une bonne journée !'; 
    546537 
    547 # inc/class.newsletter.core.php:1296 
     538# inc/class.newsletter.core.php:1113 
    548539# inc/class.newsletter.plugin.php:650 
    549540$GLOBALS['__l10n']['Newsletter account activation for']='Activation d\'abonnement à la lettre d\'information pour'; 
    550541 
    551 # inc/class.newsletter.core.php:1296 
     542# inc/class.newsletter.core.php:1113 
    552543$GLOBALS['__l10n']['Thank you for subscribing.']='Merci pour votre inscription.'; 
    553544 
    554 # inc/class.newsletter.core.php:1381 
     545# inc/class.newsletter.core.php:1154 
    555546# inc/class.newsletter.plugin.php:670 
    556547$GLOBALS['__l10n']['Newsletter account removal for']='Suppression d\'abonnement à la lettre d\'information pour'; 
    557548 
    558 # inc/class.newsletter.core.php:1464 
     549# inc/class.newsletter.core.php:1194 
    559550# inc/class.newsletter.plugin.php:690 
    560551$GLOBALS['__l10n']['Newsletter account resume for']='Information sur l\'abonnement à la lettre d\'information pour'; 
    561552 
    562 # inc/class.newsletter.core.php:1543 
     553# inc/class.newsletter.core.php:1252 
    563554$GLOBALS['__l10n']['Your account is pending confirmation.']='Votre abonnement est en attente de confirmation.'; 
    564555 
    565 # inc/class.newsletter.core.php:1562 
     556# inc/class.newsletter.core.php:1271 
    566557$GLOBALS['__l10n']['Your sending mode is']='Votre format est'; 
    567558 
    568 # inc/class.newsletter.core.php:1621 
     559# inc/class.newsletter.core.php:1297 
    569560# inc/class.newsletter.plugin.php:710 
    570561$GLOBALS['__l10n']['Newsletter account change format for']='Changement du format sur l\'abonnement à la lettre d\'information pour'; 
    571562 
    572 # inc/class.newsletter.core.php:1681 
    573 # inc/class.newsletter.core.php:1708 
    574 # inc/class.newsletter.core.php:1737 
    575 # inc/class.newsletter.core.php:1764 
    576 # inc/class.newsletter.core.php:1791 
    577 $GLOBALS['__l10n']['Newsletter is disabled.']='Newsletter est désactivé.'; 
    578  
    579 # inc/class.newsletter.core.php:1683 
    580 # inc/class.newsletter.core.php:1711 
    581 # inc/class.newsletter.core.php:1739 
    582 # inc/class.newsletter.core.php:1766 
    583 # inc/class.newsletter.core.php:1793 
     563# inc/class.newsletter.core.php:1393 
     564# inc/class.newsletter.core.php:1418 
     565# inc/class.newsletter.core.php:1444 
     566# inc/class.newsletter.core.php:1469 
     567# inc/class.newsletter.core.php:1494 
    584568$GLOBALS['__l10n']['Bad email !']='Mauvais email ou format incorrect !'; 
    585569 
    586 # inc/class.newsletter.core.php:1688 
     570# inc/class.newsletter.core.php:1396 
    587571$GLOBALS['__l10n']['Email already exist !']='Email déja existant !'; 
    588572 
    589 # inc/class.newsletter.core.php:1690 
     573# inc/class.newsletter.core.php:1398 
    590574$GLOBALS['__l10n']['Error creating account !']='Erreur lors de la création du compte !'; 
    591575 
     
    617601$GLOBALS['__l10n']['To suspend your account']='Pour suspendre votre abonnement'; 
    618602 
    619 # inc/class.newsletter.plugin.php:1433 
     603# inc/class.newsletter.plugin.php:590 
     604$GLOBALS['__l10n']['Newsletter for']='Lettre d\'information pour'; 
     605 
     606# inc/class.newsletter.plugin.php:1459 
    620607$GLOBALS['__l10n']['No new version available.']='Pas de nouvelle version.'; 
    621608 
    622 # inc/class.newsletter.plugin.php:1435 
     609# inc/class.newsletter.plugin.php:1461 
    623610$GLOBALS['__l10n']['New version available:']='Nouvelle version disponible:'; 
    624611 
    625 # inc/class.newsletter.plugin.php:1441 
     612# inc/class.newsletter.plugin.php:1467 
    626613$GLOBALS['__l10n']['Read the post.']='Lire le billet.'; 
    627614 
    628 # inc/class.newsletter.plugin.php:1441 
     615# inc/class.newsletter.plugin.php:1467 
    629616$GLOBALS['__l10n']['post']='billet'; 
    630617 
    631 # inc/class.newsletter.plugin.php:1443 
     618# inc/class.newsletter.plugin.php:1469 
    632619$GLOBALS['__l10n']['Installer.']='Installeur.'; 
    633620 
    634 # inc/class.newsletter.plugin.php:1443 
     621# inc/class.newsletter.plugin.php:1469 
    635622$GLOBALS['__l10n']['pkg.gz']='pkg.gz'; 
    636623 
    637 # inc/class.newsletter.plugin.php:1445 
     624# inc/class.newsletter.plugin.php:1471 
    638625$GLOBALS['__l10n']['Archive.']='Archive.'; 
    639626 
    640 # inc/class.newsletter.plugin.php:1445 
     627# inc/class.newsletter.plugin.php:1471 
    641628$GLOBALS['__l10n']['tar.gz']='tar.gz'; 
    642629 
    643 # index.php:69 
    644 # index.php:286 
    645 # index.php:299 
     630# index.php:72 
     631# index.php:295 
     632# index.php:308 
    646633$GLOBALS['__l10n']['Settings updated.']='Paramètres mis à jour.'; 
    647634 
    648 # index.php:84 
    649 # index.php:85 
     635# index.php:87 
     636# index.php:88 
    650637$GLOBALS['__l10n']['You must input a valid email !']='Vous devez saisir un email valide !'; 
    651638 
    652 # index.php:318 
    653 # index.php:357 
    654 # index.php:382 
    655 # index.php:408 
     639# index.php:327 
     640# index.php:366 
     641# index.php:391 
     642# index.php:417 
    656643$GLOBALS['__l10n']['Planning updated.']='Planning mis à jour.'; 
    657644 
    658 # index.php:326 
     645# index.php:335 
    659646$GLOBALS['__l10n']['Error during create planning task.']='Erreur pendant la création de la tâche planifiée.'; 
    660647 
    661 # index.php:444 
    662 # index.php:495 
     648# index.php:453 
     649# index.php:504 
    663650$GLOBALS['__l10n']['Missing informations.']='Informations manquantes.'; 
    664651 
    665 # index.php:447 
     652# index.php:456 
    666653$GLOBALS['__l10n']['Error adding subscriber.']='Erreur lors de l\'ajout d\'un abonné.'; 
    667654 
    668 # index.php:449 
     655# index.php:458 
    669656$GLOBALS['__l10n']['Subscriber added.']='Abonné ajouté.'; 
    670657 
    671 # index.php:502 
     658# index.php:511 
    672659$GLOBALS['__l10n']['Error updating subscriber.']='Erreur lors de la mise à jour d\'un abonné.'; 
    673660 
    674 # index.php:504 
     661# index.php:513 
    675662$GLOBALS['__l10n']['Subscriber updated.']='Abonné mis à jour.'; 
    676663 
    677 # index.php:518 
     664# index.php:527 
    678665$GLOBALS['__l10n']['No account removed.']='Pas de compte supprimé.'; 
    679666 
    680 # index.php:526 
     667# index.php:535 
    681668$GLOBALS['__l10n']['Account(s) successfully removed.']='Compte(s) supprimé(s) avec succès.'; 
    682669 
    683 # index.php:540 
     670# index.php:549 
    684671$GLOBALS['__l10n']['No account suspended.']='Pas de compte suspendu.'; 
    685672 
    686 # index.php:548 
     673# index.php:557 
    687674$GLOBALS['__l10n']['Account(s) successfully suspended.']='Compte(s) suspendu(s) avec succès.'; 
    688675 
    689 # index.php:562 
     676# index.php:571 
    690677$GLOBALS['__l10n']['No account enabled.']='Pas de compte activé.'; 
    691678 
    692 # index.php:570 
     679# index.php:579 
    693680$GLOBALS['__l10n']['Account(s) successfully enabled.']='Compte(s) activé(s) avec succés.'; 
    694681 
    695 # index.php:584 
     682# index.php:593 
    696683$GLOBALS['__l10n']['No account disabled.']='Pas de compte désactivé.'; 
    697684 
    698 # index.php:592 
     685# index.php:601 
    699686$GLOBALS['__l10n']['Account(s) successfully disabled.']='Compte(s) désactivé(s) avec succès.'; 
    700687 
    701 # index.php:625 
     688# index.php:640 
    702689$GLOBALS['__l10n']['No account changed.']='Pas de compte modifié.'; 
    703690 
    704 # index.php:630 
     691# index.php:646 
    705692$GLOBALS['__l10n']['Account(s) successfully changed.']='Compte(s) modifié(s) avec succès.'; 
    706693 
    707 # index.php:649 
     694# index.php:667 
    708695$GLOBALS['__l10n']['Datas exported.']='Données exportées.'; 
    709696 
    710 # index.php:669 
     697# index.php:687 
    711698$GLOBALS['__l10n']['Datas imported.']='Données importées.'; 
    712699 
    713 # index.php:742 
    714 # index.php:764 
     700# index.php:772 
     701# index.php:794 
    715702$GLOBALS['__l10n']['No account(s) updated.']='Pas de compte(s) mis à jour.'; 
    716703 
    717 # index.php:750 
     704# index.php:780 
    718705$GLOBALS['__l10n']['Format sending for account(s) successfully updated to html.']='Format d\'envoi pour le(s) abonné(s) mis à jour au format html.'; 
    719706 
    720 # index.php:772 
     707# index.php:802 
    721708$GLOBALS['__l10n']['Format sending for account(s) successfully updated to text.']='Format d\'envoi pour le(s) abonné(s) mis à jour au format text.'; 
    722709 
    723 # index.php:786 
     710# index.php:816 
    724711$GLOBALS['__l10n']['No template adapted.']='Pas de template adapté.'; 
    725712 
    726 # index.php:788 
     713# index.php:819 
    727714$GLOBALS['__l10n']['Template successfully adapted.']='Template adapté avec succès.'; 
    728715 
    729 # index.php:803 
     716# index.php:833 
    730717$GLOBALS['__l10n']['Erasing complete.']='Nettoyage terminé.'; 
    731718 
    732 # index.php:839 
     719# index.php:869 
    733720$GLOBALS['__l10n']['Are you sure you want to delete all informations about newsletter in database ?']='Etes-vous sûr de vouloir supprimer toutes les informations de newsletter dans la base de données ?'; 
    734721 
    735 # index.php:850 
     722# index.php:880 
    736723$GLOBALS['__l10n']['Subscribers']='Abonnés'; 
    737724 
    738 # index.php:859 
     725# index.php:889 
    739726$GLOBALS['__l10n']['Planning']='Planification'; 
    740727 
     728$GLOBALS['__l10n']['Newsletter is disabled.']='Newsletter est désactivé.'; 
     729 
    741730$GLOBALS['__l10n']['Presentation message']='Message de présentation'; 
    742731 
  • plugins/newsletter/trunk/locales/fr/main.po

    r927 r1038  
    66 
    77#: _install.php:40 
    8 #: index.php:45 
     8#: index.php:48 
    99msgid "Unable to install Newsletter." 
    1010msgstr "Impossible d'installer Newsletter" 
    1111 
    12 #: _public.php:71 
     12#: _public.php:75 
    1313msgid "Test display template." 
    1414msgstr "Test d'affichage du template." 
    1515 
    16 #: _public.php:75 
     16#: _public.php:79 
    1717msgid "About Newsletter ..." 
    1818msgstr "A propos de Newsletter ..." 
    1919 
    20 #: _public.php:76 
     20#: _public.php:80 
    2121msgid "About" 
    2222msgstr "A propos" 
    2323 
    24 #: _public.php:78 
     24#: _public.php:82 
    2525msgid "Authors" 
    2626msgstr "Auteurs" 
    2727 
    28 #: _public.php:84 
    29 #: _public.php:100 
    30 #: _public.php:116 
    31 #: _public.php:132 
    32 #: _public.php:148 
    33 msgid "Missing informations. " 
    34 msgstr "Informations manquantes." 
    35  
    3628#: _public.php:88 
    37 msgid "Your subscription code is invalid." 
    38 msgstr "Votre code d'inscription est invalide." 
    39  
    40 #: _public.php:90 
    41 msgid "Account already confirmed." 
    42 msgstr "Abonnement déja confirmé." 
    43  
    44 #: _public.php:93 
    45 msgid "Your subscription is confirmed." 
    46 msgstr "Votre inscription est confirmée." 
    47  
    48 #: _public.php:93 
    49 #: _public.php:109 
    50 #: _public.php:125 
    51 #: _public.php:141 
    52 #: _public.php:155 
    53 msgid "You will soon receive an email." 
    54 msgstr "Vous allez bientôt recevoir un email." 
    55  
    5629#: _public.php:104 
    5730#: _public.php:120 
    5831#: _public.php:136 
    5932#: _public.php:152 
     33msgid "Missing informations. " 
     34msgstr "Informations manquantes." 
     35 
     36#: _public.php:92 
     37msgid "Your subscription code is invalid." 
     38msgstr "Votre code d'inscription est invalide." 
     39 
     40#: _public.php:94 
     41msgid "Account already confirmed." 
     42msgstr "Abonnement déja confirmé." 
     43 
     44#: _public.php:97 
     45msgid "Your subscription is confirmed." 
     46msgstr "Votre inscription est confirmée." 
     47 
     48#: _public.php:97 
     49#: _public.php:113 
     50#: _public.php:129 
     51#: _public.php:145 
     52#: _public.php:159 
     53msgid "You will soon receive an email." 
     54msgstr "Vous allez bientôt recevoir un email." 
     55 
     56#: _public.php:108 
     57#: _public.php:124 
     58#: _public.php:140 
     59#: _public.php:156 
    6060msgid "Unable to find you account informations." 
    6161msgstr "Impossible de trouver les informations de votre compte." 
    6262 
    63 #: _public.php:106 
     63#: _public.php:110 
    6464msgid "Account already enabled." 
    6565msgstr "Abonnement déja activé." 
    6666 
    67 #: _public.php:109 
    68 #: inc/class.newsletter.core.php:1536 
     67#: _public.php:113 
     68#: inc/class.newsletter.core.php:1245 
    6969msgid "Your account is enabled." 
    7070msgstr "Votre abonnement est activé." 
    7171 
    72 #: _public.php:122 
     72#: _public.php:126 
    7373msgid "Account already disabled." 
    7474msgstr "Abonnement déja désactivé." 
    7575 
    76 #: _public.php:125 
    77 #: inc/class.newsletter.core.php:1529 
     76#: _public.php:129 
     77#: inc/class.newsletter.core.php:1238 
    7878msgid "Your account is disabled." 
    7979msgstr "Votre abonnement est désactivé." 
    8080 
    81 #: _public.php:138 
     81#: _public.php:142 
    8282msgid "Account already suspended." 
    8383msgstr "Abonnement déja suspendu." 
    8484 
    85 #: _public.php:141 
    86 #: inc/class.newsletter.core.php:1522 
     85#: _public.php:145 
     86#: inc/class.newsletter.core.php:1231 
    8787msgid "Your account is suspended." 
    8888msgstr "Votre abonnement est suspendu." 
    8989 
    90 #: _public.php:155 
     90#: _public.php:159 
    9191msgid "Your sending format is" 
    9292msgstr "Votre format d'envoi est" 
    9393 
    94 #: _public.php:178 
     94#: _public.php:182 
    9595msgid "Bad captcha code." 
    9696msgstr "Mauvais code de vérification." 
    9797 
    98 #: _public.php:201 
     98#: _public.php:205 
    9999msgid "Error in formular." 
    100100msgstr "Erreur dans le formulaire." 
    101101 
    102 #: _public.php:219 
    103 #: _public.php:436 
     102#: _public.php:223 
     103#: _public.php:440 
    104104#: _widgets.php:25 
    105105#: _widgets.php:27 
    106 #: inc/class.newsletter.admin.php:925 
    107 #: index.php:23 
     106#: inc/class.newsletter.admin.php:930 
     107#: inc/class.newsletter.plugin.php:776 
     108#: index.php:26 
    108109msgid "Newsletter" 
    109110msgstr "Lettre d'informations" 
    110111 
    111 #: _public.php:272 
    112 #: _public.php:494 
    113 #: _public.php:495 
    114 #: inc/class.newsletter.admin.php:499 
     112#: _public.php:276 
     113#: _public.php:498 
     114#: _public.php:499 
     115#: inc/class.newsletter.admin.php:504 
    115116msgid "Captcha" 
    116117msgstr "Code visuel" 
    117118 
    118 #: _public.php:298 
     119#: _public.php:302 
     120#: _public.php:387 
     121#: _public.php:472 
     122#: _public.php:477 
     123#: inc/class.newsletter.admin.php:923 
     124msgid "Suspend" 
     125msgstr "Suspendre" 
     126 
     127#: _public.php:306 
     128#: _public.php:390 
     129#: _public.php:478 
     130msgid "Resume" 
     131msgstr "Résumé" 
     132 
     133#: _public.php:325 
     134#: _public.php:368 
     135#: _public.php:461 
     136#: inc/class.newsletter.admin.php:341 
     137#: inc/class.newsletter.admin.php:942 
     138#: inc/class.newsletter.admin.php:994 
     139msgid "text" 
     140msgstr "texte" 
     141 
     142#: _public.php:332 
    119143#: _public.php:383 
    120144#: _public.php:468 
    121 #: _public.php:473 
    122 #: inc/class.newsletter.admin.php:918 
    123 msgid "Suspend" 
    124 msgstr "Suspendre" 
    125  
    126 #: _public.php:302 
    127 #: _public.php:386 
    128 #: _public.php:474 
    129 msgid "Resume" 
    130 msgstr "Résumé" 
    131  
    132 #: _public.php:321 
    133 #: _public.php:364 
    134 #: _public.php:457 
    135 #: inc/class.newsletter.admin.php:341 
    136 #: inc/class.newsletter.admin.php:937 
    137 #: inc/class.newsletter.admin.php:989 
    138 msgid "text" 
    139 msgstr "texte" 
    140  
    141 #: _public.php:328 
    142 #: _public.php:379 
    143 #: _public.php:464 
    144145msgid "Change format" 
    145146msgstr "Changer le format" 
    146147 
    147 #: _public.php:361 
    148 #: _public.php:454 
     148#: _public.php:365 
     149#: _public.php:458 
    149150msgid "Format" 
    150151msgstr "Format" 
    151152 
    152 #: _public.php:363 
    153 #: _public.php:456 
     153#: _public.php:367 
     154#: _public.php:460 
    154155#: inc/class.newsletter.admin.php:342 
    155 #: inc/class.newsletter.admin.php:936 
    156 #: inc/class.newsletter.admin.php:990 
     156#: inc/class.newsletter.admin.php:941 
     157#: inc/class.newsletter.admin.php:995 
    157158msgid "html" 
    158159msgstr "html" 
    159160 
    160 #: _public.php:388 
    161 #: _public.php:476 
    162 #: _public.php:481 
     161#: _public.php:392 
     162#: _public.php:480 
     163#: _public.php:485 
    163164msgid "Unsubscribe" 
    164165msgstr "Se désabonner" 
    165166 
    166 #: _public.php:439 
     167#: _public.php:443 
    167168#: _widgets.php:32 
    168169msgid "Subscription link" 
    169170msgstr "S'abonner" 
    170171 
    171 #: _public.php:451 
     172#: _public.php:455 
    172173msgid "Email" 
    173174msgstr "Courriel" 
    174175 
    175 #: _public.php:459 
    176 #: _public.php:479 
     176#: _public.php:463 
     177#: _public.php:483 
    177178msgid "Actions" 
    178179msgstr "Actions" 
     
    219220msgstr "Impossible d'écrire le fichier." 
    220221 
    221 #: inc/class.newsletter.admin.php:394 
    222 #: index.php:856 
     222#: inc/class.newsletter.admin.php:395 
     223#: index.php:886 
    223224msgid "Settings" 
    224225msgstr "Paramètres" 
    225226 
    226 #: inc/class.newsletter.admin.php:406 
     227#: inc/class.newsletter.admin.php:407 
    227228msgid "Editor name" 
    228229msgstr "Nom de l'éditeur" 
    229230 
    230 #: inc/class.newsletter.admin.php:410 
     231#: inc/class.newsletter.admin.php:411 
    231232msgid "Editor email" 
    232233msgstr "Email de l'éditeur" 
    233234 
    234 #: inc/class.newsletter.admin.php:414 
     235#: inc/class.newsletter.admin.php:415 
    235236msgid "Message presentation" 
    236237msgstr "Message de présentation" 
    237238 
    238 #: inc/class.newsletter.admin.php:418 
     239#: inc/class.newsletter.admin.php:419 
    239240msgid "Presentation message for posts" 
    240241msgstr "Message de présentation pour les billets" 
    241242 
    242 #: inc/class.newsletter.admin.php:422 
     243#: inc/class.newsletter.admin.php:423 
    243244msgid "Introductory confirm message" 
    244245msgstr "Introduction au lien de confirmation" 
    245246 
    246 #: inc/class.newsletter.admin.php:426 
     247#: inc/class.newsletter.admin.php:427 
    247248msgid "Title confirmation link" 
    248249msgstr "Titre du lien de confirmation" 
    249250 
    250 #: inc/class.newsletter.admin.php:430 
     251#: inc/class.newsletter.admin.php:431 
    251252msgid "Subject of the mail Confirm" 
    252253msgstr "Sujet du mail de confirmation" 
    253254 
    254 #: inc/class.newsletter.admin.php:434 
     255#: inc/class.newsletter.admin.php:435 
    255256msgid "Introductory disable message" 
    256257msgstr "Introduction au lien de désactivation" 
    257258 
    258 #: inc/class.newsletter.admin.php:438 
     259#: inc/class.newsletter.admin.php:439 
    259260msgid "Title disable link" 
    260261msgstr "Titre du lien de désactivation" 
    261262 
    262 #: inc/class.newsletter.admin.php:442 
     263#: inc/class.newsletter.admin.php:443 
    263264msgid "Subject of the mail Disable" 
    264265msgstr "Sujet du mail de désactivation" 
    265266 
    266 #: inc/class.newsletter.admin.php:446 
     267#: inc/class.newsletter.admin.php:447 
    267268msgid "Introductory enable message" 
    268269msgstr "Introduction au lien d'activation" 
    269270 
    270 #: inc/class.newsletter.admin.php:450 
     271#: inc/class.newsletter.admin.php:451 
    271272msgid "Title enable link" 
    272273msgstr "Titre du lien d'activation" 
    273274 
    274 #: inc/class.newsletter.admin.php:454 
     275#: inc/class.newsletter.admin.php:455 
    275276msgid "Subject of the mail Enable" 
    276277msgstr "Sujet du mail d'activation" 
    277278 
    278 #: inc/class.newsletter.admin.php:458 
     279#: inc/class.newsletter.admin.php:459 
    279280msgid "Introductory suspend message" 
    280281msgstr "Introduction au lien de suspension" 
    281282 
    282 #: inc/class.newsletter.admin.php:462 
     283#: inc/class.newsletter.admin.php:463 
    283284msgid "Title suspend link" 
    284285msgstr "Titre du lien de suspension" 
    285286 
    286 #: inc/class.newsletter.admin.php:466 
     287#: inc/class.newsletter.admin.php:467 
    287288msgid "Subject of the mail Suspend" 
    288289msgstr "Sujet du mail de suspension" 
    289290 
    290 #: inc/class.newsletter.admin.php:470 
     291#: inc/class.newsletter.admin.php:471 
    291292msgid "Subject of the mail Resume" 
    292293msgstr "Sujet du mail de résumé" 
    293294 
    294 #: inc/class.newsletter.admin.php:474 
     295#: inc/class.newsletter.admin.php:475 
    295296msgid "Subject of the mail Changing mode" 
    296297msgstr "Sujet du mail de changement de mode" 
    297298 
    298 #: inc/class.newsletter.admin.php:478 
     299#: inc/class.newsletter.admin.php:479 
    299300msgid "Subject of the Newsletter" 
    300301msgstr "Sujet de la Newsletter" 
    301302 
    302 #: inc/class.newsletter.admin.php:484 
     303#: inc/class.newsletter.admin.php:483 
     304msgid "Title page of the subscribe form" 
     305msgstr "Titre de la page du formulaire d'abonnement" 
     306 
     307#: inc/class.newsletter.admin.php:489 
    303308msgid "Introductory message" 
    304309msgstr "Message d'introduction" 
    305310 
    306 #: inc/class.newsletter.admin.php:487 
     311#: inc/class.newsletter.admin.php:492 
    307312msgid "Concluding message" 
    308313msgstr "Message de conclusion" 
    309314 
    310 #: inc/class.newsletter.admin.php:490 
     315#: inc/class.newsletter.admin.php:495 
    311316msgid "Message presentation form" 
    312317msgstr "Message de présentation du formulaire" 
    313318 
    314 #: inc/class.newsletter.admin.php:496 
     319#: inc/class.newsletter.admin.php:501 
    315320msgid "Advanced Settings" 
    316321msgstr "Paramètres avancés" 
    317322 
    318 #: inc/class.newsletter.admin.php:500 
     323#: inc/class.newsletter.admin.php:505 
    319324msgid "Default format for sending" 
    320325msgstr "Format par défaut pour l'envoi" 
    321326 
    322 #: inc/class.newsletter.admin.php:505 
     327#: inc/class.newsletter.admin.php:510 
    323328msgid "Use default format for sending" 
    324329msgstr "Utiliser le format par défaut pour l'envoi" 
    325330 
    326 #: inc/class.newsletter.admin.php:509 
     331#: inc/class.newsletter.admin.php:514 
    327332msgid "Automatic send" 
    328333msgstr "Envoi automatique" 
    329334 
    330 #: inc/class.newsletter.admin.php:513 
     335#: inc/class.newsletter.admin.php:518 
    331336msgid "Notification sending" 
    332337msgstr "Accusé de réception" 
    333338 
    334 #: inc/class.newsletter.admin.php:515 
     339#: inc/class.newsletter.admin.php:520 
    335340msgid "Minimum posts" 
    336341msgstr "Nombre minimum de billets" 
    337342 
    338 #: inc/class.newsletter.admin.php:518 
     343#: inc/class.newsletter.admin.php:523 
    339344msgid "Maximum posts" 
    340345msgstr "Nombre maximal de billets" 
    341346 
    342 #: inc/class.newsletter.admin.php:523 
     347#: inc/class.newsletter.admin.php:528 
    343348msgid "View contents posts" 
    344349msgstr "Affiche le contenu des billets" 
    345350 
    346 #: inc/class.newsletter.admin.php:525 
     351#: inc/class.newsletter.admin.php:530 
    347352msgid "Size contents posts" 
    348353msgstr "Taille maximale du contenu des billets" 
    349354 
    350 #: inc/class.newsletter.admin.php:533 
     355#: inc/class.newsletter.admin.php:538 
    351356msgid "Use suspend option" 
    352357msgstr "Utiliser l'option Suspendre" 
    353358 
    354 #: inc/class.newsletter.admin.php:541 
     359#: inc/class.newsletter.admin.php:546 
    355360msgid "Defaults" 
    356361msgstr "Défauts" 
    357362 
    358 #: inc/class.newsletter.admin.php:551 
    359 #: inc/class.newsletter.admin.php:683 
    360 #: inc/class.newsletter.admin.php:838 
    361 #: inc/class.newsletter.admin.php:963 
    362 #: inc/class.newsletter.admin.php:1079 
     363#: inc/class.newsletter.admin.php:556 
     364#: inc/class.newsletter.admin.php:688 
     365#: inc/class.newsletter.admin.php:843 
     366#: inc/class.newsletter.admin.php:968 
     367#: inc/class.newsletter.admin.php:1084 
    363368msgid "Activate the plugin in the Maintenance tab to view all options" 
    364369msgstr "Activer le plugin dans l'onglet maintenance pour afficher toutes les options" 
    365370 
    366 #: inc/class.newsletter.admin.php:591 
    367 #: inc/class.newsletter.admin.php:673 
     371#: inc/class.newsletter.admin.php:596 
     372#: inc/class.newsletter.admin.php:678 
    368373msgid "Planning newsletter" 
    369374msgstr "Planification de la newsletter" 
    370375 
    371 #: inc/class.newsletter.admin.php:594 
     376#: inc/class.newsletter.admin.php:599 
    372377msgid "Interval time in seconds between 2 runs" 
    373378msgstr "Intervalle de temps en secondes entre 2 exécutions" 
    374379 
    375 #: inc/class.newsletter.admin.php:598 
     380#: inc/class.newsletter.admin.php:603 
    376381msgid "samples" 
    377382msgstr "exemples" 
    378383 
    379 #: inc/class.newsletter.admin.php:598 
     384#: inc/class.newsletter.admin.php:603 
    380385msgid "day" 
    381386msgstr "jour" 
    382387 
    383 #: inc/class.newsletter.admin.php:598 
     388#: inc/class.newsletter.admin.php:603 
    384389msgid "week" 
    385390msgstr "semaine" 
    386391 
    387 #: inc/class.newsletter.admin.php:601 
     392#: inc/class.newsletter.admin.php:606 
    388393msgid "Date for the first run" 
    389394msgstr "Date de la première exécution" 
    390395 
    391 #: inc/class.newsletter.admin.php:607 
     396#: inc/class.newsletter.admin.php:612 
    392397msgid "Unschedule" 
    393398msgstr "Déplanifier" 
    394399 
    395 #: inc/class.newsletter.admin.php:607 
     400#: inc/class.newsletter.admin.php:612 
    396401msgid "Schedule" 
    397402msgstr "Planifier" 
    398403 
    399 #: inc/class.newsletter.admin.php:623 
     404#: inc/class.newsletter.admin.php:628 
    400405msgid "Scheduled task" 
    401406msgstr "Tâche planifiée" 
    402407 
    403 #: inc/class.newsletter.admin.php:633 
     408#: inc/class.newsletter.admin.php:638 
    404409msgid "State" 
    405410msgstr "Etat" 
    406411 
    407 #: inc/class.newsletter.admin.php:637 
     412#: inc/class.newsletter.admin.php:642 
    408413msgid "Interval" 
    409414msgstr "Intervalle" 
    410415 
    411 #: inc/class.newsletter.admin.php:641 
     416#: inc/class.newsletter.admin.php:646 
    412417msgid "Last run" 
    413418msgstr "Dernière exécution" 
    414419 
    415 #: inc/class.newsletter.admin.php:645 
     420#: inc/class.newsletter.admin.php:650 
    416421msgid "Next run" 
    417422msgstr "Prochaine exécution" 
    418423 
    419 #: inc/class.newsletter.admin.php:649 
     424#: inc/class.newsletter.admin.php:654 
    420425msgid "Remaining Time" 
    421426msgstr "Temps restant" 
    422427 
    423 #: inc/class.newsletter.admin.php:659 
    424 #: inc/class.newsletter.admin.php:920 
     428#: inc/class.newsletter.admin.php:664 
     429#: inc/class.newsletter.admin.php:925 
    425430msgid "Disable" 
    426431msgstr "Désactiver" 
    427432 
    428 #: inc/class.newsletter.admin.php:659 
    429 #: inc/class.newsletter.admin.php:921 
     433#: inc/class.newsletter.admin.php:664 
     434#: inc/class.newsletter.admin.php:926 
    430435msgid "Enable" 
    431436msgstr "Activer" 
    432437 
    433 #: inc/class.newsletter.admin.php:674 
     438#: inc/class.newsletter.admin.php:679 
    434439msgid "Install the plugin dcCron for using planning" 
    435440msgstr "Installez l'extension dcCron pour utiliser la planification" 
    436441 
    437 #: inc/class.newsletter.admin.php:736 
     442#: inc/class.newsletter.admin.php:741 
    438443msgid "Plugin state" 
    439444msgstr "Etat de l'extension" 
    440445 
    441 #: inc/class.newsletter.admin.php:739 
     446#: inc/class.newsletter.admin.php:744 
    442447msgid "Activate plugin" 
    443448msgstr "Activer l'extension" 
    444449 
    445 #: inc/class.newsletter.admin.php:757 
     450#: inc/class.newsletter.admin.php:762 
    446451msgid "Import/Export subscribers list" 
    447452msgstr "Import/Export de la liste des abonnés" 
    448453 
    449 #: inc/class.newsletter.admin.php:760 
     454#: inc/class.newsletter.admin.php:765 
    450455msgid "This blog only" 
    451456msgstr "Ce blog seulement" 
    452457 
    453 #: inc/class.newsletter.admin.php:764 
     458#: inc/class.newsletter.admin.php:769 
    454459msgid "All datas" 
    455460msgstr "Toutes les données" 
    456461 
    457 #: inc/class.newsletter.admin.php:781 
     462#: inc/class.newsletter.admin.php:786 
    458463msgid "Adapt the template for the theme" 
    459464msgstr "Adapter le template pour le thème" 
    460465 
    461 #: inc/class.newsletter.admin.php:782 
     466#: inc/class.newsletter.admin.php:787 
    462467msgid "Theme name" 
    463468msgstr "Nom du thème" 
    464469 
    465 #: inc/class.newsletter.admin.php:786 
     470#: inc/class.newsletter.admin.php:791 
    466471msgid "Adapt" 
    467472msgstr "Adapter" 
    468473 
    469 #: inc/class.newsletter.admin.php:792 
     474#: inc/class.newsletter.admin.php:797 
    470475msgid "Clic here to test the template." 
    471476msgstr "Cliquez ici pour tester le template." 
    472477 
    473 #: inc/class.newsletter.admin.php:804 
     478#: inc/class.newsletter.admin.php:809 
    474479msgid "Check for plugin update" 
    475480msgstr "Vérifier les mises à jour" 
    476481 
    477 #: inc/class.newsletter.admin.php:811 
     482#: inc/class.newsletter.admin.php:816 
    478483msgid "Check" 
    479484msgstr "Vérifier" 
    480485 
    481 #: inc/class.newsletter.admin.php:821 
     486#: inc/class.newsletter.admin.php:826 
    482487msgid "Erasing all informations about newsletter in database" 
    483488msgstr "Suppression de toutes les informations concernant newsletter dans votre base de données" 
    484489 
    485 #: inc/class.newsletter.admin.php:822 
     490#: inc/class.newsletter.admin.php:827 
    486491msgid "Be careful, please backup your database before erasing" 
    487492msgstr "Attention, vous êtes priés de sauvegarder votre base de données avant de lancer la suppression" 
    488493 
    489 #: inc/class.newsletter.admin.php:825 
     494#: inc/class.newsletter.admin.php:830 
    490495msgid "Erasing" 
    491496msgstr "Suppression" 
    492497 
    493 #: inc/class.newsletter.admin.php:863 
     498#: inc/class.newsletter.admin.php:868 
    494499msgid "No subscriber for this blog." 
    495500msgstr "Pas d'abonnés pour ce blog." 
    496501 
    497 #: inc/class.newsletter.admin.php:878 
     502#: inc/class.newsletter.admin.php:883 
    498503msgid "Subscriber" 
    499504msgstr "Abonné" 
    500505 
    501 #: inc/class.newsletter.admin.php:879 
     506#: inc/class.newsletter.admin.php:884 
    502507msgid "Subscribed" 
    503508msgstr "Inscription" 
    504509 
    505 #: inc/class.newsletter.admin.php:881 
    506 #: inc/class.newsletter.admin.php:922 
     510#: inc/class.newsletter.admin.php:886 
     511#: inc/class.newsletter.admin.php:927 
    507512msgid "Last sent" 
    508513msgstr "Dernier envoi" 
    509514 
    510 #: inc/class.newsletter.admin.php:882 
    511 #: inc/class.newsletter.admin.php:1028 
     515#: inc/class.newsletter.admin.php:887 
     516#: inc/class.newsletter.admin.php:1033 
    512517msgid "Mode send" 
    513518msgstr "Mode d'envoi" 
    514519 
    515 #: inc/class.newsletter.admin.php:883 
    516 #: index.php:853 
     520#: inc/class.newsletter.admin.php:888 
     521#: index.php:883 
    517522msgid "Edit" 
    518523msgstr "Modifier" 
    519524 
    520 #: inc/class.newsletter.admin.php:891 
    521 #: inc/class.newsletter.admin.php:891 
     525#: inc/class.newsletter.admin.php:896 
     526#: inc/class.newsletter.admin.php:896 
    522527msgid "Edit subscriber" 
    523528msgstr "Modifier l'abonné" 
    524529 
    525 #: inc/class.newsletter.admin.php:896 
    526530#: inc/class.newsletter.admin.php:901 
    527 #: inc/class.newsletter.admin.php:1016 
     531#: inc/class.newsletter.admin.php:906 
    528532#: inc/class.newsletter.admin.php:1021 
     533#: inc/class.newsletter.admin.php:1026 
    529534#: inc/class.newsletter.cron.php:142 
    530535msgid "Never" 
    531536msgstr "Jamais" 
    532537 
    533 #: inc/class.newsletter.admin.php:926 
     538#: inc/class.newsletter.admin.php:931 
    534539msgid "Confirmation" 
    535540msgstr "Confirmation" 
    536541 
    537 #: inc/class.newsletter.admin.php:928 
     542#: inc/class.newsletter.admin.php:933 
    538543msgid "Suspension" 
    539544msgstr "Suspension" 
    540545 
    541 #: inc/class.newsletter.admin.php:930 
     546#: inc/class.newsletter.admin.php:935 
    542547msgid "Deactivation" 
    543548msgstr "Désactivation" 
    544549 
    545 #: inc/class.newsletter.admin.php:931 
     550#: inc/class.newsletter.admin.php:936 
    546551msgid "Activation" 
    547552msgstr "Activation" 
    548553 
    549 #: inc/class.newsletter.admin.php:932 
     554#: inc/class.newsletter.admin.php:937 
    550555msgid "Changing format" 
    551556msgstr "Changer de format" 
    552557 
    553 #: inc/class.newsletter.admin.php:943 
     558#: inc/class.newsletter.admin.php:948 
    554559msgid "refresh" 
    555560msgstr "actualiser" 
    556561 
    557 #: inc/class.newsletter.admin.php:944 
     562#: inc/class.newsletter.admin.php:949 
    558563msgid "check all" 
    559564msgstr "sélectionner tout" 
    560565 
    561 #: inc/class.newsletter.admin.php:945 
     566#: inc/class.newsletter.admin.php:950 
    562567msgid "uncheck all" 
    563568msgstr "désélectionner tout" 
    564569 
    565 #: inc/class.newsletter.admin.php:946 
     570#: inc/class.newsletter.admin.php:951 
    566571msgid "toggle check all" 
    567572msgstr "inverser la sélection" 
    568573 
    569 #: inc/class.newsletter.admin.php:950 
     574#: inc/class.newsletter.admin.php:955 
    570575msgid "Set state" 
    571576msgstr "Modifier l'état" 
    572577 
    573 #: inc/class.newsletter.admin.php:951 
     578#: inc/class.newsletter.admin.php:956 
    574579msgid "Set" 
    575580msgstr "Modifier" 
    576581 
    577 #: inc/class.newsletter.admin.php:952 
     582#: inc/class.newsletter.admin.php:957 
    578583msgid "Mail to send" 
    579584msgstr "Courrier à envoyer" 
    580585 
    581 #: inc/class.newsletter.admin.php:955 
     586#: inc/class.newsletter.admin.php:960 
    582587msgid "Set format" 
    583588msgstr "Modifier le format" 
    584589 
    585 #: inc/class.newsletter.admin.php:956 
     590#: inc/class.newsletter.admin.php:961 
    586591msgid "Change" 
    587592msgstr "Changer" 
    588593 
    589 #: inc/class.newsletter.admin.php:1008 
     594#: inc/class.newsletter.admin.php:1013 
    590595msgid "Edit a subscriber" 
    591596msgstr "Modifier un abonné" 
    592597 
    593 #: inc/class.newsletter.admin.php:1010 
     598#: inc/class.newsletter.admin.php:1015 
    594599msgid "Update" 
    595600msgstr "Mettre à jour" 
    596601 
    597 #: inc/class.newsletter.admin.php:1024 
     602#: inc/class.newsletter.admin.php:1029 
    598603msgid "Subscribed:" 
    599604msgstr "Inscrit:" 
    600605 
    601 #: inc/class.newsletter.admin.php:1026 
     606#: inc/class.newsletter.admin.php:1031 
    602607msgid "Last sent:" 
    603608msgstr "Dernier envoi:" 
    604609 
    605 #: inc/class.newsletter.admin.php:1030 
     610#: inc/class.newsletter.admin.php:1035 
    606611msgid "Registration code:" 
    607612msgstr "Code d'inscription:" 
    608613 
    609 #: inc/class.newsletter.admin.php:1034 
     614#: inc/class.newsletter.admin.php:1039 
    610615msgid "enabled" 
    611616msgstr "actif" 
    612617 
    613 #: inc/class.newsletter.admin.php:1035 
     618#: inc/class.newsletter.admin.php:1040 
    614619msgid "suspended" 
    615620msgstr "suspendu" 
    616621 
    617 #: inc/class.newsletter.admin.php:1036 
     622#: inc/class.newsletter.admin.php:1041 
    618623msgid "disabled" 
    619624msgstr "désactivé" 
    620625 
    621 #: inc/class.newsletter.admin.php:1046 
     626#: inc/class.newsletter.admin.php:1051 
    622627msgid "Add a subscriber" 
    623628msgstr "Ajouter un abonné" 
    624629 
    625 #: inc/class.newsletter.admin.php:1054 
     630#: inc/class.newsletter.admin.php:1059 
    626631msgid "Not allowed." 
    627632msgstr "Interdit." 
    628633 
    629 #: inc/class.newsletter.core.php:880 
     634#: inc/class.newsletter.core.php:812 
    630635msgid "Your account has been suspended." 
    631636msgstr "Votre compte a été suspendu." 
    632637 
    633 #: inc/class.newsletter.core.php:887 
     638#: inc/class.newsletter.core.php:819 
    634639msgid "Thank you for your subscription." 
    635640msgstr "Merci pour votre inscription !" 
    636641 
    637 #: inc/class.newsletter.core.php:888 
     642#: inc/class.newsletter.core.php:820 
    638643msgid "Your account has been canceled." 
    639644msgstr "Votre compte a été supprimé." 
    640645 
    641 #: inc/class.newsletter.core.php:889 
     646#: inc/class.newsletter.core.php:821 
    642647msgid "Your account has been validated." 
    643648msgstr "Votre compte a été validé." 
    644649 
    645 #: inc/class.newsletter.core.php:890 
     650#: inc/class.newsletter.core.php:822 
    646651msgid "Your sending format has been updated." 
    647652msgstr "Votre format d'envoi a été mis à jour." 
    648653 
    649 #: inc/class.newsletter.core.php:937 
    650 #: inc/class.newsletter.plugin.php:590 
    651 msgid "Newsletter for" 
    652 msgstr "Lettre d'information pour" 
    653  
    654 #: inc/class.newsletter.core.php:954 
     654#: inc/class.newsletter.core.php:823 
     655msgid ", by" 
     656msgstr ", par" 
     657 
     658#: inc/class.newsletter.core.php:930 
     659msgid "Successful mail sent for" 
     660msgstr "Courriel envoyé avec succès pour" 
     661 
     662#: inc/class.newsletter.core.php:933 
     663msgid "Mail sent error for" 
     664msgstr "Echec de l'envoi du courriel pour" 
     665 
     666#: inc/class.newsletter.core.php:936 
     667msgid "Nothing to send for" 
     668msgstr "Rien à envoyer pour" 
     669 
     670#: inc/class.newsletter.core.php:981 
    655671msgid "Links:" 
    656672msgstr "Liens:" 
    657673 
    658 #: inc/class.newsletter.core.php:1018 
    659 #: inc/class.newsletter.core.php:1172 
    660 #: inc/class.newsletter.core.php:1257 
    661 #: inc/class.newsletter.core.php:1342 
    662 #: inc/class.newsletter.core.php:1424 
    663 #: inc/class.newsletter.core.php:1575 
    664 #: inc/class.newsletter.core.php:1660 
    665 msgid "Successful mail sent for" 
    666 msgstr "Courriel envoyé avec succès pour" 
    667  
    668 #: inc/class.newsletter.core.php:1020 
    669 #: inc/class.newsletter.core.php:1174 
    670 #: inc/class.newsletter.core.php:1259 
    671 #: inc/class.newsletter.core.php:1344 
    672 #: inc/class.newsletter.core.php:1426 
    673 #: inc/class.newsletter.core.php:1577 
    674 #: inc/class.newsletter.core.php:1662 
    675 msgid "Mail sent error for" 
    676 msgstr "Echec de l'envoi du courriel pour" 
    677  
    678 #: inc/class.newsletter.core.php:1022 
    679 msgid "Nothing to send for" 
    680 msgstr "Rien à envoyer pour" 
    681  
    682 #: inc/class.newsletter.core.php:1127 
     674#: inc/class.newsletter.core.php:1032 
    683675#: inc/class.newsletter.plugin.php:610 
    684676msgid "Newsletter subscription confirmation for" 
    685677msgstr "Confirmation d'inscription pour" 
    686678 
    687 #: inc/class.newsletter.core.php:1127 
     679#: inc/class.newsletter.core.php:1032 
    688680msgid "Thanks you for subscribing." 
    689681msgstr "Merci pour votre inscription." 
    690682 
    691 #: inc/class.newsletter.core.php:1213 
     683#: inc/class.newsletter.core.php:1073 
    692684#: inc/class.newsletter.plugin.php:630 
    693685msgid "Newsletter account suspend for" 
    694686msgstr "Suspension d'abonnement à la lettre d'information pour" 
    695687 
    696 #: inc/class.newsletter.core.php:1213 
    697 #: inc/class.newsletter.core.php:1381 
    698 #: inc/class.newsletter.core.php:1464 
    699 #: inc/class.newsletter.core.php:1621 
     688#: inc/class.newsletter.core.php:1073 
     689#: inc/class.newsletter.core.php:1154 
     690#: inc/class.newsletter.core.php:1194 
     691#: inc/class.newsletter.core.php:1297 
    700692msgid "Have a nice day !" 
    701693msgstr "Passez une bonne journée !" 
    702694 
    703 #: inc/class.newsletter.core.php:1296 
     695#: inc/class.newsletter.core.php:1113 
    704696#: inc/class.newsletter.plugin.php:650 
    705697msgid "Newsletter account activation for" 
    706698msgstr "Activation d'abonnement à la lettre d'information pour" 
    707699 
    708 #: inc/class.newsletter.core.php:1296 
     700#: inc/class.newsletter.core.php:1113 
    709701msgid "Thank you for subscribing." 
    710702msgstr "Merci pour votre inscription." 
    711703 
    712 #: inc/class.newsletter.core.php:1381 
     704#: inc/class.newsletter.core.php:1154 
    713705#: inc/class.newsletter.plugin.php:670 
    714706msgid "Newsletter account removal for" 
    715707msgstr "Suppression d'abonnement à la lettre d'information pour" 
    716708 
    717 #: inc/class.newsletter.core.php:1464 
     709#: inc/class.newsletter.core.php:1194 
    718710#: inc/class.newsletter.plugin.php:690 
    719711msgid "Newsletter account resume for" 
    720712msgstr "Information sur l'abonnement à la lettre d'information pour" 
    721713 
    722 #: inc/class.newsletter.core.php:1543 
     714#: inc/class.newsletter.core.php:1252 
    723715msgid "Your account is pending confirmation." 
    724716msgstr "Votre abonnement est en attente de confirmation." 
    725717 
    726 #: inc/class.newsletter.core.php:1562 
     718#: inc/class.newsletter.core.php:1271 
    727719msgid "Your sending mode is" 
    728720msgstr "Votre format est" 
    729721 
    730 #: inc/class.newsletter.core.php:1621 
     722#: inc/class.newsletter.core.php:1297 
    731723#: inc/class.newsletter.plugin.php:710 
    732724msgid "Newsletter account change format for" 
    733725msgstr "Changement du format sur l'abonnement à la lettre d'information pour" 
    734726 
    735 #: inc/class.newsletter.core.php:1681 
    736 #: inc/class.newsletter.core.php:1708 
    737 #: inc/class.newsletter.core.php:1737 
    738 #: inc/class.newsletter.core.php:1764 
    739 #: inc/class.newsletter.core.php:1791 
    740 msgid "Newsletter is disabled." 
    741 msgstr "Newsletter est désactivé." 
    742  
    743 #: inc/class.newsletter.core.php:1683 
    744 #: inc/class.newsletter.core.php:1711 
    745 #: inc/class.newsletter.core.php:1739 
    746 #: inc/class.newsletter.core.php:1766 
    747 #: inc/class.newsletter.core.php:1793 
     727#: inc/class.newsletter.core.php:1393 
     728#: inc/class.newsletter.core.php:1418 
     729#: inc/class.newsletter.core.php:1444 
     730#: inc/class.newsletter.core.php:1469 
     731#: inc/class.newsletter.core.php:1494 
    748732msgid "Bad email !" 
    749733msgstr "Mauvais email ou format incorrect !" 
    750734 
    751 #: inc/class.newsletter.core.php:1688 
     735#: inc/class.newsletter.core.php:1396 
    752736msgid "Email already exist !" 
    753737msgstr "Email déja existant !" 
    754738 
    755 #: inc/class.newsletter.core.php:1690 
     739#: inc/class.newsletter.core.php:1398 
    756740msgid "Error creating account !" 
    757741msgstr "Erreur lors de la création du compte !" 
     
    792776msgstr "Pour suspendre votre abonnement" 
    793777 
    794 #: inc/class.newsletter.plugin.php:1433 
     778#: inc/class.newsletter.plugin.php:590 
     779msgid "Newsletter for" 
     780msgstr "Lettre d'information pour" 
     781 
     782#: inc/class.newsletter.plugin.php:1459 
    795783msgid "No new version available." 
    796784msgstr "Pas de nouvelle version." 
    797785 
    798 #: inc/class.newsletter.plugin.php:1435 
     786#: inc/class.newsletter.plugin.php:1461 
    799787msgid "New version available:" 
    800788msgstr "Nouvelle version disponible:" 
    801789 
    802 #: inc/class.newsletter.plugin.php:1441 
     790#: inc/class.newsletter.plugin.php:1467 
    803791msgid "Read the post." 
    804792msgstr "Lire le billet." 
    805793 
    806 #: inc/class.newsletter.plugin.php:1441 
     794#: inc/class.newsletter.plugin.php:1467 
    807795msgid "post" 
    808796msgstr "billet" 
    809797 
    810 #: inc/class.newsletter.plugin.php:1443 
     798#: inc/class.newsletter.plugin.php:1469 
    811799msgid "Installer." 
    812800msgstr "Installeur." 
    813801 
    814 #: inc/class.newsletter.plugin.php:1443 
     802#: inc/class.newsletter.plugin.php:1469 
    815803msgid "pkg.gz" 
    816804msgstr "pkg.gz" 
    817805 
    818 #: inc/class.newsletter.plugin.php:1445 
     806#: inc/class.newsletter.plugin.php:1471 
    819807msgid "Archive." 
    820808msgstr "Archive." 
    821809 
    822 #: inc/class.newsletter.plugin.php:1445 
     810#: inc/class.newsletter.plugin.php:1471 
    823811msgid "tar.gz" 
    824812msgstr "tar.gz" 
    825813 
    826 #: index.php:69 
    827 #: index.php:286 
    828 #: index.php:299 
     814#: index.php:72 
     815#: index.php:295 
     816#: index.php:308 
    829817msgid "Settings updated." 
    830818msgstr "Paramètres mis à jour." 
    831819 
    832 #: index.php:84 
    833 #: index.php:85 
     820#: index.php:87 
     821#: index.php:88 
    834822msgid "You must input a valid email !" 
    835823msgstr "Vous devez saisir un email valide !" 
    836824 
    837 #: index.php:318 
    838 #: index.php:357 
    839 #: index.php:382 
    840 #: index.php:408 
     825#: index.php:327 
     826#: index.php:366 
     827#: index.php:391 
     828#: index.php:417 
    841829msgid "Planning updated." 
    842830msgstr "Planning mis à jour." 
    843831 
    844 #: index.php:326 
     832#: index.php:335 
    845833msgid "Error during create planning task." 
    846834msgstr "Erreur pendant la création de la tâche planifiée." 
    847835 
    848 #: index.php:444 
    849 #: index.php:495 
     836#: index.php:453 
     837#: index.php:504 
    850838msgid "Missing informations." 
    851839msgstr "Informations manquantes." 
    852840 
    853 #: index.php:447 
     841#: index.php:456 
    854842msgid "Error adding subscriber." 
    855843msgstr "Erreur lors de l'ajout d'un abonné." 
    856844 
    857 #: index.php:449 
     845#: index.php:458 
    858846msgid "Subscriber added." 
    859847msgstr "Abonné ajouté." 
    860848 
    861 #: index.php:502 
     849#: index.php:511 
    862850msgid "Error updating subscriber." 
    863851msgstr "Erreur lors de la mise à jour d'un abonné." 
    864852 
    865 #: index.php:504 
     853#: index.php:513 
    866854msgid "Subscriber updated." 
    867855msgstr "Abonné mis à jour." 
    868856 
    869 #: index.php:518 
     857#: index.php:527 
    870858msgid "No account removed." 
    871859msgstr "Pas de compte supprimé." 
    872860 
    873 #: index.php:526 
     861#: index.php:535 
    874862msgid "Account(s) successfully removed." 
    875863msgstr "Compte(s) supprimé(s) avec succès." 
    876864 
    877 #: index.php:540 
     865#: index.php:549 
    878866msgid "No account suspended." 
    879867msgstr "Pas de compte suspendu." 
    880868 
    881 #: index.php:548 
     869#: index.php:557 
    882870msgid "Account(s) successfully suspended." 
    883871msgstr "Compte(s) suspendu(s) avec succès." 
    884872 
    885 #: index.php:562 
     873#: index.php:571 
    886874msgid "No account enabled." 
    887875msgstr "Pas de compte activé." 
    888876 
    889 #: index.php:570 
     877#: index.php:579 
    890878msgid "Account(s) successfully enabled." 
    891879msgstr "Compte(s) activé(s) avec succés." 
    892880 
    893 #: index.php:584 
     881#: index.php:593 
    894882msgid "No account disabled." 
    895883msgstr "Pas de compte désactivé." 
    896884 
    897 #: index.php:592 
     885#: index.php:601 
    898886msgid "Account(s) successfully disabled." 
    899887msgstr "Compte(s) désactivé(s) avec succès." 
    900888 
    901 #: index.php:625 
     889#: index.php:640 
    902890msgid "No account changed." 
    903891msgstr "Pas de compte modifié." 
    904892 
    905 #: index.php:630 
     893#: index.php:646 
    906894msgid "Account(s) successfully changed." 
    907895msgstr "Compte(s) modifié(s) avec succès." 
    908896 
    909 #: index.php:649 
     897#: index.php:667 
    910898msgid "Datas exported." 
    911899msgstr "Données exportées." 
    912900 
    913 #: index.php:669 
     901#: index.php:687 
    914902msgid "Datas imported." 
    915903msgstr "Données importées." 
    916904 
    917 #: index.php:742 
    918 #: index.php:764 
     905#: index.php:772 
     906#: index.php:794 
    919907msgid "No account(s) updated." 
    920908msgstr "Pas de compte(s) mis à jour." 
    921909 
    922 #: index.php:750 
     910#: index.php:780 
    923911msgid "Format sending for account(s) successfully updated to html." 
    924912msgstr "Format d'envoi pour le(s) abonné(s) mis à jour au format html." 
    925913 
    926 #: index.php:772 
     914#: index.php:802 
    927915msgid "Format sending for account(s) successfully updated to text." 
    928916msgstr "Format d'envoi pour le(s) abonné(s) mis à jour au format text." 
    929917 
    930 #: index.php:786 
     918#: index.php:816 
    931919msgid "No template adapted." 
    932920msgstr "Pas de template adapté." 
    933921 
    934 #: index.php:788 
     922#: index.php:819 
    935923msgid "Template successfully adapted." 
    936924msgstr "Template adapté avec succès." 
    937925 
    938 #: index.php:803 
     926#: index.php:833 
    939927msgid "Erasing complete." 
    940928msgstr "Nettoyage terminé." 
    941929 
    942 #: index.php:839 
     930#: index.php:869 
    943931msgid "Are you sure you want to delete all informations about newsletter in database ?" 
    944932msgstr "Etes-vous sûr de vouloir supprimer toutes les informations de newsletter dans la base de données ?" 
    945933 
    946 #: index.php:850 
     934#: index.php:880 
    947935msgid "Subscribers" 
    948936msgstr "Abonnés" 
    949937 
    950 #: index.php:859 
     938#: index.php:889 
    951939msgid "Planning" 
    952940msgstr "Planification" 
    953941 
     942msgid "Newsletter is disabled." 
     943msgstr "Newsletter est désactivé." 
     944 
    954945msgid "Presentation message" 
    955946msgstr "Message de présentation" 
Note: See TracChangeset for help on using the changeset viewer.

Sites map