linea21-core
[ class tree: linea21-core ] [ index: linea21-core ] [ all elements ]

Source for file template_newsletter.php

Documentation is available at template_newsletter.php

  1. <?php
  2. /**
  3.  * @package linea21.core
  4.  * @subpackage mail
  5.  * @author linea21 <info@linea21.com>
  6.  * @version $id SVN
  7.  * @access public
  8.  * @license http://opensource.org/licenses/gpl-3.0.html
  9.  */
  10.  
  11. include("../class/system/class.phpmailer.php"); 
  12.  
  13. $mail = new phpmailer();
  14.  
  15. if(defined('MAIL_USE_SSL') && MAIL_USE_SSL== true) {
  16.     $mail->Host = MAIL_HOST_SSL;
  17.     $mail->Port = MAIL_PORT_SSL;
  18. }
  19. if (defined('MAIL_MAILER')) { 
  20.     $mail->Mailer = MAIL_MAILER;
  21.     if(MAIL_MAILER=='sendmail') {
  22.         if(defined('MAIL_SENDMAIL')) $mail->Sendmail = MAIL_SENDMAIL;
  23.         }
  24.     if(MAIL_MAILER=='smtp') {
  25.         if(defined('MAIL_HOST')) $mail->Host = MAIL_HOST;
  26.     }
  27. }
  28.  
  29. if (defined('MAIL_SMTP_AUTH') && MAIL_SMTP_AUTH == true) {
  30.     $mail->SMTPAuth = MAIL_SMTP_AUTH;
  31.     if (defined('MAIL_SMTP_USER')) $mail->Username = MAIL_SMTP_USER;
  32.     if (defined('MAIL_SMTP_PASS')) $mail->Password = MAIL_SMTP_PASS;
  33. }
  34.  
  35. /**
  36. echo "destinataire : ".$email_dest."<br />";
  37. echo "sujet : ".$email_subject."<br />";
  38. echo "body : ".$email_html_body."<br />";
  39. echo "methode : ".$email_method."<br />";
  40. echo "host : ".$mail->Host."<br />";
  41. echo "port : ".$mail->Port."<br />";
  42. */
  43.  
  44. for($i = 0;$i < count($newsletters); $i++) {
  45.     $newsletter_id = $newsletters[$i]['newsletter_id'];
  46.     $email_subject = formatText($newsletters[$i]['newsletter_title']);
  47.  
  48.     $newsletter_body_html = formatText($newsletters[$i]['newsletter_body'], '2HTML');
  49.     $email_html_body=str_replace('##TITLE##', $email_subject, $template_html);
  50.     $email_html_body=str_replace('##CHARSET##', CHARSET, $email_html_body);
  51.     $email_html_body=str_replace('##CONTENTS##', $newsletter_body_html, $email_html_body);
  52.     
  53.     $newsletter_body_txt = formatText($newsletters[$i]['newsletter_body']);
  54.     $email_text_body=str_replace('##CONTENTS##', strip_tags($newsletter_body_txt), $template_txt);
  55.     
  56.     $mail->CharSet = CHARSET;
  57.     $mail->From = MAIL_FROM;
  58.     $mail->FromName = MAIL_FROMNAME;
  59.     $mail->Subject = $email_subject;
  60.     $mail->WordWrap = 75;
  61.     $mail->Body = $email_html_body;
  62.     $mail->AltBody = $email_text_body; 
  63.     $mail->AddReplyTo(MAIL_REPLY, MAIL_REPLYNAME);
  64.  
  65.     for($k = 0; $k < count($emails_batch); $k++) {
  66.         $email_id = $emails_batch[$k]['emailcol_id'];
  67.         $email_dest = $emails_batch[$k]['emailcol_email'];
  68.         
  69.         $mail->AddAddress($email_dest);
  70.         
  71.         $sending_result = (!$mail->Send()) ? 0 : 1;
  72.         
  73.         $current_date = date('[d-m-y H:i:s]');
  74.         
  75.         $tolog = $email_id. $log_sep. $email_dest . $log_sep . $newsletter_id . $log_sep . $sending_result . $log_sep . $current_date;
  76.         LogMailing($tolog);
  77.         
  78.         $mail->ClearAddresses();
  79.         $mail->ClearAttachments();
  80.     }
  81.     $newsletter_object->SetNewsletterPublished($newsletter_id, $sql_object);
  82. }
  83.  
  84.  
  85.  
  86. ?>

Documentation generated on Fri, 16 Oct 2009 09:39:57 +0200 by phpDocumentor 1.4.1