diff --git a/htdocs/comm/mailing/fiche.php b/htdocs/comm/mailing/fiche.php
index c0dc90a9c2e..63489259be7 100644
--- a/htdocs/comm/mailing/fiche.php
+++ b/htdocs/comm/mailing/fiche.php
@@ -53,46 +53,46 @@ if ($_GET["action"] == 'sendall')
// Action envoi test mailing
if ($_POST["action"] == 'send')
{
- $mil = new Mailing($db);
+ $mil = new Mailing($db);
- $mil->id = $_POST["mailid"];
- $mil->fromname = $_POST["fromname"];
- $mil->frommail = $_POST["frommail"];
- $mil->sendto = $_POST["sendto"];
- $mil->titre = $_POST["titre"];
- $mil->sujet = $_POST["subject"];
- $mil->body = $_POST["message"];
+ $mil->id = $_POST["mailid"];
+ $mil->fromname = $_POST["fromname"];
+ $mil->frommail = $_POST["frommail"];
+ $mil->sendto = $_POST["sendto"];
+ $mil->titre = $_POST["titre"];
+ $mil->sujet = $_POST["subject"];
+ $mil->body = $_POST["message"];
- if ($mil->sendto && $mil->sujet && $mil->body)
+ if ($mil->sendto && $mil->sujet && $mil->body)
{
- // \todo Utiliser la class DolibarrMail ou CMailFile pour envoyer le mail
- $headers = "MIME-Version: 1.0\r\n";
- $headers .= "Content-type: text/plain; charset=iso-8859-1\n";
- $headers .= "From: ".$mil->fromname." <".$mil->frommail.">\r\n";
- $headers .= "Reply-to:".$mil->fromname." <".$mil->frommail.">\r\n";
- $headers .= "X-Priority: 3\r\n";
- $headers .= "X-Mailer: Dolibarr ".DOL_VERSION."\r\n";
-
- $errorlevel=error_reporting(0);
- $m=mail($mil->sendto, $mil->sujet, $mil->body, $headers);
-
- if($m)
+ require_once(DOL_DOCUMENT_ROOT."/lib/CMailFile.class.php");
+
+ $sendto = $mil->sendto;
+ $from = $mil->fromname." <".$mil->frommail.">";
+ $arr_file = array();
+ $arr_mime = array();
+ $arr_name = array();
+
+ $mailfile = new CMailFile($mil->sujet,$sendto,$from,$mil->body,$arr_file,$arr_mime,$arr_name);
+
+ $result=$mailfile->sendfile();
+
+ if($result)
{
- $message='
'.$langs->trans("ResultOk").'
';
+ $message=''.$langs->trans("MailSuccessfulySent",$from,$sendto).'
';
}
else
{
$message=''.$langs->trans("ResultKo").'
';
- }
- error_reporting($errorlevel);
-
+ }
+
$_GET["action"]='';
$_GET["id"]=$mil->id;
}
- else
- {
- $message=''.$langs->trans("ErrorUnknown").'
';
- }
+ else
+ {
+ $message=''.$langs->trans("ErrorUnknown").'
';
+ }
}
diff --git a/htdocs/fourn/fournisseur.commande.class.php b/htdocs/fourn/fournisseur.commande.class.php
index 8a8bb5126af..26e0276ddd5 100644
--- a/htdocs/fourn/fournisseur.commande.class.php
+++ b/htdocs/fourn/fournisseur.commande.class.php
@@ -214,7 +214,7 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_methode_commande_fournisseur as cm ON cm
*/
function _NotifyApprobator($user)
{
- require_once (DOL_DOCUMENT_ROOT."/lib/dolibarrmail.class.php");
+ require_once (DOL_DOCUMENT_ROOT."/lib/CMailFile.class.php");
$this->ReadApprobators();
@@ -253,10 +253,10 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_methode_commande_fournisseur as cm ON cm
$sendto = $approb[2];
- $mailfile = new DolibarrMail($subject,
+ $mailfile = new CMailFile($subject,
$sendto,
$from,
- $message);
+ $message, array(), array(), array());
if ( $mailfile->sendfile() )
{
@@ -345,7 +345,7 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_methode_commande_fournisseur as cm ON cm
*/
function _NotifyCreator($user, $subject, $message)
{
- require_once (DOL_DOCUMENT_ROOT."/lib/dolibarrmail.class.php");
+ require_once (DOL_DOCUMENT_ROOT."/lib/CMailFile.class.php");
$cc = new user($this->db, $this->user_author_id);
$cc->fetch();
@@ -353,10 +353,10 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_methode_commande_fournisseur as cm ON cm
$sendto = $cc->email;
$from = $user->email;
- $mailfile = new DolibarrMail($subject,
+ $mailfile = new CMailFile($subject,
$sendto,
$from,
- $message);
+ $message, array(), array(), array());
if ( $mailfile->sendfile() )
{
return 0;
diff --git a/scripts/factures-impayees-commerciaux.php b/scripts/factures-impayees-commerciaux.php
index 86eade82aba..4bf05db9328 100644
--- a/scripts/factures-impayees-commerciaux.php
+++ b/scripts/factures-impayees-commerciaux.php
@@ -1,5 +1,7 @@
+#!/usr/bin/php
+ * Copyright (C) 2005 Laurent Destailleur
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -17,13 +19,28 @@
*
* $Id$
* $Source$
- *
- * Envois la liste des factures impayées aux commerciaux
- *
*/
-require ("../htdocs/master.inc.php");
-require_once (DOL_DOCUMENT_ROOT."/lib/dolibarrmail.class.php");
+/**
+ \file scripts/factures-impayees-commerciaux.php
+ \ingroup facture
+ \brief Script d'envoi de mails résumé des imapyées par commerciaux
+*/
+
+// Test si mode batch
+$sapi_type = php_sapi_name();
+if (substr($sapi_type, 0, 3) == 'cgi') {
+ echo "Erreur: Vous utilisez l'interpreteur PHP pour le mode CGI. Pour executer mailing-send.php en ligne de commande, vous devez utiliser l'interpreteur PHP pour le mode CLI.\n";
+ exit;
+}
+
+// Recupere root dolibarr
+$path=eregi_replace('factures-impayees-commerciaux.php','',$_SERVER["PHP_SELF"]);
+
+
+require($path."../htdocs/master.inc.php");
+require_once (DOL_DOCUMENT_ROOT."/lib/CMailFile.class.php");
+
$error = 0;
@@ -38,92 +55,89 @@ $sql .= " AND sc.fk_soc = s.idp";
$sql .= " AND sc.fk_user = u.rowid";
$sql .= " ORDER BY u.email ASC, s.idp ASC";
-if ( $db->query($sql) )
+if ( $db->query($sql) )
{
- $num = $db->num_rows();
- $i = 0;
- $oldemail = '';
- $message = '';
- $total = '';
- dolibarr_syslog("factures-impayees-commerciaux: ");
-
- while ($i < $num)
+ $num = $db->num_rows();
+ $i = 0;
+ $oldemail = '';
+ $message = '';
+ $total = '';
+ dolibarr_syslog("factures-impayees-commerciaux: ");
+
+ if ($num)
{
- $obj = $db->fetch_object();
+ while ($i < $num)
+ {
+ $obj = $db->fetch_object();
+
+ if ($obj->email <> $oldemail)
+ {
+ if (strlen($oldemail))
+ {
+ envoi_mail($oldemail,$message,$total);
+ }
+ $oldemail = $obj->email;
+ $message = '';
+ $total = 0;
+ }
+
+ $message .= "Facture ".$obj->facnumber." : ".price($obj->total_ttc)." : ".$obj->nom."\n";
+ $total += $obj->total_ttc;
+
+ dolibarr_syslog("factures-impayees-commerciaux: ".$obj->email);
+ $i++;
+ }
- if ($obj->email <> $oldemail)
- {
-
- if (strlen($oldemail))
- {
- dolibarr_syslog("factures-impayees-commerciaux: send mail to $oldemail");
- $subject = "[Dolibarr] Liste des factures impayées";
- $sendto = $oldemail;
- $from = $oldemail;
-
- $allmessage = "Liste des factures impayées à ce jour\n";
- $allmessage .= "Cette liste ne comporte que les factures des sociétés dont vous êtes référencés comme commercial.\n";
- $allmessage .= "\n";
- $allmessage .= $message;
- $allmessage .= "\n";
- $allmessage .= "Total = ".price($total)."\n";
-
- $mail = new DolibarrMail($subject,
- $sendto,
- $from,
- $allmessage);
-
- $mail->errors_to = $errorsto;
-
- if ( $mail->sendfile() )
- {
-
- }
-
-
-
- }
- $oldemail = $obj->email;
- $message = '';
- $total = 0;
- }
-
-
- $message .= "Facture ".$obj->facnumber." : ".price($obj->total_ttc)." : ".$obj->nom."\n";
- $total += $obj->total_ttc;
-
- dolibarr_syslog("factures-impayees-commerciaux: ".$obj->email);
- $i++;
+ // Si il reste des envois en buffer
+ if ($total)
+ {
+ envoi_mail($oldemail,$message,$total);
+ }
}
-
- /* On répète le code c'est mal */
- dolibarr_syslog("factures-impayees-commerciaux: send mail to $oldemail");
- $subject = "[Dolibarr] Liste des factures impayées";
- $sendto = $oldemail;
- $from = $oldemail;
-
- $allmessage = "Liste des factures impayées à ce jour\n";
- $allmessage .= "Cette liste ne comporte que les factures des sociétés dont vous êtes référencés comme commercial.\n";
- $allmessage .= "\n";
- $allmessage .= $message;
- $allmessage .= "\n";
- $allmessage .= "Total = ".price($total)."\n";
-
- $mail = new DolibarrMail($subject,
- $sendto,
- $from,
- $allmessage);
-
- $mail->errors_to = $errorsto;
-
- if ( $mail->sendfile() )
+ else
{
-
+ print "Aucune facture impayée avec des commerciaux directement rattachés\n";
}
}
else
{
- dolibarr_syslog("factures-impayees-commerciaux: Error");
+ dolibarr_print_error($db);
+ dolibarr_syslog("factures-impayees-commerciaux: Error");
}
+
+function envoi_mail($oldemail,$message,$total)
+{
+ global $conf;
+
+ $subject = "[Dolibarr] Liste des factures impayées";
+ $sendto = $oldemail;
+ $from = $conf->global->MAIN_EMAIL_FROM;
+
+ print "Envoi mail pour $oldemail, total: $total\n";
+ dolibarr_syslog("factures-impayees-commerciaux: send mail to $oldemail");
+
+ $allmessage = "Liste des factures impayées à ce jour\n";
+ $allmessage .= "Cette liste ne comporte que les factures des sociétés dont vous êtes référencés comme commercial.\n";
+ $allmessage .= "\n";
+ $allmessage .= $message;
+ $allmessage .= "\n";
+ $allmessage .= "Total = ".price($total)."\n";
+
+ $mail = new CMailFile($subject,
+ $sendto,
+ $from,
+ $allmessage,array(),array(),array());
+
+ $mail->errors_to = $errorsto;
+
+ $result=$mail->sendfile();
+ if ($result)
+ {
+
+ }
+
+}
+
+
?>
diff --git a/scripts/prelevement-verif.php b/scripts/prelevement-verif.php
index 5fb9a2e796e..943a2e69cb9 100644
--- a/scripts/prelevement-verif.php
+++ b/scripts/prelevement-verif.php
@@ -1,5 +1,6 @@
+ * Copyright (C) 2005 Laurent Destailleur
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -28,7 +29,6 @@ require ("../htdocs/master.inc.php");
require_once (DOL_DOCUMENT_ROOT."/facture.class.php");
require_once (DOL_DOCUMENT_ROOT."/societe.class.php");
-require_once (DOL_DOCUMENT_ROOT."/lib/dolibarrmail.class.php");
$error = 0;
diff --git a/scripts/prelevement.php b/scripts/prelevement.php
index 37e71dbfc7a..f6df4d3a82c 100644
--- a/scripts/prelevement.php
+++ b/scripts/prelevement.php
@@ -1,5 +1,6 @@
+ * Copyright (C) 2005 Laurent Destailleur
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -29,7 +30,6 @@ require_once (DOL_DOCUMENT_ROOT."/bon-prelevement.class.php");
require_once (DOL_DOCUMENT_ROOT."/facture.class.php");
require_once (DOL_DOCUMENT_ROOT."/societe.class.php");
require_once (DOL_DOCUMENT_ROOT."/paiement.class.php");
-require_once (DOL_DOCUMENT_ROOT."/lib/dolibarrmail.class.php");
$error = 0;