diff --git a/htdocs/includes/modules/mailings/poire.modules.php b/htdocs/includes/modules/mailings/contact1.modules.php
old mode 100644
new mode 100755
similarity index 91%
rename from htdocs/includes/modules/mailings/poire.modules.php
rename to htdocs/includes/modules/mailings/contact1.modules.php
index 6b65e79fdb4..d0008e93528
--- a/htdocs/includes/modules/mailings/poire.modules.php
+++ b/htdocs/includes/modules/mailings/contact1.modules.php
@@ -20,7 +20,7 @@
*/
/**
- * \file htdocs/includes/modules/mailings/poire.modules.php
+ * \file htdocs/includes/modules/mailings/contact1.modules.php
* \ingroup mailing
* \brief File of class to offer a selector of emailing targets with Rule 'Poire'.
* \version $Id$
@@ -30,10 +30,10 @@ include_once DOL_DOCUMENT_ROOT.'/includes/modules/mailings/modules_mailings.php'
/**
- * \class mailing_poire
+ * \class mailing_contact1
* \brief Class to offer a selector of emailing targets with Rule 'Poire'.
*/
-class mailing_poire extends MailingTargets
+class mailing_contact1 extends MailingTargets
{
var $name='ContactCompanies'; // Identifiant du module mailing
var $desc='Contacts des tiers (prospects, clients, fournisseurs...)'; // Libell� utilis� si aucune traduction pour MailingModuleDescXXX ou XXX=name trouv�e
@@ -44,7 +44,7 @@ class mailing_poire extends MailingTargets
var $db;
- function mailing_poire($DB)
+ function mailing_contact1($DB)
{
$this->db=$DB;
}
@@ -57,15 +57,15 @@ class mailing_poire extends MailingTargets
$langs->load("commercial");
$statssql=array();
- $statssql[0] = "SELECT '".$langs->trans("NbOfCompaniesContacts")."' as label";
- $statssql[0].= ", count(distinct(c.email)) as nb";
- $statssql[0].= " FROM ".MAIN_DB_PREFIX."socpeople as c";
- $statssql[0].= ", ".MAIN_DB_PREFIX."societe as s";
+ $statssql[0] = "SELECT '".$langs->trans("NbOfCompaniesContacts")."' as label,";
+ $statssql[0].= " count(distinct(c.email)) as nb";
+ $statssql[0].= " FROM ".MAIN_DB_PREFIX."socpeople as c,";
+ $statssql[0].= " ".MAIN_DB_PREFIX."societe as s";
$statssql[0].= " WHERE s.rowid = c.fk_soc";
$statssql[0].= " AND s.entity = ".$conf->entity;
$statssql[0].= " AND c.entity = ".$conf->entity;
$statssql[0].= " AND s.client IN (1, 3)";
- $statssql[0].= " AND c.email != ''";
+ $statssql[0].= " AND c.email != ''"; // Note that null != '' is false
return $statssql;
}
@@ -82,12 +82,12 @@ class mailing_poire extends MailingTargets
global $conf;
$sql = "SELECT count(distinct(c.email)) as nb";
- $sql .= " FROM ".MAIN_DB_PREFIX."socpeople as c";
- $sql .= ", ".MAIN_DB_PREFIX."societe as s";
+ $sql .= " FROM ".MAIN_DB_PREFIX."socpeople as c,";
+ $sql .= " ".MAIN_DB_PREFIX."societe as s";
$sql .= " WHERE s.rowid = c.fk_soc";
$sql .= " AND c.entity = ".$conf->entity;
$sql .= " AND s.entity = ".$conf->entity;
- $sql .= " AND c.email != ''";
+ $sql .= " AND c.email != ''"; // Note that null != '' is false
// La requete doit retourner un champ "nb" pour etre comprise
// par parent::getNbOfRecipients
@@ -226,7 +226,7 @@ class mailing_poire extends MailingTargets
'firstname' => $obj->firstname,
'other' =>
($langs->transnoentities("ThirdParty").'='.$obj->companyname).';'.
- ($langs->transnoentities("Civility").'='.$langs->transnoentities("Civility".$obj->civilite)),
+ ($langs->transnoentities("Civility").'='.($obj->civilite?$langs->transnoentities("Civility".$obj->civilite):'')),
'source_url' => $this->url($obj->id),
'source_id' => $obj->id,
'source_type' => 'contact'
diff --git a/htdocs/includes/modules/mailings/myrtille.modules.php b/htdocs/includes/modules/mailings/contacts2.modules.php
old mode 100644
new mode 100755
similarity index 57%
rename from htdocs/includes/modules/mailings/myrtille.modules.php
rename to htdocs/includes/modules/mailings/contacts2.modules.php
index e335da94760..bcf4a9b4167
--- a/htdocs/includes/modules/mailings/myrtille.modules.php
+++ b/htdocs/includes/modules/mailings/contacts2.modules.php
@@ -18,7 +18,7 @@
*/
/**
- * \file htdocs/includes/modules/mailings/myrtille.modules.php
+ * \file htdocs/includes/modules/mailings/contacts2.modules.php
* \ingroup mailing
* \brief Provides a list of recipients for mailing module
* \version $Revision$
@@ -28,10 +28,10 @@ include_once DOL_DOCUMENT_ROOT.'/includes/modules/mailings/modules_mailings.php'
/**
- * \class mailing_myrtille
+ * \class mailing_contacts2
* \brief Class to manage a list of personalised recipients for mailing feature
*/
-class mailing_myrtille extends MailingTargets
+class mailing_contacts2 extends MailingTargets
{
var $name='ContactsByFunction';
// This label is used if no translation is found for key MailingModuleDescXXX where XXX=name is found
@@ -43,12 +43,21 @@ class mailing_myrtille extends MailingTargets
var $db;
- function mailing_myrtille($DB)
+ function mailing_contacts2($DB)
{
$this->db=$DB;
}
+ /**
+ * \brief Renvoie url lien vers fiche de la source du destinataire du mailing
+ * \return string Url lien
+ */
+ function url($id)
+ {
+ return ''.img_object('',"contact").'';
+ }
+
/**
* This is the main function that returns the array of emails
* @param mailing_id Id of mailing. No need to use it.
@@ -57,18 +66,21 @@ class mailing_myrtille extends MailingTargets
*/
function add_to_target($mailing_id,$filtersarray=array())
{
- global $conf;
-
+ global $conf,$langs;
+
$target = array();
-
- $sql = "SELECT sp.rowid, sp.email, sp.name, sp.firstname";
- $sql.= " FROM ".MAIN_DB_PREFIX."socpeople as sp";
- $sql.= " WHERE (sp.email IS NOT NULL AND sp.email != '')";
- $sql.= " AND (sp.poste IS NOT NULL AND sp.poste != '')";
+
+ // La requete doit retourner: id, email, fk_contact, name, firstname, other
+ $sql = "SELECT sp.rowid as id, sp.email as email, sp.rowid as fk_contact,";
+ $sql.= " sp.name as name, sp.firstname as firstname, sp.civilite,";
+ $sql.= " s.nom as companyname";
+ $sql.= " FROM ".MAIN_DB_PREFIX."socpeople as sp,";
+ $sql.= " ".MAIN_DB_PREFIX."societe as s";
+ $sql.= " WHERE s.rowid = sp.fk_soc";
+ $sql.= " AND sp.email != ''"; // Note that null != '' is false
$sql.= " AND sp.entity = ".$conf->entity;
if ($filtersarray[0]<>'all') $sql.= " AND sp.poste ='".$filtersarray[0]."'";
$sql.= " ORDER BY sp.name, sp.firstname";
-
$resql = $this->db->query($sql);
if ($resql)
{
@@ -78,11 +90,16 @@ class mailing_myrtille extends MailingTargets
{
$obj= $this->db->fetch_object($resql);
$target[] = array(
- 'email' => $obj->email,
- 'name' => $obj->name,
- 'firstname' => $obj->firstname,
- 'other' => $other,
- 'url' => ''.img_object('',"contact").''
+ 'email' => $obj->email,
+ 'fk_contact' => $obj->fk_contact,
+ 'name' => $obj->name,
+ 'firstname' => $obj->firstname,
+ 'other' =>
+ ($langs->transnoentities("ThirdParty").'='.$obj->companyname).';'.
+ ($langs->transnoentities("Civility").'='.($obj->civilite?$langs->transnoentities("Civility".$obj->civilite):'')),
+ 'source_url' => $this->url($obj->id),
+ 'source_id' => $obj->id,
+ 'source_type' => 'contact'
);
$i++;
}
@@ -104,17 +121,19 @@ class mailing_myrtille extends MailingTargets
global $conf;
$statssql=array();
- for ($i=0; $i<5; $i++) {
- $statssql[$i] = "SELECT sp.poste as label";
- $statssql[$i].= ", count(distinct(sp.email)) as nb";
- $statssql[$i].= " FROM ".MAIN_DB_PREFIX."socpeople as sp";
- $statssql[$i].= " WHERE (sp.email IS NOT NULL AND sp.email != '')";
- $statssql[$i].= " AND (sp.poste IS NOT NULL AND sp.poste != '')";
- $statssql[$i].= " AND sp.entity = ".$conf->entity;
- $statssql[$i].= " GROUP BY label";
- $statssql[$i].= " ORDER BY nb DESC";
- $statssql[$i].= " LIMIT $i,1";
- }
+ /*for ($i=0; $i<5; $i++) {
+ $statssql[$i] = "SELECT sp.poste as label";
+ $statssql[$i].= ", count(distinct(sp.email)) as nb";
+ $statssql[$i].= " FROM ".MAIN_DB_PREFIX."socpeople as sp,";
+ $statssql[$i].= " ".MAIN_DB_PREFIX."societe as s";
+ $statssql[$i].= " WHERE s.rowid = sp.fk_soc";
+ $statssql[$i].= " AND sp.email != ''"; // Note that null != '' is false
+ $statssql[$i].= " AND (sp.poste IS NOT NULL AND sp.poste != '')";
+ $statssql[$i].= " AND sp.entity = ".$conf->entity;
+ $statssql[$i].= " GROUP BY label";
+ $statssql[$i].= " ORDER BY nb DESC";
+ $statssql[$i].= " LIMIT $i,1";
+ }*/
return $statssql;
}
@@ -127,13 +146,14 @@ class mailing_myrtille extends MailingTargets
function getNbOfRecipients()
{
global $conf;
-
+
$sql = "SELECT count(distinct(sp.email)) as nb";
- $sql.= " FROM ".MAIN_DB_PREFIX."socpeople as sp";
- $sql.= " WHERE sp.entity = ".$conf->entity;
- $sql.= " AND (sp.email IS NOT NULL AND sp.email != '')";
- $sql.= " AND (sp.poste IS NOT NULL AND sp.poste != '')";
-
+ $sql.= " FROM ".MAIN_DB_PREFIX."socpeople as sp,";
+ $sql.= " ".MAIN_DB_PREFIX."societe as s";
+ $sql.= " WHERE s.rowid = sp.fk_soc";
+ $sql.= " AND s.entity = ".$conf->entity;
+ $sql.= " AND sp.entity = ".$conf->entity;
+ $sql.= " AND sp.email != ''"; // Note that null != '' is false
// La requete doit retourner un champ "nb" pour etre comprise
// par parent::getNbOfRecipients
return parent::getNbOfRecipients($sql);
@@ -147,22 +167,24 @@ class mailing_myrtille extends MailingTargets
function formFilter()
{
global $conf, $langs;
-
+
$langs->load("companies");
$sql = "SELECT sp.poste, count(distinct(sp.email)) AS nb";
- $sql.= " FROM ".MAIN_DB_PREFIX."socpeople as sp";
- $sql.= " WHERE sp.entity = ".$conf->entity;
- $sql.= " AND (sp.email IS NOT NULL AND sp.email != '')";
+ $sql.= " FROM ".MAIN_DB_PREFIX."socpeople as sp,";
+ $sql.= " ".MAIN_DB_PREFIX."societe as s";
+ $sql.= " WHERE s.rowid = sp.fk_soc";
+ $sql.= " AND sp.entity = ".$conf->entity;
+ $sql.= " AND sp.email != ''"; // Note that null != '' is false
$sql.= " AND (sp.poste IS NOT NULL AND sp.poste != '')";
$sql.= " GROUP BY sp.poste";
$sql.= " ORDER BY sp.poste";
-
+
$resql = $this->db->query($sql);
-
+
$s='';
$s.='';
$s.=' ';
- $s.=$langs->trans("DateEndSubscription").': ';
+ $s.=$langs->trans("DateEndSubscription").': ';
$s.=$langs->trans("After").' > '.$form->select_date(-1,'subscriptionafter',0,0,1,'fraise',1,0,1,0);
$s.=' ';
$s.=$langs->trans("Before").' < '.$form->select_date(-1,'subscriptionbefore',0,0,1,'fraise',1,0,1,0);
diff --git a/htdocs/includes/modules/mailings/kiwi.modules.php b/htdocs/includes/modules/mailings/thirdparties.modules.php
old mode 100644
new mode 100755
similarity index 97%
rename from htdocs/includes/modules/mailings/kiwi.modules.php
rename to htdocs/includes/modules/mailings/thirdparties.modules.php
index c16c6a6d04d..45739684773
--- a/htdocs/includes/modules/mailings/kiwi.modules.php
+++ b/htdocs/includes/modules/mailings/thirdparties.modules.php
@@ -10,7 +10,7 @@
*/
/**
- * \file htdocs/includes/modules/mailings/kiwi.modules.php
+ * \file htdocs/includes/modules/mailings/thirdparties.modules.php
* \ingroup mailing
* \brief Example file to provide a list of recipients for mailing module
* \version $Revision$
@@ -20,10 +20,10 @@ include_once DOL_DOCUMENT_ROOT.'/includes/modules/mailings/modules_mailings.php'
/**
- * \class mailing_kiwi
+ * \class mailing_thirdparties
* \brief Class to manage a list of personalised recipients for mailing feature
*/
-class mailing_kiwi extends MailingTargets
+class mailing_thirdparties extends MailingTargets
{
// CHANGE THIS: Put here a name not already used
var $name='ContactsCategories';
@@ -38,7 +38,7 @@ class mailing_kiwi extends MailingTargets
var $db;
- function mailing_kiwi($DB)
+ function mailing_thirdparties($DB)
{
$this->db=$DB;
}
diff --git a/htdocs/includes/modules/mailings/dolibarr_services_expired.modules.php b/htdocs/includes/modules/mailings/thirdparties_services_expired.modules.php
old mode 100644
new mode 100755
similarity index 95%
rename from htdocs/includes/modules/mailings/dolibarr_services_expired.modules.php
rename to htdocs/includes/modules/mailings/thirdparties_services_expired.modules.php
index cf74a6be5a8..547777800a9
--- a/htdocs/includes/modules/mailings/dolibarr_services_expired.modules.php
+++ b/htdocs/includes/modules/mailings/thirdparties_services_expired.modules.php
@@ -9,7 +9,7 @@
*/
/**
- * \file htdocs/includes/modules/mailings/dolibarr_services_expired.modules.php
+ * \file htdocs/includes/modules/mailings/thirdparties_services_expired.modules.php
* \ingroup mailing
* \brief File of class to offer a selector of emailing targets with Rule 'services expired'.
* \version $Id$
@@ -19,10 +19,10 @@ require_once(DOL_DOCUMENT_ROOT."/lib/functions2.lib.php");
/**
- * \class mailing_dolibarr_services_expired
+ * \class mailing_thirdparties_services_expired
* \brief Class to offer a selector of emailing targets with Rule 'services expired'.
*/
-class mailing_dolibarr_services_expired extends MailingTargets
+class mailing_thirdparties_services_expired extends MailingTargets
{
var $name='DolibarrContractsLinesExpired';
var $desc='Third parties with expired contract\'s lines';
@@ -38,9 +38,9 @@ class mailing_dolibarr_services_expired extends MailingTargets
* Constructor
*
* @param $DB
- * @return mailing_dolibarr_services_expired
+ * @return mailing_thirdparties_services_expired
*/
- function mailing_dolibarr_services_expired($DB)
+ function mailing_thirdparties_services_expired($DB)
{
$this->db=$DB;