Skip to content
Snippets Groups Projects
Commit 647731fd authored by Laurent Destailleur's avatar Laurent Destailleur
Browse files

Qual: Fusion des classes en doublons dolibarrmail et CMailFile dans la meme "CMailFile".

parent 52fa54de
No related branches found
No related tags found
No related merge requests found
......@@ -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='<div class="ok">'.$langs->trans("ResultOk").'</div>';
$message='<div class="ok">'.$langs->trans("MailSuccessfulySent",$from,$sendto).'</div>';
}
else
{
$message='<div class="error">'.$langs->trans("ResultKo").'</div>';
}
error_reporting($errorlevel);
}
$_GET["action"]='';
$_GET["id"]=$mil->id;
}
else
{
$message='<div class="error">'.$langs->trans("ErrorUnknown").'</div>';
}
else
{
$message='<div class="error">'.$langs->trans("ErrorUnknown").'</div>';
}
}
......
......@@ -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;
......
#!/usr/bin/php
<?PHP
/* Copyright (C) 2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2005 Laurent Destailleur <eldy@users.sourceforge.net>
*
* 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 impayes 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 rsum des imapyes 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();
if ($obj->email <> $oldemail)
{
if (strlen($oldemail))
{
dolibarr_syslog("factures-impayees-commerciaux: send mail to $oldemail");
$subject = "[Dolibarr] Liste des factures impayes";
$sendto = $oldemail;
$from = $oldemail;
$allmessage = "Liste des factures impayes ce jour\n";
$allmessage .= "Cette liste ne comporte que les factures des socits dont vous tes rfrencs 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++;
}
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++;
}
/* On rpte le code c'est mal */
dolibarr_syslog("factures-impayees-commerciaux: send mail to $oldemail");
$subject = "[Dolibarr] Liste des factures impayes";
$sendto = $oldemail;
$from = $oldemail;
$allmessage = "Liste des factures impayes ce jour\n";
$allmessage .= "Cette liste ne comporte que les factures des socits dont vous tes rfrencs 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() )
// Si il reste des envois en buffer
if ($total)
{
envoi_mail($oldemail,$message,$total);
}
}
else
{
print "Aucune facture impaye avec des commerciaux directement rattachs\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 impayes";
$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 impayes ce jour\n";
$allmessage .= "Cette liste ne comporte que les factures des socits dont vous tes rfrencs 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)
{
}
}
?>
<?PHP
/* Copyright (C) 2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2005 Laurent Destailleur <eldy@users.sourceforge.net>
*
* 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;
......
<?PHP
/* Copyright (C) 2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2005 Laurent Destailleur <eldy@users.sourceforge.net>
*
* 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;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment