Changeset 1038
- Timestamp:
- 04/18/09 10:50:52 (15 years ago)
- Location:
- plugins/newsletter/trunk
- Files:
-
- 2 added
- 23 edited
Legend:
- Unmodified
- Added
- Removed
-
plugins/newsletter/trunk/_define.php
r921 r1038 15 15 /* Description*/ "Manager newsletter", 16 16 /* Author */ "Benoit de Marne", 17 /* Version */ "3.5. 6",17 /* Version */ "3.5.7", 18 18 /* Permissions */ "usage,contentadmin", 19 19 /* Priority */ null 20 20 ); 21 21 22 /* Original Author : Olivier Le Bris */22 /* Original Author (3.4.2) : Olivier Le Bris */ 23 23 24 24 ?> -
plugins/newsletter/trunk/_public.php
r978 r1038 15 15 // chargement des librairies 16 16 require_once dirname(__FILE__).'/inc/class.captcha.php'; 17 require_once dirname(__FILE__).'/inc/class.newsletter.tools.php'; 17 18 require_once dirname(__FILE__).'/inc/class.newsletter.plugin.php'; 18 19 require_once dirname(__FILE__).'/inc/class.newsletter.core.php'; … … 93 94 $msg = __('Account already confirmed.'); 94 95 else { 95 newsletterCore::send Enable($rs->subscriber_id);96 newsletterCore::send($rs->subscriber_id,'enable'); 96 97 $msg = __('Your subscription is confirmed.').'<br />'.__('You will soon receive an email.'); 97 98 } … … 109 110 $msg = __('Account already enabled.'); 110 111 else { 111 newsletterCore::send Enable($rs->subscriber_id);112 newsletterCore::send($rs->subscriber_id,'enable'); 112 113 $msg = __('Your account is enabled.').'<br />'.__('You will soon receive an email.'); 113 114 } … … 125 126 $msg = __('Account already disabled.'); 126 127 else { 127 newsletterCore::send Disable($rs->subscriber_id);128 newsletterCore::send($rs->subscriber_id,'disable'); 128 129 $msg = __('Your account is disabled.').'<br />'.__('You will soon receive an email.'); 129 130 } … … 141 142 $msg = __('Account already suspended.'); 142 143 else { 143 newsletterCore::send Suspend($rs->subscriber_id);144 newsletterCore::send($rs->subscriber_id,'suspend'); 144 145 $msg = __('Your account is suspended.').'<br />'.__('You will soon receive an email.'); 145 146 } … … 155 156 $msg = __('Unable to find you account informations.'); 156 157 else { 157 newsletterCore::send ChangeMode($rs->subscriber_id);158 newsletterCore::send($rs->subscriber_id,'changemode'); 158 159 $msg = __('Your sending format is').$modesend.'<br />'.__('You will soon receive an email.'); 159 160 } … … 268 269 public static function NewsletterFormRandom() 269 270 { 270 return '<?php echo "'.newsletter Core::getRandom().'" ?>';271 return '<?php echo "'.newsletterTools::getRandom().'" ?>'; 271 272 } 272 273 … … 450 451 '<form action="'.$link.'" method="post" id="nl_form">'. 451 452 $core->formNonce(). 452 form::hidden(array('nl_random'),newsletter Core::getRandom()).453 form::hidden(array('nl_random'),newsletterTools::getRandom()). 453 454 '<ul>'. 454 455 '<li><label for="nl_email">'.__('Email').'</label> : '. … … 569 570 570 571 if (isset($params[1]) && !empty($params[1])) { 571 $email = newsletter Core::base64_url_decode((string)html::clean($params[1]));572 $email = newsletterTools::base64_url_decode((string)html::clean($params[1])); 572 573 } 573 574 else … … 580 581 581 582 if (isset($params[3]) && !empty($params[3])) 582 $modesend = newsletter Core::base64_url_decode((string)html::clean($params[3]));583 $modesend = newsletterTools::base64_url_decode((string)html::clean($params[3])); 583 584 else 584 585 $modesend = null; -
plugins/newsletter/trunk/changelog.txt
r978 r1038 1 Todo : 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 1 7 Newsletter 3.5.7 - 2009-xx-xx 2 8 =========================================================== 9 * correction du Ticket #139 : suppression des balises HTML en mode texte 10 * optimisation du code sur l'envoi des mails 3 11 * correction du Ticket #125 : Possibilité de modifier le nom "Lettre d'informations" dans le titre du formulaire côté public. 4 12 * 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 9 9 10 10 <p> 11 {$header}<br /> 12 <a href="{$blogUrl}">{$blogName}</a> 11 {$header} <a href="{$blogUrl}">{$blogName}</a> 13 12 </p> 14 13 15 14 <p> 16 {$txtChangingMode} 15 {$txtChangingMode}<br /><br /> 17 16 </p> 18 17 -
plugins/newsletter/trunk/default-templates/changemode.txt
r821 r1038 1 {$header} 2 {$blogName} 3 1 {$header} {$blogName} 2 {nl}{nl} 4 3 {$txtChangingMode} 5 4 {nl}{nl} 6 5 {$footer} -
plugins/newsletter/trunk/default-templates/confirm.html
r821 r1038 9 9 10 10 <p> 11 {$header}<br /> 12 <a href="{$blogUrl}">{$blogName}</a> 11 {$header} <a href="{$blogUrl}">{$blogName}</a> 13 12 </p> 14 13 15 14 <p> 16 15 {$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 /> 18 18 </p> 19 19 -
plugins/newsletter/trunk/default-templates/confirm.txt
r821 r1038 1 {$header} 2 {$blogName} 3 1 {$header} {$blogName} 2 {nl}{nl} 4 3 {$txt_intro_confirm} 5 4 {$txtConfirm} 6 5 {$urlConfirm} 7 6 {nl}{nl} 8 7 {$txt_intro_disable} 9 8 {$txtDisable} 10 9 {$urlDisable} 11 10 {nl}{nl} 12 11 {$footer} -
plugins/newsletter/trunk/default-templates/disable.html
r821 r1038 9 9 10 10 <p> 11 {$header}<br /> 12 <a href="{$blogUrl}">{$blogName}</a> 11 {$header} <a href="{$blogUrl}">{$blogName}</a> 13 12 </p> 14 13 15 {$txtDisabled} 14 <p>{$txtDisabled}</p> 16 15 17 16 <p> 18 {$txt_intro_enable} <a href="{$urlEnable}">{$txtEnable}</a> 17 {$txt_intro_enable} <a href="{$urlEnable}">{$txtEnable}</a><br /> 18 <br /> 19 19 </p> 20 20 -
plugins/newsletter/trunk/default-templates/disable.txt
r821 r1038 1 {$header} 2 {$blogName} 3 1 {$header} {$blogName} 2 {nl}{nl} 4 3 {$txtDisabled} 5 4 {nl}{nl} 6 5 {$txt_intro_enable} 7 6 {$txtEnable} 8 7 {$urlEnable} 9 8 {nl}{nl} 10 9 {$footer} -
plugins/newsletter/trunk/default-templates/enable.html
r834 r1038 12 12 </p> 13 13 14 {$txtEnabled} 14 <p>{$txtEnabled}</p> 15 15 16 16 <p> 17 17 {$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 /> 19 20 </p> 20 21 -
plugins/newsletter/trunk/default-templates/enable.txt
r821 r1038 1 {$header} 2 {$blogName} 3 1 {$header} {$blogName} 2 {nl}{nl} 4 3 {$txtEnabled} 5 4 {nl}{nl} 6 5 {$txt_intro_suspend} 7 6 {$txtSuspend} 8 7 {$urlSuspend} 9 8 {nl}{nl} 10 9 {$txt_intro_disable} 11 10 {$txtDisable} 12 11 {$urlDisable} 13 12 {nl}{nl} 14 13 {$footer} -
plugins/newsletter/trunk/default-templates/newsletter.html
r978 r1038 29 29 30 30 <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 /> 33 34 </p> 34 35 -
plugins/newsletter/trunk/default-templates/newsletter.txt
r978 r1038 1 1 {$header} {$blogName} 2 2 {$blogUrl} 3 3 {nl}{nl} 4 4 {$txtIntroductoryMsg} 5 5 {nl}{nl} 6 6 {$txtHeading} 7 7 {nl}{nl} 8 8 {loop:posts} 9 posts.title (posts.date {$txtBy} posts.author) 10 posts.url 11 posts.content{nl} {nl}9 posts.title (posts.date {$txtBy} posts.author){nl} 10 posts.url{nl} 11 posts.content{nl} 12 12 {/loop} 13 13 {nl}{nl} 14 14 {$txt_intro_suspend} 15 15 {$txtSuspend} 16 16 {$urlSuspend} 17 17 {nl} 18 18 {$txt_intro_disable} 19 19 {$txtDisable} 20 20 {$urlDisable} 21 21 {nl}{nl} 22 22 {$footer} -
plugins/newsletter/trunk/default-templates/resume.html
r836 r1038 18 18 19 19 <p> 20 {$urlResume} 20 {$urlResume}<br /> 21 <br /> 21 22 </p> 22 23 -
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} 5 4 {$txtMode} 6 5 {nl}{nl} 7 6 {$urlResume} 8 7 {nl}{nl} 9 8 {$footer} 9 {nl}{nl} -
plugins/newsletter/trunk/default-templates/suspend.html
r821 r1038 9 9 10 10 <p> 11 {$header}<br /> 12 <a href="{$blogUrl}">{$blogName}</a> 11 {$header} <a href="{$blogUrl}">{$blogName}</a> 13 12 </p> 14 13 15 {$txtSuspended} 14 <p>{$txtSuspended}</p> 16 15 17 16 <p> 18 {$txt_intro_enable} <a href="{$urlEnable}">{$txtEnable}</a> 17 {$txt_intro_enable} <a href="{$urlEnable}">{$txtEnable}</a><br /> 18 <br /> 19 19 </p> 20 20 -
plugins/newsletter/trunk/default-templates/suspend.txt
r821 r1038 1 {$header} 2 {$blogName} 3 1 {$header} {$blogName} 2 {nl}{nl} 4 3 {$txtSuspended} 5 4 {nl}{nl} 6 5 {$txt_intro_enable} 7 6 {$txtEnable} 8 7 {$urlEnable} 9 8 {nl}{nl} 10 9 {$footer} -
plugins/newsletter/trunk/inc/class.html2text.php
r858 r1038 126 126 '/<p[^>]*>/i', // <P> 127 127 '/<br[^>]*>/i', // <br> 128 '/<br[^>]*\/>/i', // <br /> 128 129 '/<b[^>]*>(.+?)<\/b>/ie', // <b> 129 130 '/<i[^>]*>(.+?)<\/i>/i', // <i> … … 176 177 "\n\n\t", // <P> 177 178 "\n", // <br> 179 "\n", // <br /> 178 180 'strtoupper("\\1")', // <b> 179 181 '_\\1_', // <i> -
plugins/newsletter/trunk/inc/class.newsletter.core.php
r978 r1038 13 13 // chargement des librairies 14 14 require dirname(__FILE__).'/class.template.php'; 15 require dirname(__FILE__).'/class.newsletter.mailing.php'; 15 16 16 17 // le plugin … … 57 58 { 58 59 return newsletterPlugin::isInstalled(); 59 }60 61 // Fonction récupérée dans le plugin dCom62 // 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 Meunier71 // Corrigée pour supporter le UTF-872 // 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);96 60 } 97 61 … … 187 151 188 152 /** 189 * génère un code d'enregistrement190 */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 url198 */199 public static function base64_url_encode($val)200 {201 return strtr(base64_encode($val), '+/=', '-_,');202 }203 204 /**205 * decodage en base64 pour une url206 */207 public static function base64_url_decode($val)208 {209 return base64_decode(strtr($val, '-_,', '+/='));210 }211 212 /**213 153 * test l'existence d'un abonné par son id 214 154 */ … … 342 282 // génération des informations manquantes 343 283 if ($_regcode == null) { 344 $_regcode = self::regcode();284 $_regcode = newsletterTools::regcode(); 345 285 } 346 286 … … 372 312 } 373 313 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 385 314 /** 386 315 * met à jour un abonné par son id … … 484 413 $blogid = $con->escape((string)$blog->id); 485 414 486 // requ ète sur les données et renvoi null si erreur415 // requête sur les données et renvoi null si erreur 487 416 $strReq = 488 417 'SELECT *'. … … 697 626 * retourne les billets pour la newsletter: 698 627 */ 699 public static function getPosts($dt )628 public static function getPosts($dt=null) 700 629 { 701 630 global $core; … … 719 648 // limitation du nombre de billets 720 649 $maxPost = newsletterPlugin::getMaxPosts(); 721 if ($maxPost > 0) 650 if ($maxPost > 0) { 722 651 $params['limit'] = $maxPost; 652 } 723 653 724 654 // définition du tris des enregistrements et filtrage dans le temps … … 737 667 } 738 668 } 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); 746 677 747 678 // 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 */ 749 681 750 682 // récupération des billets 751 683 $rs = $blog->getPosts($params, false); 752 684 753 685 $minPosts = newsletterPlugin::getMinPosts(); 754 686 if($rs->count() < $minPosts) … … 762 694 } 763 695 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 764 755 /* ================================================== 765 756 emails … … 767 758 768 759 /** 769 * convertit le texte en 7 bits770 */ 771 p rivate static function to7bit($text, $from_enc)760 * renvoi l'url de base de newsletter 761 */ 762 public static function url($cmd = '') 772 763 { 773 764 global $core; 774 765 try { 775 return preg_replace( 776 array('/ß/', '/&(..)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; 779 774 } catch (Exception $e) { 780 775 $core->error->add($e->getMessage()); 781 776 } 782 777 } 783 784 /**785 * envoi de mail786 */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 newsletter831 */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 }846 778 847 779 /** … … 895 827 } 896 828 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 918 856 919 857 // prise en compte du paramètres: liste d'id ou id simple … … 924 862 $ids[] = $id; 925 863 } 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 } 1015 926 1016 927 $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 1024 938 return $msg; 1025 939 } 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 */ 1035 1363 public static function autosendNewsletter() 1036 1364 { … … 1045 1373 } else { 1046 1374 $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'); 1060 1384 } 1061 1385 } … … 1063 1387 1064 1388 /** 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 */ 1067 1393 public static function cronSendNewsletter() 1068 1394 { … … 1080 1406 return; 1081 1407 } 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 } 1667 1415 } 1668 1416 } … … 1675 1423 * création du compte 1676 1424 */ 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()); 1698 1444 } 1699 1445 } … … 1702 1448 * suppression du compte 1703 1449 */ 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 1716 1457 $subscriber = self::getemail($email); 1717 1458 $msg = null; … … 1719 1460 return __('Email don\'t exist !'); 1720 1461 else { 1721 $msg = self::send Disable($subscriber->subscriber_id);1462 $msg = self::send($subscriber->subscriber_id,'disable'); 1722 1463 self::delete($subscriber->subscriber_id); 1723 1464 return $msg; 1724 1465 } 1725 } catch (Exception $e) {1726 $core->error->add($e->getMessage());1727 }1466 } 1467 } catch (Exception $e) { 1468 $core->error->add($e->getMessage()); 1728 1469 } 1729 1470 } … … 1734 1475 static function accountSuspend($email = null) 1735 1476 { 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 1743 1483 $subscriber = self::getemail($email); 1744 $msg = null;1484 $msg = ''; 1745 1485 if (!$subscriber || $subscriber->subscriber_id == null) 1746 1486 return __('Email don\'t exist !'); 1747 1487 else { 1748 $msg = self::send Suspend($subscriber->subscriber_id);1488 $msg = self::send($subscriber->subscriber_id,'suspend'); 1749 1489 self::suspend($subscriber->subscriber_id); 1750 1490 return $msg; 1751 1491 } 1752 } catch (Exception $e) {1753 $core->error->add($e->getMessage());1754 }1492 } 1493 } catch (Exception $e) { 1494 $core->error->add($e->getMessage()); 1755 1495 } 1756 1496 } … … 1759 1499 * information sur le compte 1760 1500 */ 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 1770 1508 $subscriber = self::getemail($email); 1771 $msg = null;1509 $msg = ''; 1772 1510 if (!$subscriber || $subscriber->subscriber_id == null) 1773 1511 return __('Email don\'t exist !'); 1774 1512 else { 1775 $msg = self::send Resume($subscriber->subscriber_id);1513 $msg = self::send($subscriber->subscriber_id,'resume'); 1776 1514 //self::resume($subscriber->subscriber_id); 1777 1515 return $msg; 1778 1516 } 1779 } catch (Exception $e) {1780 $core->error->add($e->getMessage());1781 }1782 } 1517 } 1518 } catch (Exception $e) { 1519 $core->error->add($e->getMessage()); 1520 } 1783 1521 } 1784 1522 … … 1786 1524 * changement du format sur le compte 1787 1525 */ 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 1797 1533 $subscriber = self::getemail($email); 1798 $msg = null;1534 $msg = ''; 1799 1535 if (!$subscriber || $subscriber->subscriber_id == null) 1800 1536 return __('Email don\'t exist !'); 1801 1537 else { 1802 $msg = self::send ChangeMode($subscriber->subscriber_id);1538 $msg = self::send($subscriber->subscriber_id,'changemode'); 1803 1539 self::changeMode($subscriber->subscriber_id, $modesend); 1804 1540 return $msg; 1805 1541 } 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 } 1819 1546 } 1820 1547 -
plugins/newsletter/trunk/inc/class.template.php
r898 r1038 22 22 * répertoire des templates 23 23 */ 24 //public static function folder() { return newsletterPlugin::folder().'templates/'; }25 24 public static function folder() { 26 25 return newsletterPlugin::folder().'../default-templates/'; … … 74 73 break; 75 74 76 default: return false; 75 default: 76 return false; 77 77 } 78 78 … … 158 158 159 159 if ($mode == 'text') 160 $content = str_replace("{nl}", "\n", $content); 160 $content = str_replace("{nl}", "<br />", $content); 161 //$content = str_replace("{nl}", "\n", $content); 161 162 else if ($mode == 'html') 162 163 $content = str_replace("{nl}", "<br />", $content); 163 }164 164 165 } 166 } 165 167 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 173 181 } 182 } 174 183 175 176 184 // renvoi le contenu transformé 185 return $content; 177 186 178 187 } catch (Exception $e) { -
plugins/newsletter/trunk/index.php
r978 r1038 19 19 require_once dirname(__FILE__).'/inc/class.newsletter.admin.php'; 20 20 require_once dirname(__FILE__).'/inc/class.newsletter.cron.php'; 21 require_once dirname(__FILE__).'/inc/class.newsletter.tools.php'; 22 //require_once dirname(__FILE__).'/inc/class.newsletter.mailing.php'; 23 21 24 22 25 // paramétrage des variables … … 615 618 $ids[] = $id; 616 619 } 617 $msg = newsletterCore::sendNewsletter($ids); 618 //$msg .= ' subscribers count = '.sizeof($ids); 620 $msg = newsletterCore::send($ids,'newsletter'); 619 621 } catch (Exception $e) { 620 622 $core->error->add($e->getMessage()); … … 637 639 { 638 640 $msg = __('No account changed.'); 639 if (is_array($_POST['subscriber'])) 640 { 641 if (is_array($_POST['subscriber'])) { 641 642 $ids = array(); 642 643 643 foreach (array_keys($_POST['subscriber']) as $id) { $ids[] = $id; } 644 { 644 645 if (newsletterCore::lastsent($ids, 'clear')) 645 646 $msg = __('Account(s) successfully changed.'); … … 696 697 $plugin_tab = 'tab_listblog'; 697 698 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 } 705 709 } 706 710 break; … … 711 715 $plugin_tab = 'tab_listblog'; 712 716 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 } 720 727 } 721 728 break; … … 726 733 $plugin_tab = 'tab_listblog'; 727 734 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 } 735 745 } 736 746 break; … … 741 751 $plugin_tab = 'tab_listblog'; 742 752 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 } 750 763 } 751 764 break; … … 803 816 $msg = __('No template adapted.'); 804 817 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.'); 806 820 } 807 821 } catch (Exception $e) { … … 816 830 $plugin_tab = 'tab_maintenance'; 817 831 try { 818 819 832 newsletterAdmin::Uninstall(); 820 833 $msg = __('Erasing complete.'); -
plugins/newsletter/trunk/locales/fr/main.lang.php
r927 r1038 4 4 5 5 # _install.php:40 6 # index.php:4 56 # index.php:48 7 7 $GLOBALS['__l10n']['Unable to install Newsletter.']='Impossible d\'installer Newsletter'; 8 8 9 # _public.php:7 19 # _public.php:75 10 10 $GLOBALS['__l10n']['Test display template.']='Test d\'affichage du template.'; 11 11 12 # _public.php:7 512 # _public.php:79 13 13 $GLOBALS['__l10n']['About Newsletter ...']='A propos de Newsletter ...'; 14 14 15 # _public.php: 7615 # _public.php:80 16 16 $GLOBALS['__l10n']['About']='A propos'; 17 17 18 # _public.php: 7818 # _public.php:82 19 19 $GLOBALS['__l10n']['Authors']='Auteurs'; 20 20 21 # _public.php:8422 # _public.php:10023 # _public.php:11624 # _public.php:13225 # _public.php:14826 $GLOBALS['__l10n']['Missing informations. ']='Informations manquantes.';27 28 21 # _public.php:88 29 $GLOBALS['__l10n']['Your subscription code is invalid.']='Votre code d\'inscription est invalide.';30 31 # _public.php:9032 $GLOBALS['__l10n']['Account already confirmed.']='Abonnement déja confirmé.';33 34 # _public.php:9335 $GLOBALS['__l10n']['Your subscription is confirmed.']='Votre inscription est confirmée.';36 37 # _public.php:9338 # _public.php:10939 # _public.php:12540 # _public.php:14141 # _public.php:15542 $GLOBALS['__l10n']['You will soon receive an email.']='Vous allez bientôt recevoir un email.';43 44 22 # _public.php:104 45 23 # _public.php:120 46 24 # _public.php:136 47 25 # _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 48 48 $GLOBALS['__l10n']['Unable to find you account informations.']='Impossible de trouver les informations de votre compte.'; 49 49 50 # _public.php:1 0650 # _public.php:110 51 51 $GLOBALS['__l10n']['Account already enabled.']='Abonnement déja activé.'; 52 52 53 # _public.php:1 0954 # inc/class.newsletter.core.php:1 53653 # _public.php:113 54 # inc/class.newsletter.core.php:1245 55 55 $GLOBALS['__l10n']['Your account is enabled.']='Votre abonnement est activé.'; 56 56 57 # _public.php:12 257 # _public.php:126 58 58 $GLOBALS['__l10n']['Account already disabled.']='Abonnement déja désactivé.'; 59 59 60 # _public.php:12 561 # inc/class.newsletter.core.php:1 52960 # _public.php:129 61 # inc/class.newsletter.core.php:1238 62 62 $GLOBALS['__l10n']['Your account is disabled.']='Votre abonnement est désactivé.'; 63 63 64 # _public.php:1 3864 # _public.php:142 65 65 $GLOBALS['__l10n']['Account already suspended.']='Abonnement déja suspendu.'; 66 66 67 # _public.php:14 168 # inc/class.newsletter.core.php:1 52267 # _public.php:145 68 # inc/class.newsletter.core.php:1231 69 69 $GLOBALS['__l10n']['Your account is suspended.']='Votre abonnement est suspendu.'; 70 70 71 # _public.php:15 571 # _public.php:159 72 72 $GLOBALS['__l10n']['Your sending format is']='Votre format d\'envoi est'; 73 73 74 # _public.php:1 7874 # _public.php:182 75 75 $GLOBALS['__l10n']['Bad captcha code.']='Mauvais code de vérification.'; 76 76 77 # _public.php:20 177 # _public.php:205 78 78 $GLOBALS['__l10n']['Error in formular.']='Erreur dans le formulaire.'; 79 79 80 # _public.php:2 1981 # _public.php:4 3680 # _public.php:223 81 # _public.php:440 82 82 # _widgets.php:25 83 83 # _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 86 87 $GLOBALS['__l10n']['Newsletter']='Lettre d\'informations'; 87 88 88 # _public.php:27 289 # _public.php:49 490 # _public.php:49 591 # inc/class.newsletter.admin.php: 49989 # _public.php:276 90 # _public.php:498 91 # _public.php:499 92 # inc/class.newsletter.admin.php:504 92 93 $GLOBALS['__l10n']['Captcha']='Code visuel'; 93 94 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 95 116 # _public.php:383 96 117 # _public.php:468 97 # _public.php:47398 # inc/class.newsletter.admin.php:91899 $GLOBALS['__l10n']['Suspend']='Suspendre';100 101 # _public.php:302102 # _public.php:386103 # _public.php:474104 $GLOBALS['__l10n']['Resume']='Résumé';105 106 # _public.php:321107 # _public.php:364108 # _public.php:457109 # inc/class.newsletter.admin.php:341110 # inc/class.newsletter.admin.php:937111 # inc/class.newsletter.admin.php:989112 $GLOBALS['__l10n']['text']='texte';113 114 # _public.php:328115 # _public.php:379116 # _public.php:464117 118 $GLOBALS['__l10n']['Change format']='Changer le format'; 118 119 119 # _public.php:36 1120 # _public.php:45 4120 # _public.php:365 121 # _public.php:458 121 122 $GLOBALS['__l10n']['Format']='Format'; 122 123 123 # _public.php:36 3124 # _public.php:4 56124 # _public.php:367 125 # _public.php:460 125 126 # inc/class.newsletter.admin.php:342 126 # inc/class.newsletter.admin.php:9 36127 # inc/class.newsletter.admin.php:99 0127 # inc/class.newsletter.admin.php:941 128 # inc/class.newsletter.admin.php:995 128 129 $GLOBALS['__l10n']['html']='html'; 129 130 130 # _public.php:3 88131 # _public.php:4 76132 # _public.php:48 1131 # _public.php:392 132 # _public.php:480 133 # _public.php:485 133 134 $GLOBALS['__l10n']['Unsubscribe']='Se désabonner'; 134 135 135 # _public.php:4 39136 # _public.php:443 136 137 # _widgets.php:32 137 138 $GLOBALS['__l10n']['Subscription link']='S\'abonner'; 138 139 139 # _public.php:45 1140 # _public.php:455 140 141 $GLOBALS['__l10n']['Email']='Courriel'; 141 142 142 # _public.php:4 59143 # _public.php:4 79143 # _public.php:463 144 # _public.php:483 144 145 $GLOBALS['__l10n']['Actions']='Actions'; 145 146 … … 175 176 $GLOBALS['__l10n']['Unable to write file.']='Impossible d\'écrire le fichier.'; 176 177 177 # inc/class.newsletter.admin.php:39 4178 # index.php:8 56178 # inc/class.newsletter.admin.php:395 179 # index.php:886 179 180 $GLOBALS['__l10n']['Settings']='Paramètres'; 180 181 181 # inc/class.newsletter.admin.php:40 6182 # inc/class.newsletter.admin.php:407 182 183 $GLOBALS['__l10n']['Editor name']='Nom de l\'éditeur'; 183 184 184 # inc/class.newsletter.admin.php:41 0185 # inc/class.newsletter.admin.php:411 185 186 $GLOBALS['__l10n']['Editor email']='Email de l\'éditeur'; 186 187 187 # inc/class.newsletter.admin.php:41 4188 # inc/class.newsletter.admin.php:415 188 189 $GLOBALS['__l10n']['Message presentation']='Message de présentation'; 189 190 190 # inc/class.newsletter.admin.php:41 8191 # inc/class.newsletter.admin.php:419 191 192 $GLOBALS['__l10n']['Presentation message for posts']='Message de présentation pour les billets'; 192 193 193 # inc/class.newsletter.admin.php:42 2194 # inc/class.newsletter.admin.php:423 194 195 $GLOBALS['__l10n']['Introductory confirm message']='Introduction au lien de confirmation'; 195 196 196 # inc/class.newsletter.admin.php:42 6197 # inc/class.newsletter.admin.php:427 197 198 $GLOBALS['__l10n']['Title confirmation link']='Titre du lien de confirmation'; 198 199 199 # inc/class.newsletter.admin.php:43 0200 # inc/class.newsletter.admin.php:431 200 201 $GLOBALS['__l10n']['Subject of the mail Confirm']='Sujet du mail de confirmation'; 201 202 202 # inc/class.newsletter.admin.php:43 4203 # inc/class.newsletter.admin.php:435 203 204 $GLOBALS['__l10n']['Introductory disable message']='Introduction au lien de désactivation'; 204 205 205 # inc/class.newsletter.admin.php:43 8206 # inc/class.newsletter.admin.php:439 206 207 $GLOBALS['__l10n']['Title disable link']='Titre du lien de désactivation'; 207 208 208 # inc/class.newsletter.admin.php:44 2209 # inc/class.newsletter.admin.php:443 209 210 $GLOBALS['__l10n']['Subject of the mail Disable']='Sujet du mail de désactivation'; 210 211 211 # inc/class.newsletter.admin.php:44 6212 # inc/class.newsletter.admin.php:447 212 213 $GLOBALS['__l10n']['Introductory enable message']='Introduction au lien d\'activation'; 213 214 214 # inc/class.newsletter.admin.php:45 0215 # inc/class.newsletter.admin.php:451 215 216 $GLOBALS['__l10n']['Title enable link']='Titre du lien d\'activation'; 216 217 217 # inc/class.newsletter.admin.php:45 4218 # inc/class.newsletter.admin.php:455 218 219 $GLOBALS['__l10n']['Subject of the mail Enable']='Sujet du mail d\'activation'; 219 220 220 # inc/class.newsletter.admin.php:45 8221 # inc/class.newsletter.admin.php:459 221 222 $GLOBALS['__l10n']['Introductory suspend message']='Introduction au lien de suspension'; 222 223 223 # inc/class.newsletter.admin.php:46 2224 # inc/class.newsletter.admin.php:463 224 225 $GLOBALS['__l10n']['Title suspend link']='Titre du lien de suspension'; 225 226 226 # inc/class.newsletter.admin.php:46 6227 # inc/class.newsletter.admin.php:467 227 228 $GLOBALS['__l10n']['Subject of the mail Suspend']='Sujet du mail de suspension'; 228 229 229 # inc/class.newsletter.admin.php:47 0230 # inc/class.newsletter.admin.php:471 230 231 $GLOBALS['__l10n']['Subject of the mail Resume']='Sujet du mail de résumé'; 231 232 232 # inc/class.newsletter.admin.php:47 4233 # inc/class.newsletter.admin.php:475 233 234 $GLOBALS['__l10n']['Subject of the mail Changing mode']='Sujet du mail de changement de mode'; 234 235 235 # inc/class.newsletter.admin.php:47 8236 # inc/class.newsletter.admin.php:479 236 237 $GLOBALS['__l10n']['Subject of the Newsletter']='Sujet de la Newsletter'; 237 238 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 239 243 $GLOBALS['__l10n']['Introductory message']='Message d\'introduction'; 240 244 241 # inc/class.newsletter.admin.php:4 87245 # inc/class.newsletter.admin.php:492 242 246 $GLOBALS['__l10n']['Concluding message']='Message de conclusion'; 243 247 244 # inc/class.newsletter.admin.php:49 0248 # inc/class.newsletter.admin.php:495 245 249 $GLOBALS['__l10n']['Message presentation form']='Message de présentation du formulaire'; 246 250 247 # inc/class.newsletter.admin.php: 496251 # inc/class.newsletter.admin.php:501 248 252 $GLOBALS['__l10n']['Advanced Settings']='Paramètres avancés'; 249 253 250 # inc/class.newsletter.admin.php:50 0254 # inc/class.newsletter.admin.php:505 251 255 $GLOBALS['__l10n']['Default format for sending']='Format par défaut pour l\'envoi'; 252 256 253 # inc/class.newsletter.admin.php:5 05257 # inc/class.newsletter.admin.php:510 254 258 $GLOBALS['__l10n']['Use default format for sending']='Utiliser le format par défaut pour l\'envoi'; 255 259 256 # inc/class.newsletter.admin.php:5 09260 # inc/class.newsletter.admin.php:514 257 261 $GLOBALS['__l10n']['Automatic send']='Envoi automatique'; 258 262 259 # inc/class.newsletter.admin.php:51 3263 # inc/class.newsletter.admin.php:518 260 264 $GLOBALS['__l10n']['Notification sending']='Accusé de réception'; 261 265 262 # inc/class.newsletter.admin.php:5 15266 # inc/class.newsletter.admin.php:520 263 267 $GLOBALS['__l10n']['Minimum posts']='Nombre minimum de billets'; 264 268 265 # inc/class.newsletter.admin.php:5 18269 # inc/class.newsletter.admin.php:523 266 270 $GLOBALS['__l10n']['Maximum posts']='Nombre maximal de billets'; 267 271 268 # inc/class.newsletter.admin.php:52 3272 # inc/class.newsletter.admin.php:528 269 273 $GLOBALS['__l10n']['View contents posts']='Affiche le contenu des billets'; 270 274 271 # inc/class.newsletter.admin.php:5 25275 # inc/class.newsletter.admin.php:530 272 276 $GLOBALS['__l10n']['Size contents posts']='Taille maximale du contenu des billets'; 273 277 274 # inc/class.newsletter.admin.php:53 3278 # inc/class.newsletter.admin.php:538 275 279 $GLOBALS['__l10n']['Use suspend option']='Utiliser l\'option Suspendre'; 276 280 277 # inc/class.newsletter.admin.php:54 1281 # inc/class.newsletter.admin.php:546 278 282 $GLOBALS['__l10n']['Defaults']='Défauts'; 279 283 280 # inc/class.newsletter.admin.php:55 1281 # inc/class.newsletter.admin.php:68 3282 # inc/class.newsletter.admin.php:8 38283 # inc/class.newsletter.admin.php:96 3284 # inc/class.newsletter.admin.php:10 79284 # 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 285 289 $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'; 286 290 287 # inc/class.newsletter.admin.php:59 1288 # inc/class.newsletter.admin.php:67 3291 # inc/class.newsletter.admin.php:596 292 # inc/class.newsletter.admin.php:678 289 293 $GLOBALS['__l10n']['Planning newsletter']='Planification de la newsletter'; 290 294 291 # inc/class.newsletter.admin.php:59 4295 # inc/class.newsletter.admin.php:599 292 296 $GLOBALS['__l10n']['Interval time in seconds between 2 runs']='Intervalle de temps en secondes entre 2 exécutions'; 293 297 294 # inc/class.newsletter.admin.php: 598298 # inc/class.newsletter.admin.php:603 295 299 $GLOBALS['__l10n']['samples']='exemples'; 296 300 297 # inc/class.newsletter.admin.php: 598301 # inc/class.newsletter.admin.php:603 298 302 $GLOBALS['__l10n']['day']='jour'; 299 303 300 # inc/class.newsletter.admin.php: 598304 # inc/class.newsletter.admin.php:603 301 305 $GLOBALS['__l10n']['week']='semaine'; 302 306 303 # inc/class.newsletter.admin.php:60 1307 # inc/class.newsletter.admin.php:606 304 308 $GLOBALS['__l10n']['Date for the first run']='Date de la première exécution'; 305 309 306 # inc/class.newsletter.admin.php:6 07310 # inc/class.newsletter.admin.php:612 307 311 $GLOBALS['__l10n']['Unschedule']='Déplanifier'; 308 312 309 # inc/class.newsletter.admin.php:6 07313 # inc/class.newsletter.admin.php:612 310 314 $GLOBALS['__l10n']['Schedule']='Planifier'; 311 315 312 # inc/class.newsletter.admin.php:62 3316 # inc/class.newsletter.admin.php:628 313 317 $GLOBALS['__l10n']['Scheduled task']='Tâche planifiée'; 314 318 315 # inc/class.newsletter.admin.php:63 3319 # inc/class.newsletter.admin.php:638 316 320 $GLOBALS['__l10n']['State']='Etat'; 317 321 318 # inc/class.newsletter.admin.php:6 37322 # inc/class.newsletter.admin.php:642 319 323 $GLOBALS['__l10n']['Interval']='Intervalle'; 320 324 321 # inc/class.newsletter.admin.php:64 1325 # inc/class.newsletter.admin.php:646 322 326 $GLOBALS['__l10n']['Last run']='Dernière exécution'; 323 327 324 # inc/class.newsletter.admin.php:6 45328 # inc/class.newsletter.admin.php:650 325 329 $GLOBALS['__l10n']['Next run']='Prochaine exécution'; 326 330 327 # inc/class.newsletter.admin.php:6 49331 # inc/class.newsletter.admin.php:654 328 332 $GLOBALS['__l10n']['Remaining Time']='Temps restant'; 329 333 330 # inc/class.newsletter.admin.php:6 59331 # inc/class.newsletter.admin.php:92 0334 # inc/class.newsletter.admin.php:664 335 # inc/class.newsletter.admin.php:925 332 336 $GLOBALS['__l10n']['Disable']='Désactiver'; 333 337 334 # inc/class.newsletter.admin.php:6 59335 # inc/class.newsletter.admin.php:92 1338 # inc/class.newsletter.admin.php:664 339 # inc/class.newsletter.admin.php:926 336 340 $GLOBALS['__l10n']['Enable']='Activer'; 337 341 338 # inc/class.newsletter.admin.php:67 4342 # inc/class.newsletter.admin.php:679 339 343 $GLOBALS['__l10n']['Install the plugin dcCron for using planning']='Installez l\'extension dcCron pour utiliser la planification'; 340 344 341 # inc/class.newsletter.admin.php:7 36345 # inc/class.newsletter.admin.php:741 342 346 $GLOBALS['__l10n']['Plugin state']='Etat de l\'extension'; 343 347 344 # inc/class.newsletter.admin.php:7 39348 # inc/class.newsletter.admin.php:744 345 349 $GLOBALS['__l10n']['Activate plugin']='Activer l\'extension'; 346 350 347 # inc/class.newsletter.admin.php:7 57351 # inc/class.newsletter.admin.php:762 348 352 $GLOBALS['__l10n']['Import/Export subscribers list']='Import/Export de la liste des abonnés'; 349 353 350 # inc/class.newsletter.admin.php:76 0354 # inc/class.newsletter.admin.php:765 351 355 $GLOBALS['__l10n']['This blog only']='Ce blog seulement'; 352 356 353 # inc/class.newsletter.admin.php:76 4357 # inc/class.newsletter.admin.php:769 354 358 $GLOBALS['__l10n']['All datas']='Toutes les données'; 355 359 356 # inc/class.newsletter.admin.php:78 1360 # inc/class.newsletter.admin.php:786 357 361 $GLOBALS['__l10n']['Adapt the template for the theme']='Adapter le template pour le thème'; 358 362 359 # inc/class.newsletter.admin.php:78 2363 # inc/class.newsletter.admin.php:787 360 364 $GLOBALS['__l10n']['Theme name']='Nom du thème'; 361 365 362 # inc/class.newsletter.admin.php:7 86366 # inc/class.newsletter.admin.php:791 363 367 $GLOBALS['__l10n']['Adapt']='Adapter'; 364 368 365 # inc/class.newsletter.admin.php:79 2369 # inc/class.newsletter.admin.php:797 366 370 $GLOBALS['__l10n']['Clic here to test the template.']='Cliquez ici pour tester le template.'; 367 371 368 # inc/class.newsletter.admin.php:80 4372 # inc/class.newsletter.admin.php:809 369 373 $GLOBALS['__l10n']['Check for plugin update']='Vérifier les mises à jour'; 370 374 371 # inc/class.newsletter.admin.php:81 1375 # inc/class.newsletter.admin.php:816 372 376 $GLOBALS['__l10n']['Check']='Vérifier'; 373 377 374 # inc/class.newsletter.admin.php:82 1378 # inc/class.newsletter.admin.php:826 375 379 $GLOBALS['__l10n']['Erasing all informations about newsletter in database']='Suppression de toutes les informations concernant newsletter dans votre base de données'; 376 380 377 # inc/class.newsletter.admin.php:82 2381 # inc/class.newsletter.admin.php:827 378 382 $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'; 379 383 380 # inc/class.newsletter.admin.php:8 25384 # inc/class.newsletter.admin.php:830 381 385 $GLOBALS['__l10n']['Erasing']='Suppression'; 382 386 383 # inc/class.newsletter.admin.php:86 3387 # inc/class.newsletter.admin.php:868 384 388 $GLOBALS['__l10n']['No subscriber for this blog.']='Pas d\'abonnés pour ce blog.'; 385 389 386 # inc/class.newsletter.admin.php:8 78390 # inc/class.newsletter.admin.php:883 387 391 $GLOBALS['__l10n']['Subscriber']='Abonné'; 388 392 389 # inc/class.newsletter.admin.php:8 79393 # inc/class.newsletter.admin.php:884 390 394 $GLOBALS['__l10n']['Subscribed']='Inscription'; 391 395 392 # inc/class.newsletter.admin.php:88 1393 # inc/class.newsletter.admin.php:92 2396 # inc/class.newsletter.admin.php:886 397 # inc/class.newsletter.admin.php:927 394 398 $GLOBALS['__l10n']['Last sent']='Dernier envoi'; 395 399 396 # inc/class.newsletter.admin.php:88 2397 # inc/class.newsletter.admin.php:10 28400 # inc/class.newsletter.admin.php:887 401 # inc/class.newsletter.admin.php:1033 398 402 $GLOBALS['__l10n']['Mode send']='Mode d\'envoi'; 399 403 400 # inc/class.newsletter.admin.php:88 3401 # index.php:8 53404 # inc/class.newsletter.admin.php:888 405 # index.php:883 402 406 $GLOBALS['__l10n']['Edit']='Modifier'; 403 407 404 # inc/class.newsletter.admin.php:89 1405 # inc/class.newsletter.admin.php:89 1408 # inc/class.newsletter.admin.php:896 409 # inc/class.newsletter.admin.php:896 406 410 $GLOBALS['__l10n']['Edit subscriber']='Modifier l\'abonné'; 407 411 408 # inc/class.newsletter.admin.php:896409 412 # inc/class.newsletter.admin.php:901 410 # inc/class.newsletter.admin.php: 1016413 # inc/class.newsletter.admin.php:906 411 414 # inc/class.newsletter.admin.php:1021 415 # inc/class.newsletter.admin.php:1026 412 416 # inc/class.newsletter.cron.php:142 413 417 $GLOBALS['__l10n']['Never']='Jamais'; 414 418 415 # inc/class.newsletter.admin.php:9 26419 # inc/class.newsletter.admin.php:931 416 420 $GLOBALS['__l10n']['Confirmation']='Confirmation'; 417 421 418 # inc/class.newsletter.admin.php:9 28422 # inc/class.newsletter.admin.php:933 419 423 $GLOBALS['__l10n']['Suspension']='Suspension'; 420 424 421 # inc/class.newsletter.admin.php:93 0425 # inc/class.newsletter.admin.php:935 422 426 $GLOBALS['__l10n']['Deactivation']='Désactivation'; 423 427 424 # inc/class.newsletter.admin.php:93 1428 # inc/class.newsletter.admin.php:936 425 429 $GLOBALS['__l10n']['Activation']='Activation'; 426 430 427 # inc/class.newsletter.admin.php:93 2431 # inc/class.newsletter.admin.php:937 428 432 $GLOBALS['__l10n']['Changing format']='Changer de format'; 429 433 430 # inc/class.newsletter.admin.php:94 3434 # inc/class.newsletter.admin.php:948 431 435 $GLOBALS['__l10n']['refresh']='actualiser'; 432 436 433 # inc/class.newsletter.admin.php:94 4437 # inc/class.newsletter.admin.php:949 434 438 $GLOBALS['__l10n']['check all']='sélectionner tout'; 435 439 436 # inc/class.newsletter.admin.php:9 45440 # inc/class.newsletter.admin.php:950 437 441 $GLOBALS['__l10n']['uncheck all']='désélectionner tout'; 438 442 439 # inc/class.newsletter.admin.php:9 46443 # inc/class.newsletter.admin.php:951 440 444 $GLOBALS['__l10n']['toggle check all']='inverser la sélection'; 441 445 442 # inc/class.newsletter.admin.php:95 0446 # inc/class.newsletter.admin.php:955 443 447 $GLOBALS['__l10n']['Set state']='Modifier l\'état'; 444 448 445 # inc/class.newsletter.admin.php:95 1449 # inc/class.newsletter.admin.php:956 446 450 $GLOBALS['__l10n']['Set']='Modifier'; 447 451 448 # inc/class.newsletter.admin.php:95 2452 # inc/class.newsletter.admin.php:957 449 453 $GLOBALS['__l10n']['Mail to send']='Courrier à envoyer'; 450 454 451 # inc/class.newsletter.admin.php:9 55455 # inc/class.newsletter.admin.php:960 452 456 $GLOBALS['__l10n']['Set format']='Modifier le format'; 453 457 454 # inc/class.newsletter.admin.php:9 56458 # inc/class.newsletter.admin.php:961 455 459 $GLOBALS['__l10n']['Change']='Changer'; 456 460 457 # inc/class.newsletter.admin.php:10 08461 # inc/class.newsletter.admin.php:1013 458 462 $GLOBALS['__l10n']['Edit a subscriber']='Modifier un abonné'; 459 463 460 # inc/class.newsletter.admin.php:101 0464 # inc/class.newsletter.admin.php:1015 461 465 $GLOBALS['__l10n']['Update']='Mettre à jour'; 462 466 463 # inc/class.newsletter.admin.php:102 4467 # inc/class.newsletter.admin.php:1029 464 468 $GLOBALS['__l10n']['Subscribed:']='Inscrit:'; 465 469 466 # inc/class.newsletter.admin.php:10 26470 # inc/class.newsletter.admin.php:1031 467 471 $GLOBALS['__l10n']['Last sent:']='Dernier envoi:'; 468 472 469 # inc/class.newsletter.admin.php:103 0473 # inc/class.newsletter.admin.php:1035 470 474 $GLOBALS['__l10n']['Registration code:']='Code d\'inscription:'; 471 475 472 # inc/class.newsletter.admin.php:103 4476 # inc/class.newsletter.admin.php:1039 473 477 $GLOBALS['__l10n']['enabled']='actif'; 474 478 475 # inc/class.newsletter.admin.php:10 35479 # inc/class.newsletter.admin.php:1040 476 480 $GLOBALS['__l10n']['suspended']='suspendu'; 477 481 478 # inc/class.newsletter.admin.php:10 36482 # inc/class.newsletter.admin.php:1041 479 483 $GLOBALS['__l10n']['disabled']='désactivé'; 480 484 481 # inc/class.newsletter.admin.php:10 46485 # inc/class.newsletter.admin.php:1051 482 486 $GLOBALS['__l10n']['Add a subscriber']='Ajouter un abonné'; 483 487 484 # inc/class.newsletter.admin.php:105 4488 # inc/class.newsletter.admin.php:1059 485 489 $GLOBALS['__l10n']['Not allowed.']='Interdit.'; 486 490 487 # inc/class.newsletter.core.php:8 80491 # inc/class.newsletter.core.php:812 488 492 $GLOBALS['__l10n']['Your account has been suspended.']='Votre compte a été suspendu.'; 489 493 490 # inc/class.newsletter.core.php:8 87494 # inc/class.newsletter.core.php:819 491 495 $GLOBALS['__l10n']['Thank you for your subscription.']='Merci pour votre inscription !'; 492 496 493 # inc/class.newsletter.core.php:8 88497 # inc/class.newsletter.core.php:820 494 498 $GLOBALS['__l10n']['Your account has been canceled.']='Votre compte a été supprimé.'; 495 499 496 # inc/class.newsletter.core.php:8 89500 # inc/class.newsletter.core.php:821 497 501 $GLOBALS['__l10n']['Your account has been validated.']='Votre compte a été validé.'; 498 502 499 # inc/class.newsletter.core.php:8 90503 # inc/class.newsletter.core.php:822 500 504 $GLOBALS['__l10n']['Your sending format has been updated.']='Votre format d\'envoi a été mis à jour.'; 501 505 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 507 519 $GLOBALS['__l10n']['Links:']='Liens:'; 508 520 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 531 522 # inc/class.newsletter.plugin.php:610 532 523 $GLOBALS['__l10n']['Newsletter subscription confirmation for']='Confirmation d\'inscription pour'; 533 524 534 # inc/class.newsletter.core.php:1 127525 # inc/class.newsletter.core.php:1032 535 526 $GLOBALS['__l10n']['Thanks you for subscribing.']='Merci pour votre inscription.'; 536 527 537 # inc/class.newsletter.core.php:1 213528 # inc/class.newsletter.core.php:1073 538 529 # inc/class.newsletter.plugin.php:630 539 530 $GLOBALS['__l10n']['Newsletter account suspend for']='Suspension d\'abonnement à la lettre d\'information pour'; 540 531 541 # inc/class.newsletter.core.php:1 213542 # inc/class.newsletter.core.php:1 381543 # inc/class.newsletter.core.php:1 464544 # inc/class.newsletter.core.php:1 621532 # 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 545 536 $GLOBALS['__l10n']['Have a nice day !']='Passez une bonne journée !'; 546 537 547 # inc/class.newsletter.core.php:1 296538 # inc/class.newsletter.core.php:1113 548 539 # inc/class.newsletter.plugin.php:650 549 540 $GLOBALS['__l10n']['Newsletter account activation for']='Activation d\'abonnement à la lettre d\'information pour'; 550 541 551 # inc/class.newsletter.core.php:1 296542 # inc/class.newsletter.core.php:1113 552 543 $GLOBALS['__l10n']['Thank you for subscribing.']='Merci pour votre inscription.'; 553 544 554 # inc/class.newsletter.core.php:1 381545 # inc/class.newsletter.core.php:1154 555 546 # inc/class.newsletter.plugin.php:670 556 547 $GLOBALS['__l10n']['Newsletter account removal for']='Suppression d\'abonnement à la lettre d\'information pour'; 557 548 558 # inc/class.newsletter.core.php:1 464549 # inc/class.newsletter.core.php:1194 559 550 # inc/class.newsletter.plugin.php:690 560 551 $GLOBALS['__l10n']['Newsletter account resume for']='Information sur l\'abonnement à la lettre d\'information pour'; 561 552 562 # inc/class.newsletter.core.php:1 543553 # inc/class.newsletter.core.php:1252 563 554 $GLOBALS['__l10n']['Your account is pending confirmation.']='Votre abonnement est en attente de confirmation.'; 564 555 565 # inc/class.newsletter.core.php:1 562556 # inc/class.newsletter.core.php:1271 566 557 $GLOBALS['__l10n']['Your sending mode is']='Votre format est'; 567 558 568 # inc/class.newsletter.core.php:1 621559 # inc/class.newsletter.core.php:1297 569 560 # inc/class.newsletter.plugin.php:710 570 561 $GLOBALS['__l10n']['Newsletter account change format for']='Changement du format sur l\'abonnement à la lettre d\'information pour'; 571 562 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 584 568 $GLOBALS['__l10n']['Bad email !']='Mauvais email ou format incorrect !'; 585 569 586 # inc/class.newsletter.core.php:1 688570 # inc/class.newsletter.core.php:1396 587 571 $GLOBALS['__l10n']['Email already exist !']='Email déja existant !'; 588 572 589 # inc/class.newsletter.core.php:1 690573 # inc/class.newsletter.core.php:1398 590 574 $GLOBALS['__l10n']['Error creating account !']='Erreur lors de la création du compte !'; 591 575 … … 617 601 $GLOBALS['__l10n']['To suspend your account']='Pour suspendre votre abonnement'; 618 602 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 620 607 $GLOBALS['__l10n']['No new version available.']='Pas de nouvelle version.'; 621 608 622 # inc/class.newsletter.plugin.php:14 35609 # inc/class.newsletter.plugin.php:1461 623 610 $GLOBALS['__l10n']['New version available:']='Nouvelle version disponible:'; 624 611 625 # inc/class.newsletter.plugin.php:14 41612 # inc/class.newsletter.plugin.php:1467 626 613 $GLOBALS['__l10n']['Read the post.']='Lire le billet.'; 627 614 628 # inc/class.newsletter.plugin.php:14 41615 # inc/class.newsletter.plugin.php:1467 629 616 $GLOBALS['__l10n']['post']='billet'; 630 617 631 # inc/class.newsletter.plugin.php:14 43618 # inc/class.newsletter.plugin.php:1469 632 619 $GLOBALS['__l10n']['Installer.']='Installeur.'; 633 620 634 # inc/class.newsletter.plugin.php:14 43621 # inc/class.newsletter.plugin.php:1469 635 622 $GLOBALS['__l10n']['pkg.gz']='pkg.gz'; 636 623 637 # inc/class.newsletter.plugin.php:14 45624 # inc/class.newsletter.plugin.php:1471 638 625 $GLOBALS['__l10n']['Archive.']='Archive.'; 639 626 640 # inc/class.newsletter.plugin.php:14 45627 # inc/class.newsletter.plugin.php:1471 641 628 $GLOBALS['__l10n']['tar.gz']='tar.gz'; 642 629 643 # index.php: 69644 # index.php:2 86645 # index.php: 299630 # index.php:72 631 # index.php:295 632 # index.php:308 646 633 $GLOBALS['__l10n']['Settings updated.']='Paramètres mis à jour.'; 647 634 648 # index.php:8 4649 # index.php:8 5635 # index.php:87 636 # index.php:88 650 637 $GLOBALS['__l10n']['You must input a valid email !']='Vous devez saisir un email valide !'; 651 638 652 # index.php:3 18653 # index.php:3 57654 # index.php:3 82655 # index.php:4 08639 # index.php:327 640 # index.php:366 641 # index.php:391 642 # index.php:417 656 643 $GLOBALS['__l10n']['Planning updated.']='Planning mis à jour.'; 657 644 658 # index.php:3 26645 # index.php:335 659 646 $GLOBALS['__l10n']['Error during create planning task.']='Erreur pendant la création de la tâche planifiée.'; 660 647 661 # index.php:4 44662 # index.php: 495648 # index.php:453 649 # index.php:504 663 650 $GLOBALS['__l10n']['Missing informations.']='Informations manquantes.'; 664 651 665 # index.php:4 47652 # index.php:456 666 653 $GLOBALS['__l10n']['Error adding subscriber.']='Erreur lors de l\'ajout d\'un abonné.'; 667 654 668 # index.php:4 49655 # index.php:458 669 656 $GLOBALS['__l10n']['Subscriber added.']='Abonné ajouté.'; 670 657 671 # index.php:5 02658 # index.php:511 672 659 $GLOBALS['__l10n']['Error updating subscriber.']='Erreur lors de la mise à jour d\'un abonné.'; 673 660 674 # index.php:5 04661 # index.php:513 675 662 $GLOBALS['__l10n']['Subscriber updated.']='Abonné mis à jour.'; 676 663 677 # index.php:5 18664 # index.php:527 678 665 $GLOBALS['__l10n']['No account removed.']='Pas de compte supprimé.'; 679 666 680 # index.php:5 26667 # index.php:535 681 668 $GLOBALS['__l10n']['Account(s) successfully removed.']='Compte(s) supprimé(s) avec succès.'; 682 669 683 # index.php:54 0670 # index.php:549 684 671 $GLOBALS['__l10n']['No account suspended.']='Pas de compte suspendu.'; 685 672 686 # index.php:5 48673 # index.php:557 687 674 $GLOBALS['__l10n']['Account(s) successfully suspended.']='Compte(s) suspendu(s) avec succès.'; 688 675 689 # index.php:5 62676 # index.php:571 690 677 $GLOBALS['__l10n']['No account enabled.']='Pas de compte activé.'; 691 678 692 # index.php:57 0679 # index.php:579 693 680 $GLOBALS['__l10n']['Account(s) successfully enabled.']='Compte(s) activé(s) avec succés.'; 694 681 695 # index.php:5 84682 # index.php:593 696 683 $GLOBALS['__l10n']['No account disabled.']='Pas de compte désactivé.'; 697 684 698 # index.php: 592685 # index.php:601 699 686 $GLOBALS['__l10n']['Account(s) successfully disabled.']='Compte(s) désactivé(s) avec succès.'; 700 687 701 # index.php:6 25688 # index.php:640 702 689 $GLOBALS['__l10n']['No account changed.']='Pas de compte modifié.'; 703 690 704 # index.php:6 30691 # index.php:646 705 692 $GLOBALS['__l10n']['Account(s) successfully changed.']='Compte(s) modifié(s) avec succès.'; 706 693 707 # index.php:6 49694 # index.php:667 708 695 $GLOBALS['__l10n']['Datas exported.']='Données exportées.'; 709 696 710 # index.php:6 69697 # index.php:687 711 698 $GLOBALS['__l10n']['Datas imported.']='Données importées.'; 712 699 713 # index.php:7 42714 # index.php:7 64700 # index.php:772 701 # index.php:794 715 702 $GLOBALS['__l10n']['No account(s) updated.']='Pas de compte(s) mis à jour.'; 716 703 717 # index.php:7 50704 # index.php:780 718 705 $GLOBALS['__l10n']['Format sending for account(s) successfully updated to html.']='Format d\'envoi pour le(s) abonné(s) mis à jour au format html.'; 719 706 720 # index.php: 772707 # index.php:802 721 708 $GLOBALS['__l10n']['Format sending for account(s) successfully updated to text.']='Format d\'envoi pour le(s) abonné(s) mis à jour au format text.'; 722 709 723 # index.php: 786710 # index.php:816 724 711 $GLOBALS['__l10n']['No template adapted.']='Pas de template adapté.'; 725 712 726 # index.php: 788713 # index.php:819 727 714 $GLOBALS['__l10n']['Template successfully adapted.']='Template adapté avec succès.'; 728 715 729 # index.php:8 03716 # index.php:833 730 717 $GLOBALS['__l10n']['Erasing complete.']='Nettoyage terminé.'; 731 718 732 # index.php:8 39719 # index.php:869 733 720 $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 ?'; 734 721 735 # index.php:8 50722 # index.php:880 736 723 $GLOBALS['__l10n']['Subscribers']='Abonnés'; 737 724 738 # index.php:8 59725 # index.php:889 739 726 $GLOBALS['__l10n']['Planning']='Planification'; 740 727 728 $GLOBALS['__l10n']['Newsletter is disabled.']='Newsletter est désactivé.'; 729 741 730 $GLOBALS['__l10n']['Presentation message']='Message de présentation'; 742 731 -
plugins/newsletter/trunk/locales/fr/main.po
r927 r1038 6 6 7 7 #: _install.php:40 8 #: index.php:4 58 #: index.php:48 9 9 msgid "Unable to install Newsletter." 10 10 msgstr "Impossible d'installer Newsletter" 11 11 12 #: _public.php:7 112 #: _public.php:75 13 13 msgid "Test display template." 14 14 msgstr "Test d'affichage du template." 15 15 16 #: _public.php:7 516 #: _public.php:79 17 17 msgid "About Newsletter ..." 18 18 msgstr "A propos de Newsletter ..." 19 19 20 #: _public.php: 7620 #: _public.php:80 21 21 msgid "About" 22 22 msgstr "A propos" 23 23 24 #: _public.php: 7824 #: _public.php:82 25 25 msgid "Authors" 26 26 msgstr "Auteurs" 27 27 28 #: _public.php:8429 #: _public.php:10030 #: _public.php:11631 #: _public.php:13232 #: _public.php:14833 msgid "Missing informations. "34 msgstr "Informations manquantes."35 36 28 #: _public.php:88 37 msgid "Your subscription code is invalid."38 msgstr "Votre code d'inscription est invalide."39 40 #: _public.php:9041 msgid "Account already confirmed."42 msgstr "Abonnement déja confirmé."43 44 #: _public.php:9345 msgid "Your subscription is confirmed."46 msgstr "Votre inscription est confirmée."47 48 #: _public.php:9349 #: _public.php:10950 #: _public.php:12551 #: _public.php:14152 #: _public.php:15553 msgid "You will soon receive an email."54 msgstr "Vous allez bientôt recevoir un email."55 56 29 #: _public.php:104 57 30 #: _public.php:120 58 31 #: _public.php:136 59 32 #: _public.php:152 33 msgid "Missing informations. " 34 msgstr "Informations manquantes." 35 36 #: _public.php:92 37 msgid "Your subscription code is invalid." 38 msgstr "Votre code d'inscription est invalide." 39 40 #: _public.php:94 41 msgid "Account already confirmed." 42 msgstr "Abonnement déja confirmé." 43 44 #: _public.php:97 45 msgid "Your subscription is confirmed." 46 msgstr "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 53 msgid "You will soon receive an email." 54 msgstr "Vous allez bientôt recevoir un email." 55 56 #: _public.php:108 57 #: _public.php:124 58 #: _public.php:140 59 #: _public.php:156 60 60 msgid "Unable to find you account informations." 61 61 msgstr "Impossible de trouver les informations de votre compte." 62 62 63 #: _public.php:1 0663 #: _public.php:110 64 64 msgid "Account already enabled." 65 65 msgstr "Abonnement déja activé." 66 66 67 #: _public.php:1 0968 #: inc/class.newsletter.core.php:1 53667 #: _public.php:113 68 #: inc/class.newsletter.core.php:1245 69 69 msgid "Your account is enabled." 70 70 msgstr "Votre abonnement est activé." 71 71 72 #: _public.php:12 272 #: _public.php:126 73 73 msgid "Account already disabled." 74 74 msgstr "Abonnement déja désactivé." 75 75 76 #: _public.php:12 577 #: inc/class.newsletter.core.php:1 52976 #: _public.php:129 77 #: inc/class.newsletter.core.php:1238 78 78 msgid "Your account is disabled." 79 79 msgstr "Votre abonnement est désactivé." 80 80 81 #: _public.php:1 3881 #: _public.php:142 82 82 msgid "Account already suspended." 83 83 msgstr "Abonnement déja suspendu." 84 84 85 #: _public.php:14 186 #: inc/class.newsletter.core.php:1 52285 #: _public.php:145 86 #: inc/class.newsletter.core.php:1231 87 87 msgid "Your account is suspended." 88 88 msgstr "Votre abonnement est suspendu." 89 89 90 #: _public.php:15 590 #: _public.php:159 91 91 msgid "Your sending format is" 92 92 msgstr "Votre format d'envoi est" 93 93 94 #: _public.php:1 7894 #: _public.php:182 95 95 msgid "Bad captcha code." 96 96 msgstr "Mauvais code de vérification." 97 97 98 #: _public.php:20 198 #: _public.php:205 99 99 msgid "Error in formular." 100 100 msgstr "Erreur dans le formulaire." 101 101 102 #: _public.php:2 19103 #: _public.php:4 36102 #: _public.php:223 103 #: _public.php:440 104 104 #: _widgets.php:25 105 105 #: _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 108 109 msgid "Newsletter" 109 110 msgstr "Lettre d'informations" 110 111 111 #: _public.php:27 2112 #: _public.php:49 4113 #: _public.php:49 5114 #: inc/class.newsletter.admin.php: 499112 #: _public.php:276 113 #: _public.php:498 114 #: _public.php:499 115 #: inc/class.newsletter.admin.php:504 115 116 msgid "Captcha" 116 117 msgstr "Code visuel" 117 118 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 124 msgid "Suspend" 125 msgstr "Suspendre" 126 127 #: _public.php:306 128 #: _public.php:390 129 #: _public.php:478 130 msgid "Resume" 131 msgstr "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 139 msgid "text" 140 msgstr "texte" 141 142 #: _public.php:332 119 143 #: _public.php:383 120 144 #: _public.php:468 121 #: _public.php:473122 #: inc/class.newsletter.admin.php:918123 msgid "Suspend"124 msgstr "Suspendre"125 126 #: _public.php:302127 #: _public.php:386128 #: _public.php:474129 msgid "Resume"130 msgstr "Résumé"131 132 #: _public.php:321133 #: _public.php:364134 #: _public.php:457135 #: inc/class.newsletter.admin.php:341136 #: inc/class.newsletter.admin.php:937137 #: inc/class.newsletter.admin.php:989138 msgid "text"139 msgstr "texte"140 141 #: _public.php:328142 #: _public.php:379143 #: _public.php:464144 145 msgid "Change format" 145 146 msgstr "Changer le format" 146 147 147 #: _public.php:36 1148 #: _public.php:45 4148 #: _public.php:365 149 #: _public.php:458 149 150 msgid "Format" 150 151 msgstr "Format" 151 152 152 #: _public.php:36 3153 #: _public.php:4 56153 #: _public.php:367 154 #: _public.php:460 154 155 #: inc/class.newsletter.admin.php:342 155 #: inc/class.newsletter.admin.php:9 36156 #: inc/class.newsletter.admin.php:99 0156 #: inc/class.newsletter.admin.php:941 157 #: inc/class.newsletter.admin.php:995 157 158 msgid "html" 158 159 msgstr "html" 159 160 160 #: _public.php:3 88161 #: _public.php:4 76162 #: _public.php:48 1161 #: _public.php:392 162 #: _public.php:480 163 #: _public.php:485 163 164 msgid "Unsubscribe" 164 165 msgstr "Se désabonner" 165 166 166 #: _public.php:4 39167 #: _public.php:443 167 168 #: _widgets.php:32 168 169 msgid "Subscription link" 169 170 msgstr "S'abonner" 170 171 171 #: _public.php:45 1172 #: _public.php:455 172 173 msgid "Email" 173 174 msgstr "Courriel" 174 175 175 #: _public.php:4 59176 #: _public.php:4 79176 #: _public.php:463 177 #: _public.php:483 177 178 msgid "Actions" 178 179 msgstr "Actions" … … 219 220 msgstr "Impossible d'écrire le fichier." 220 221 221 #: inc/class.newsletter.admin.php:39 4222 #: index.php:8 56222 #: inc/class.newsletter.admin.php:395 223 #: index.php:886 223 224 msgid "Settings" 224 225 msgstr "Paramètres" 225 226 226 #: inc/class.newsletter.admin.php:40 6227 #: inc/class.newsletter.admin.php:407 227 228 msgid "Editor name" 228 229 msgstr "Nom de l'éditeur" 229 230 230 #: inc/class.newsletter.admin.php:41 0231 #: inc/class.newsletter.admin.php:411 231 232 msgid "Editor email" 232 233 msgstr "Email de l'éditeur" 233 234 234 #: inc/class.newsletter.admin.php:41 4235 #: inc/class.newsletter.admin.php:415 235 236 msgid "Message presentation" 236 237 msgstr "Message de présentation" 237 238 238 #: inc/class.newsletter.admin.php:41 8239 #: inc/class.newsletter.admin.php:419 239 240 msgid "Presentation message for posts" 240 241 msgstr "Message de présentation pour les billets" 241 242 242 #: inc/class.newsletter.admin.php:42 2243 #: inc/class.newsletter.admin.php:423 243 244 msgid "Introductory confirm message" 244 245 msgstr "Introduction au lien de confirmation" 245 246 246 #: inc/class.newsletter.admin.php:42 6247 #: inc/class.newsletter.admin.php:427 247 248 msgid "Title confirmation link" 248 249 msgstr "Titre du lien de confirmation" 249 250 250 #: inc/class.newsletter.admin.php:43 0251 #: inc/class.newsletter.admin.php:431 251 252 msgid "Subject of the mail Confirm" 252 253 msgstr "Sujet du mail de confirmation" 253 254 254 #: inc/class.newsletter.admin.php:43 4255 #: inc/class.newsletter.admin.php:435 255 256 msgid "Introductory disable message" 256 257 msgstr "Introduction au lien de désactivation" 257 258 258 #: inc/class.newsletter.admin.php:43 8259 #: inc/class.newsletter.admin.php:439 259 260 msgid "Title disable link" 260 261 msgstr "Titre du lien de désactivation" 261 262 262 #: inc/class.newsletter.admin.php:44 2263 #: inc/class.newsletter.admin.php:443 263 264 msgid "Subject of the mail Disable" 264 265 msgstr "Sujet du mail de désactivation" 265 266 266 #: inc/class.newsletter.admin.php:44 6267 #: inc/class.newsletter.admin.php:447 267 268 msgid "Introductory enable message" 268 269 msgstr "Introduction au lien d'activation" 269 270 270 #: inc/class.newsletter.admin.php:45 0271 #: inc/class.newsletter.admin.php:451 271 272 msgid "Title enable link" 272 273 msgstr "Titre du lien d'activation" 273 274 274 #: inc/class.newsletter.admin.php:45 4275 #: inc/class.newsletter.admin.php:455 275 276 msgid "Subject of the mail Enable" 276 277 msgstr "Sujet du mail d'activation" 277 278 278 #: inc/class.newsletter.admin.php:45 8279 #: inc/class.newsletter.admin.php:459 279 280 msgid "Introductory suspend message" 280 281 msgstr "Introduction au lien de suspension" 281 282 282 #: inc/class.newsletter.admin.php:46 2283 #: inc/class.newsletter.admin.php:463 283 284 msgid "Title suspend link" 284 285 msgstr "Titre du lien de suspension" 285 286 286 #: inc/class.newsletter.admin.php:46 6287 #: inc/class.newsletter.admin.php:467 287 288 msgid "Subject of the mail Suspend" 288 289 msgstr "Sujet du mail de suspension" 289 290 290 #: inc/class.newsletter.admin.php:47 0291 #: inc/class.newsletter.admin.php:471 291 292 msgid "Subject of the mail Resume" 292 293 msgstr "Sujet du mail de résumé" 293 294 294 #: inc/class.newsletter.admin.php:47 4295 #: inc/class.newsletter.admin.php:475 295 296 msgid "Subject of the mail Changing mode" 296 297 msgstr "Sujet du mail de changement de mode" 297 298 298 #: inc/class.newsletter.admin.php:47 8299 #: inc/class.newsletter.admin.php:479 299 300 msgid "Subject of the Newsletter" 300 301 msgstr "Sujet de la Newsletter" 301 302 302 #: inc/class.newsletter.admin.php:484 303 #: inc/class.newsletter.admin.php:483 304 msgid "Title page of the subscribe form" 305 msgstr "Titre de la page du formulaire d'abonnement" 306 307 #: inc/class.newsletter.admin.php:489 303 308 msgid "Introductory message" 304 309 msgstr "Message d'introduction" 305 310 306 #: inc/class.newsletter.admin.php:4 87311 #: inc/class.newsletter.admin.php:492 307 312 msgid "Concluding message" 308 313 msgstr "Message de conclusion" 309 314 310 #: inc/class.newsletter.admin.php:49 0315 #: inc/class.newsletter.admin.php:495 311 316 msgid "Message presentation form" 312 317 msgstr "Message de présentation du formulaire" 313 318 314 #: inc/class.newsletter.admin.php: 496319 #: inc/class.newsletter.admin.php:501 315 320 msgid "Advanced Settings" 316 321 msgstr "Paramètres avancés" 317 322 318 #: inc/class.newsletter.admin.php:50 0323 #: inc/class.newsletter.admin.php:505 319 324 msgid "Default format for sending" 320 325 msgstr "Format par défaut pour l'envoi" 321 326 322 #: inc/class.newsletter.admin.php:5 05327 #: inc/class.newsletter.admin.php:510 323 328 msgid "Use default format for sending" 324 329 msgstr "Utiliser le format par défaut pour l'envoi" 325 330 326 #: inc/class.newsletter.admin.php:5 09331 #: inc/class.newsletter.admin.php:514 327 332 msgid "Automatic send" 328 333 msgstr "Envoi automatique" 329 334 330 #: inc/class.newsletter.admin.php:51 3335 #: inc/class.newsletter.admin.php:518 331 336 msgid "Notification sending" 332 337 msgstr "Accusé de réception" 333 338 334 #: inc/class.newsletter.admin.php:5 15339 #: inc/class.newsletter.admin.php:520 335 340 msgid "Minimum posts" 336 341 msgstr "Nombre minimum de billets" 337 342 338 #: inc/class.newsletter.admin.php:5 18343 #: inc/class.newsletter.admin.php:523 339 344 msgid "Maximum posts" 340 345 msgstr "Nombre maximal de billets" 341 346 342 #: inc/class.newsletter.admin.php:52 3347 #: inc/class.newsletter.admin.php:528 343 348 msgid "View contents posts" 344 349 msgstr "Affiche le contenu des billets" 345 350 346 #: inc/class.newsletter.admin.php:5 25351 #: inc/class.newsletter.admin.php:530 347 352 msgid "Size contents posts" 348 353 msgstr "Taille maximale du contenu des billets" 349 354 350 #: inc/class.newsletter.admin.php:53 3355 #: inc/class.newsletter.admin.php:538 351 356 msgid "Use suspend option" 352 357 msgstr "Utiliser l'option Suspendre" 353 358 354 #: inc/class.newsletter.admin.php:54 1359 #: inc/class.newsletter.admin.php:546 355 360 msgid "Defaults" 356 361 msgstr "Défauts" 357 362 358 #: inc/class.newsletter.admin.php:55 1359 #: inc/class.newsletter.admin.php:68 3360 #: inc/class.newsletter.admin.php:8 38361 #: inc/class.newsletter.admin.php:96 3362 #: inc/class.newsletter.admin.php:10 79363 #: 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 363 368 msgid "Activate the plugin in the Maintenance tab to view all options" 364 369 msgstr "Activer le plugin dans l'onglet maintenance pour afficher toutes les options" 365 370 366 #: inc/class.newsletter.admin.php:59 1367 #: inc/class.newsletter.admin.php:67 3371 #: inc/class.newsletter.admin.php:596 372 #: inc/class.newsletter.admin.php:678 368 373 msgid "Planning newsletter" 369 374 msgstr "Planification de la newsletter" 370 375 371 #: inc/class.newsletter.admin.php:59 4376 #: inc/class.newsletter.admin.php:599 372 377 msgid "Interval time in seconds between 2 runs" 373 378 msgstr "Intervalle de temps en secondes entre 2 exécutions" 374 379 375 #: inc/class.newsletter.admin.php: 598380 #: inc/class.newsletter.admin.php:603 376 381 msgid "samples" 377 382 msgstr "exemples" 378 383 379 #: inc/class.newsletter.admin.php: 598384 #: inc/class.newsletter.admin.php:603 380 385 msgid "day" 381 386 msgstr "jour" 382 387 383 #: inc/class.newsletter.admin.php: 598388 #: inc/class.newsletter.admin.php:603 384 389 msgid "week" 385 390 msgstr "semaine" 386 391 387 #: inc/class.newsletter.admin.php:60 1392 #: inc/class.newsletter.admin.php:606 388 393 msgid "Date for the first run" 389 394 msgstr "Date de la première exécution" 390 395 391 #: inc/class.newsletter.admin.php:6 07396 #: inc/class.newsletter.admin.php:612 392 397 msgid "Unschedule" 393 398 msgstr "Déplanifier" 394 399 395 #: inc/class.newsletter.admin.php:6 07400 #: inc/class.newsletter.admin.php:612 396 401 msgid "Schedule" 397 402 msgstr "Planifier" 398 403 399 #: inc/class.newsletter.admin.php:62 3404 #: inc/class.newsletter.admin.php:628 400 405 msgid "Scheduled task" 401 406 msgstr "Tâche planifiée" 402 407 403 #: inc/class.newsletter.admin.php:63 3408 #: inc/class.newsletter.admin.php:638 404 409 msgid "State" 405 410 msgstr "Etat" 406 411 407 #: inc/class.newsletter.admin.php:6 37412 #: inc/class.newsletter.admin.php:642 408 413 msgid "Interval" 409 414 msgstr "Intervalle" 410 415 411 #: inc/class.newsletter.admin.php:64 1416 #: inc/class.newsletter.admin.php:646 412 417 msgid "Last run" 413 418 msgstr "Dernière exécution" 414 419 415 #: inc/class.newsletter.admin.php:6 45420 #: inc/class.newsletter.admin.php:650 416 421 msgid "Next run" 417 422 msgstr "Prochaine exécution" 418 423 419 #: inc/class.newsletter.admin.php:6 49424 #: inc/class.newsletter.admin.php:654 420 425 msgid "Remaining Time" 421 426 msgstr "Temps restant" 422 427 423 #: inc/class.newsletter.admin.php:6 59424 #: inc/class.newsletter.admin.php:92 0428 #: inc/class.newsletter.admin.php:664 429 #: inc/class.newsletter.admin.php:925 425 430 msgid "Disable" 426 431 msgstr "Désactiver" 427 432 428 #: inc/class.newsletter.admin.php:6 59429 #: inc/class.newsletter.admin.php:92 1433 #: inc/class.newsletter.admin.php:664 434 #: inc/class.newsletter.admin.php:926 430 435 msgid "Enable" 431 436 msgstr "Activer" 432 437 433 #: inc/class.newsletter.admin.php:67 4438 #: inc/class.newsletter.admin.php:679 434 439 msgid "Install the plugin dcCron for using planning" 435 440 msgstr "Installez l'extension dcCron pour utiliser la planification" 436 441 437 #: inc/class.newsletter.admin.php:7 36442 #: inc/class.newsletter.admin.php:741 438 443 msgid "Plugin state" 439 444 msgstr "Etat de l'extension" 440 445 441 #: inc/class.newsletter.admin.php:7 39446 #: inc/class.newsletter.admin.php:744 442 447 msgid "Activate plugin" 443 448 msgstr "Activer l'extension" 444 449 445 #: inc/class.newsletter.admin.php:7 57450 #: inc/class.newsletter.admin.php:762 446 451 msgid "Import/Export subscribers list" 447 452 msgstr "Import/Export de la liste des abonnés" 448 453 449 #: inc/class.newsletter.admin.php:76 0454 #: inc/class.newsletter.admin.php:765 450 455 msgid "This blog only" 451 456 msgstr "Ce blog seulement" 452 457 453 #: inc/class.newsletter.admin.php:76 4458 #: inc/class.newsletter.admin.php:769 454 459 msgid "All datas" 455 460 msgstr "Toutes les données" 456 461 457 #: inc/class.newsletter.admin.php:78 1462 #: inc/class.newsletter.admin.php:786 458 463 msgid "Adapt the template for the theme" 459 464 msgstr "Adapter le template pour le thème" 460 465 461 #: inc/class.newsletter.admin.php:78 2466 #: inc/class.newsletter.admin.php:787 462 467 msgid "Theme name" 463 468 msgstr "Nom du thème" 464 469 465 #: inc/class.newsletter.admin.php:7 86470 #: inc/class.newsletter.admin.php:791 466 471 msgid "Adapt" 467 472 msgstr "Adapter" 468 473 469 #: inc/class.newsletter.admin.php:79 2474 #: inc/class.newsletter.admin.php:797 470 475 msgid "Clic here to test the template." 471 476 msgstr "Cliquez ici pour tester le template." 472 477 473 #: inc/class.newsletter.admin.php:80 4478 #: inc/class.newsletter.admin.php:809 474 479 msgid "Check for plugin update" 475 480 msgstr "Vérifier les mises à jour" 476 481 477 #: inc/class.newsletter.admin.php:81 1482 #: inc/class.newsletter.admin.php:816 478 483 msgid "Check" 479 484 msgstr "Vérifier" 480 485 481 #: inc/class.newsletter.admin.php:82 1486 #: inc/class.newsletter.admin.php:826 482 487 msgid "Erasing all informations about newsletter in database" 483 488 msgstr "Suppression de toutes les informations concernant newsletter dans votre base de données" 484 489 485 #: inc/class.newsletter.admin.php:82 2490 #: inc/class.newsletter.admin.php:827 486 491 msgid "Be careful, please backup your database before erasing" 487 492 msgstr "Attention, vous êtes priés de sauvegarder votre base de données avant de lancer la suppression" 488 493 489 #: inc/class.newsletter.admin.php:8 25494 #: inc/class.newsletter.admin.php:830 490 495 msgid "Erasing" 491 496 msgstr "Suppression" 492 497 493 #: inc/class.newsletter.admin.php:86 3498 #: inc/class.newsletter.admin.php:868 494 499 msgid "No subscriber for this blog." 495 500 msgstr "Pas d'abonnés pour ce blog." 496 501 497 #: inc/class.newsletter.admin.php:8 78502 #: inc/class.newsletter.admin.php:883 498 503 msgid "Subscriber" 499 504 msgstr "Abonné" 500 505 501 #: inc/class.newsletter.admin.php:8 79506 #: inc/class.newsletter.admin.php:884 502 507 msgid "Subscribed" 503 508 msgstr "Inscription" 504 509 505 #: inc/class.newsletter.admin.php:88 1506 #: inc/class.newsletter.admin.php:92 2510 #: inc/class.newsletter.admin.php:886 511 #: inc/class.newsletter.admin.php:927 507 512 msgid "Last sent" 508 513 msgstr "Dernier envoi" 509 514 510 #: inc/class.newsletter.admin.php:88 2511 #: inc/class.newsletter.admin.php:10 28515 #: inc/class.newsletter.admin.php:887 516 #: inc/class.newsletter.admin.php:1033 512 517 msgid "Mode send" 513 518 msgstr "Mode d'envoi" 514 519 515 #: inc/class.newsletter.admin.php:88 3516 #: index.php:8 53520 #: inc/class.newsletter.admin.php:888 521 #: index.php:883 517 522 msgid "Edit" 518 523 msgstr "Modifier" 519 524 520 #: inc/class.newsletter.admin.php:89 1521 #: inc/class.newsletter.admin.php:89 1525 #: inc/class.newsletter.admin.php:896 526 #: inc/class.newsletter.admin.php:896 522 527 msgid "Edit subscriber" 523 528 msgstr "Modifier l'abonné" 524 529 525 #: inc/class.newsletter.admin.php:896526 530 #: inc/class.newsletter.admin.php:901 527 #: inc/class.newsletter.admin.php: 1016531 #: inc/class.newsletter.admin.php:906 528 532 #: inc/class.newsletter.admin.php:1021 533 #: inc/class.newsletter.admin.php:1026 529 534 #: inc/class.newsletter.cron.php:142 530 535 msgid "Never" 531 536 msgstr "Jamais" 532 537 533 #: inc/class.newsletter.admin.php:9 26538 #: inc/class.newsletter.admin.php:931 534 539 msgid "Confirmation" 535 540 msgstr "Confirmation" 536 541 537 #: inc/class.newsletter.admin.php:9 28542 #: inc/class.newsletter.admin.php:933 538 543 msgid "Suspension" 539 544 msgstr "Suspension" 540 545 541 #: inc/class.newsletter.admin.php:93 0546 #: inc/class.newsletter.admin.php:935 542 547 msgid "Deactivation" 543 548 msgstr "Désactivation" 544 549 545 #: inc/class.newsletter.admin.php:93 1550 #: inc/class.newsletter.admin.php:936 546 551 msgid "Activation" 547 552 msgstr "Activation" 548 553 549 #: inc/class.newsletter.admin.php:93 2554 #: inc/class.newsletter.admin.php:937 550 555 msgid "Changing format" 551 556 msgstr "Changer de format" 552 557 553 #: inc/class.newsletter.admin.php:94 3558 #: inc/class.newsletter.admin.php:948 554 559 msgid "refresh" 555 560 msgstr "actualiser" 556 561 557 #: inc/class.newsletter.admin.php:94 4562 #: inc/class.newsletter.admin.php:949 558 563 msgid "check all" 559 564 msgstr "sélectionner tout" 560 565 561 #: inc/class.newsletter.admin.php:9 45566 #: inc/class.newsletter.admin.php:950 562 567 msgid "uncheck all" 563 568 msgstr "désélectionner tout" 564 569 565 #: inc/class.newsletter.admin.php:9 46570 #: inc/class.newsletter.admin.php:951 566 571 msgid "toggle check all" 567 572 msgstr "inverser la sélection" 568 573 569 #: inc/class.newsletter.admin.php:95 0574 #: inc/class.newsletter.admin.php:955 570 575 msgid "Set state" 571 576 msgstr "Modifier l'état" 572 577 573 #: inc/class.newsletter.admin.php:95 1578 #: inc/class.newsletter.admin.php:956 574 579 msgid "Set" 575 580 msgstr "Modifier" 576 581 577 #: inc/class.newsletter.admin.php:95 2582 #: inc/class.newsletter.admin.php:957 578 583 msgid "Mail to send" 579 584 msgstr "Courrier à envoyer" 580 585 581 #: inc/class.newsletter.admin.php:9 55586 #: inc/class.newsletter.admin.php:960 582 587 msgid "Set format" 583 588 msgstr "Modifier le format" 584 589 585 #: inc/class.newsletter.admin.php:9 56590 #: inc/class.newsletter.admin.php:961 586 591 msgid "Change" 587 592 msgstr "Changer" 588 593 589 #: inc/class.newsletter.admin.php:10 08594 #: inc/class.newsletter.admin.php:1013 590 595 msgid "Edit a subscriber" 591 596 msgstr "Modifier un abonné" 592 597 593 #: inc/class.newsletter.admin.php:101 0598 #: inc/class.newsletter.admin.php:1015 594 599 msgid "Update" 595 600 msgstr "Mettre à jour" 596 601 597 #: inc/class.newsletter.admin.php:102 4602 #: inc/class.newsletter.admin.php:1029 598 603 msgid "Subscribed:" 599 604 msgstr "Inscrit:" 600 605 601 #: inc/class.newsletter.admin.php:10 26606 #: inc/class.newsletter.admin.php:1031 602 607 msgid "Last sent:" 603 608 msgstr "Dernier envoi:" 604 609 605 #: inc/class.newsletter.admin.php:103 0610 #: inc/class.newsletter.admin.php:1035 606 611 msgid "Registration code:" 607 612 msgstr "Code d'inscription:" 608 613 609 #: inc/class.newsletter.admin.php:103 4614 #: inc/class.newsletter.admin.php:1039 610 615 msgid "enabled" 611 616 msgstr "actif" 612 617 613 #: inc/class.newsletter.admin.php:10 35618 #: inc/class.newsletter.admin.php:1040 614 619 msgid "suspended" 615 620 msgstr "suspendu" 616 621 617 #: inc/class.newsletter.admin.php:10 36622 #: inc/class.newsletter.admin.php:1041 618 623 msgid "disabled" 619 624 msgstr "désactivé" 620 625 621 #: inc/class.newsletter.admin.php:10 46626 #: inc/class.newsletter.admin.php:1051 622 627 msgid "Add a subscriber" 623 628 msgstr "Ajouter un abonné" 624 629 625 #: inc/class.newsletter.admin.php:105 4630 #: inc/class.newsletter.admin.php:1059 626 631 msgid "Not allowed." 627 632 msgstr "Interdit." 628 633 629 #: inc/class.newsletter.core.php:8 80634 #: inc/class.newsletter.core.php:812 630 635 msgid "Your account has been suspended." 631 636 msgstr "Votre compte a été suspendu." 632 637 633 #: inc/class.newsletter.core.php:8 87638 #: inc/class.newsletter.core.php:819 634 639 msgid "Thank you for your subscription." 635 640 msgstr "Merci pour votre inscription !" 636 641 637 #: inc/class.newsletter.core.php:8 88642 #: inc/class.newsletter.core.php:820 638 643 msgid "Your account has been canceled." 639 644 msgstr "Votre compte a été supprimé." 640 645 641 #: inc/class.newsletter.core.php:8 89646 #: inc/class.newsletter.core.php:821 642 647 msgid "Your account has been validated." 643 648 msgstr "Votre compte a été validé." 644 649 645 #: inc/class.newsletter.core.php:8 90650 #: inc/class.newsletter.core.php:822 646 651 msgid "Your sending format has been updated." 647 652 msgstr "Votre format d'envoi a été mis à jour." 648 653 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 655 msgid ", by" 656 msgstr ", par" 657 658 #: inc/class.newsletter.core.php:930 659 msgid "Successful mail sent for" 660 msgstr "Courriel envoyé avec succès pour" 661 662 #: inc/class.newsletter.core.php:933 663 msgid "Mail sent error for" 664 msgstr "Echec de l'envoi du courriel pour" 665 666 #: inc/class.newsletter.core.php:936 667 msgid "Nothing to send for" 668 msgstr "Rien à envoyer pour" 669 670 #: inc/class.newsletter.core.php:981 655 671 msgid "Links:" 656 672 msgstr "Liens:" 657 673 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 683 675 #: inc/class.newsletter.plugin.php:610 684 676 msgid "Newsletter subscription confirmation for" 685 677 msgstr "Confirmation d'inscription pour" 686 678 687 #: inc/class.newsletter.core.php:1 127679 #: inc/class.newsletter.core.php:1032 688 680 msgid "Thanks you for subscribing." 689 681 msgstr "Merci pour votre inscription." 690 682 691 #: inc/class.newsletter.core.php:1 213683 #: inc/class.newsletter.core.php:1073 692 684 #: inc/class.newsletter.plugin.php:630 693 685 msgid "Newsletter account suspend for" 694 686 msgstr "Suspension d'abonnement à la lettre d'information pour" 695 687 696 #: inc/class.newsletter.core.php:1 213697 #: inc/class.newsletter.core.php:1 381698 #: inc/class.newsletter.core.php:1 464699 #: inc/class.newsletter.core.php:1 621688 #: 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 700 692 msgid "Have a nice day !" 701 693 msgstr "Passez une bonne journée !" 702 694 703 #: inc/class.newsletter.core.php:1 296695 #: inc/class.newsletter.core.php:1113 704 696 #: inc/class.newsletter.plugin.php:650 705 697 msgid "Newsletter account activation for" 706 698 msgstr "Activation d'abonnement à la lettre d'information pour" 707 699 708 #: inc/class.newsletter.core.php:1 296700 #: inc/class.newsletter.core.php:1113 709 701 msgid "Thank you for subscribing." 710 702 msgstr "Merci pour votre inscription." 711 703 712 #: inc/class.newsletter.core.php:1 381704 #: inc/class.newsletter.core.php:1154 713 705 #: inc/class.newsletter.plugin.php:670 714 706 msgid "Newsletter account removal for" 715 707 msgstr "Suppression d'abonnement à la lettre d'information pour" 716 708 717 #: inc/class.newsletter.core.php:1 464709 #: inc/class.newsletter.core.php:1194 718 710 #: inc/class.newsletter.plugin.php:690 719 711 msgid "Newsletter account resume for" 720 712 msgstr "Information sur l'abonnement à la lettre d'information pour" 721 713 722 #: inc/class.newsletter.core.php:1 543714 #: inc/class.newsletter.core.php:1252 723 715 msgid "Your account is pending confirmation." 724 716 msgstr "Votre abonnement est en attente de confirmation." 725 717 726 #: inc/class.newsletter.core.php:1 562718 #: inc/class.newsletter.core.php:1271 727 719 msgid "Your sending mode is" 728 720 msgstr "Votre format est" 729 721 730 #: inc/class.newsletter.core.php:1 621722 #: inc/class.newsletter.core.php:1297 731 723 #: inc/class.newsletter.plugin.php:710 732 724 msgid "Newsletter account change format for" 733 725 msgstr "Changement du format sur l'abonnement à la lettre d'information pour" 734 726 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 748 732 msgid "Bad email !" 749 733 msgstr "Mauvais email ou format incorrect !" 750 734 751 #: inc/class.newsletter.core.php:1 688735 #: inc/class.newsletter.core.php:1396 752 736 msgid "Email already exist !" 753 737 msgstr "Email déja existant !" 754 738 755 #: inc/class.newsletter.core.php:1 690739 #: inc/class.newsletter.core.php:1398 756 740 msgid "Error creating account !" 757 741 msgstr "Erreur lors de la création du compte !" … … 792 776 msgstr "Pour suspendre votre abonnement" 793 777 794 #: inc/class.newsletter.plugin.php:1433 778 #: inc/class.newsletter.plugin.php:590 779 msgid "Newsletter for" 780 msgstr "Lettre d'information pour" 781 782 #: inc/class.newsletter.plugin.php:1459 795 783 msgid "No new version available." 796 784 msgstr "Pas de nouvelle version." 797 785 798 #: inc/class.newsletter.plugin.php:14 35786 #: inc/class.newsletter.plugin.php:1461 799 787 msgid "New version available:" 800 788 msgstr "Nouvelle version disponible:" 801 789 802 #: inc/class.newsletter.plugin.php:14 41790 #: inc/class.newsletter.plugin.php:1467 803 791 msgid "Read the post." 804 792 msgstr "Lire le billet." 805 793 806 #: inc/class.newsletter.plugin.php:14 41794 #: inc/class.newsletter.plugin.php:1467 807 795 msgid "post" 808 796 msgstr "billet" 809 797 810 #: inc/class.newsletter.plugin.php:14 43798 #: inc/class.newsletter.plugin.php:1469 811 799 msgid "Installer." 812 800 msgstr "Installeur." 813 801 814 #: inc/class.newsletter.plugin.php:14 43802 #: inc/class.newsletter.plugin.php:1469 815 803 msgid "pkg.gz" 816 804 msgstr "pkg.gz" 817 805 818 #: inc/class.newsletter.plugin.php:14 45806 #: inc/class.newsletter.plugin.php:1471 819 807 msgid "Archive." 820 808 msgstr "Archive." 821 809 822 #: inc/class.newsletter.plugin.php:14 45810 #: inc/class.newsletter.plugin.php:1471 823 811 msgid "tar.gz" 824 812 msgstr "tar.gz" 825 813 826 #: index.php: 69827 #: index.php:2 86828 #: index.php: 299814 #: index.php:72 815 #: index.php:295 816 #: index.php:308 829 817 msgid "Settings updated." 830 818 msgstr "Paramètres mis à jour." 831 819 832 #: index.php:8 4833 #: index.php:8 5820 #: index.php:87 821 #: index.php:88 834 822 msgid "You must input a valid email !" 835 823 msgstr "Vous devez saisir un email valide !" 836 824 837 #: index.php:3 18838 #: index.php:3 57839 #: index.php:3 82840 #: index.php:4 08825 #: index.php:327 826 #: index.php:366 827 #: index.php:391 828 #: index.php:417 841 829 msgid "Planning updated." 842 830 msgstr "Planning mis à jour." 843 831 844 #: index.php:3 26832 #: index.php:335 845 833 msgid "Error during create planning task." 846 834 msgstr "Erreur pendant la création de la tâche planifiée." 847 835 848 #: index.php:4 44849 #: index.php: 495836 #: index.php:453 837 #: index.php:504 850 838 msgid "Missing informations." 851 839 msgstr "Informations manquantes." 852 840 853 #: index.php:4 47841 #: index.php:456 854 842 msgid "Error adding subscriber." 855 843 msgstr "Erreur lors de l'ajout d'un abonné." 856 844 857 #: index.php:4 49845 #: index.php:458 858 846 msgid "Subscriber added." 859 847 msgstr "Abonné ajouté." 860 848 861 #: index.php:5 02849 #: index.php:511 862 850 msgid "Error updating subscriber." 863 851 msgstr "Erreur lors de la mise à jour d'un abonné." 864 852 865 #: index.php:5 04853 #: index.php:513 866 854 msgid "Subscriber updated." 867 855 msgstr "Abonné mis à jour." 868 856 869 #: index.php:5 18857 #: index.php:527 870 858 msgid "No account removed." 871 859 msgstr "Pas de compte supprimé." 872 860 873 #: index.php:5 26861 #: index.php:535 874 862 msgid "Account(s) successfully removed." 875 863 msgstr "Compte(s) supprimé(s) avec succès." 876 864 877 #: index.php:54 0865 #: index.php:549 878 866 msgid "No account suspended." 879 867 msgstr "Pas de compte suspendu." 880 868 881 #: index.php:5 48869 #: index.php:557 882 870 msgid "Account(s) successfully suspended." 883 871 msgstr "Compte(s) suspendu(s) avec succès." 884 872 885 #: index.php:5 62873 #: index.php:571 886 874 msgid "No account enabled." 887 875 msgstr "Pas de compte activé." 888 876 889 #: index.php:57 0877 #: index.php:579 890 878 msgid "Account(s) successfully enabled." 891 879 msgstr "Compte(s) activé(s) avec succés." 892 880 893 #: index.php:5 84881 #: index.php:593 894 882 msgid "No account disabled." 895 883 msgstr "Pas de compte désactivé." 896 884 897 #: index.php: 592885 #: index.php:601 898 886 msgid "Account(s) successfully disabled." 899 887 msgstr "Compte(s) désactivé(s) avec succès." 900 888 901 #: index.php:6 25889 #: index.php:640 902 890 msgid "No account changed." 903 891 msgstr "Pas de compte modifié." 904 892 905 #: index.php:6 30893 #: index.php:646 906 894 msgid "Account(s) successfully changed." 907 895 msgstr "Compte(s) modifié(s) avec succès." 908 896 909 #: index.php:6 49897 #: index.php:667 910 898 msgid "Datas exported." 911 899 msgstr "Données exportées." 912 900 913 #: index.php:6 69901 #: index.php:687 914 902 msgid "Datas imported." 915 903 msgstr "Données importées." 916 904 917 #: index.php:7 42918 #: index.php:7 64905 #: index.php:772 906 #: index.php:794 919 907 msgid "No account(s) updated." 920 908 msgstr "Pas de compte(s) mis à jour." 921 909 922 #: index.php:7 50910 #: index.php:780 923 911 msgid "Format sending for account(s) successfully updated to html." 924 912 msgstr "Format d'envoi pour le(s) abonné(s) mis à jour au format html." 925 913 926 #: index.php: 772914 #: index.php:802 927 915 msgid "Format sending for account(s) successfully updated to text." 928 916 msgstr "Format d'envoi pour le(s) abonné(s) mis à jour au format text." 929 917 930 #: index.php: 786918 #: index.php:816 931 919 msgid "No template adapted." 932 920 msgstr "Pas de template adapté." 933 921 934 #: index.php: 788922 #: index.php:819 935 923 msgid "Template successfully adapted." 936 924 msgstr "Template adapté avec succès." 937 925 938 #: index.php:8 03926 #: index.php:833 939 927 msgid "Erasing complete." 940 928 msgstr "Nettoyage terminé." 941 929 942 #: index.php:8 39930 #: index.php:869 943 931 msgid "Are you sure you want to delete all informations about newsletter in database ?" 944 932 msgstr "Etes-vous sûr de vouloir supprimer toutes les informations de newsletter dans la base de données ?" 945 933 946 #: index.php:8 50934 #: index.php:880 947 935 msgid "Subscribers" 948 936 msgstr "Abonnés" 949 937 950 #: index.php:8 59938 #: index.php:889 951 939 msgid "Planning" 952 940 msgstr "Planification" 953 941 942 msgid "Newsletter is disabled." 943 msgstr "Newsletter est désactivé." 944 954 945 msgid "Presentation message" 955 946 msgstr "Message de présentation"
Note: See TracChangeset
for help on using the changeset viewer.