From d2ec1efb42acd6454628a1ef9ddc8d9f8cc28d2e Mon Sep 17 00:00:00 2001 From: Eric Seigne Date: Fri, 22 Apr 2022 14:49:22 +0200 Subject: [PATCH 1/4] fix #20690: add lang filter for people --- htdocs/core/modules/mailings/contacts1.modules.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/htdocs/core/modules/mailings/contacts1.modules.php b/htdocs/core/modules/mailings/contacts1.modules.php index bd4300ea71d..1450fe75b8c 100644 --- a/htdocs/core/modules/mailings/contacts1.modules.php +++ b/htdocs/core/modules/mailings/contacts1.modules.php @@ -311,6 +311,13 @@ class mailing_contacts1 extends MailingTargets else dol_print_error($this->db); $s .= ''; + + //Choose language + require_once DOL_DOCUMENT_ROOT.'/core/class/html.formadmin.class.php'; + $formadmin = new FormAdmin($this->db); + $s .= $langs->trans("DefaultLang").': '; + $s .= $formadmin->select_language($langs->getDefaultLang(1), 'filter_lang', 0, 0, 1, 0, 0, '', 0, 0, 0, null, 1); + return $s; } @@ -344,6 +351,7 @@ class mailing_contacts1 extends MailingTargets $filter_category = GETPOST('filter_category', 'alpha'); $filter_category_customer = GETPOST('filter_category_customer', 'alpha'); $filter_category_supplier = GETPOST('filter_category_supplier', 'alpha'); + $filter_lang = GETPOST('filter_lang', 'alpha'); $cibles = array(); @@ -391,6 +399,7 @@ class mailing_contacts1 extends MailingTargets if ($filter_category_customer <> 'all') $sql .= " AND c2.label = '".$this->db->escape($filter_category_customer)."'"; if ($filter_category_supplier <> 'all') $sql .= " AND c3s.fk_categorie = c3.rowid AND c3s.fk_soc = sp.fk_soc"; if ($filter_category_supplier <> 'all') $sql .= " AND c3.label = '".$this->db->escape($filter_category_supplier)."'"; + if ($filter_lang <> '') $sql .= " AND sp.default_lang = '".$this->db->escape($filter_lang)."'"; // Filter on nature $key = $filter; { @@ -404,7 +413,7 @@ class mailing_contacts1 extends MailingTargets $key = $filter_jobposition; if (!empty($key) && $key != 'all') $sql .= " AND sp.poste ='".$this->db->escape($key)."'"; $sql .= " ORDER BY sp.email"; - //print "wwwwwwx".$sql; + // print "wwwwwwx".$sql; // Stocke destinataires dans cibles $result = $this->db->query($sql); From 72ac1fdfd2e4eb69a7b53c5a8a2060e687e9f871 Mon Sep 17 00:00:00 2001 From: Eric Seigne Date: Fri, 22 Apr 2022 15:05:38 +0200 Subject: [PATCH 2/4] fix #20690: add lang filter for companies --- .../modules/mailings/thirdparties.modules.php | 21 ++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/htdocs/core/modules/mailings/thirdparties.modules.php b/htdocs/core/modules/mailings/thirdparties.modules.php index 05e9f4f12c4..9dc9e716cf3 100644 --- a/htdocs/core/modules/mailings/thirdparties.modules.php +++ b/htdocs/core/modules/mailings/thirdparties.modules.php @@ -79,6 +79,11 @@ class mailing_thirdparties extends MailingTargets $sql .= " WHERE s.email <> ''"; $sql .= " AND s.entity IN (".getEntity('societe').")"; $sql .= " AND s.email NOT IN (SELECT email FROM ".MAIN_DB_PREFIX."mailing_cibles WHERE fk_mailing=".$mailing_id.")"; + + if (GETPOST('default_lang','alpha')) + { + $sql .= " AND s.default_lang LIKE '".GETPOST('default_lang','alpha')."%'"; + } } else { @@ -126,6 +131,13 @@ class mailing_thirdparties extends MailingTargets $addDescription .= $langs->trans("Disabled"); } } + if (GETPOST('default_lang','alpha')) + { + $addFilter .= " AND s.default_lang LIKE '".GETPOST('default_lang','alpha')."%'"; + $addDescription = $langs->trans('DefaultLang')."="; + } + + $sql = "SELECT s.rowid as id, s.email as email, s.nom as name, null as fk_contact, null as firstname, c.label as label"; $sql .= " FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."categorie_societe as cs, ".MAIN_DB_PREFIX."categorie as c"; $sql .= " WHERE s.email <> ''"; @@ -147,7 +159,6 @@ class mailing_thirdparties extends MailingTargets $sql .= $addFilter; } $sql .= " ORDER BY email"; - // Stock recipients emails into targets table $result = $this->db->query($sql); if ($result) @@ -314,6 +325,14 @@ class mailing_thirdparties extends MailingTargets $s .= ''; $s .= ''; $s .= ''; + + + //Choose language + require_once DOL_DOCUMENT_ROOT.'/core/class/html.formadmin.class.php'; + $formadmin = new FormAdmin($this->db); + $s .= $langs->trans("DefaultLang").': '; + $s .= $formadmin->select_language($langs->getDefaultLang(1), 'filter_lang', 0, 0, 1, 0, 0, '', 0, 0, 0, null, 1); + return $s; } From 9fd3a4b2c9c99c56f46b8e9559372f142c33ad09 Mon Sep 17 00:00:00 2001 From: stickler-ci Date: Fri, 22 Apr 2022 13:30:43 +0000 Subject: [PATCH 3/4] Fixing style errors. --- htdocs/core/modules/mailings/thirdparties.modules.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/core/modules/mailings/thirdparties.modules.php b/htdocs/core/modules/mailings/thirdparties.modules.php index 9dc9e716cf3..07b08e60d60 100644 --- a/htdocs/core/modules/mailings/thirdparties.modules.php +++ b/htdocs/core/modules/mailings/thirdparties.modules.php @@ -80,9 +80,9 @@ class mailing_thirdparties extends MailingTargets $sql .= " AND s.entity IN (".getEntity('societe').")"; $sql .= " AND s.email NOT IN (SELECT email FROM ".MAIN_DB_PREFIX."mailing_cibles WHERE fk_mailing=".$mailing_id.")"; - if (GETPOST('default_lang','alpha')) + if (GETPOST('default_lang', 'alpha')) { - $sql .= " AND s.default_lang LIKE '".GETPOST('default_lang','alpha')."%'"; + $sql .= " AND s.default_lang LIKE '".GETPOST('default_lang', 'alpha')."%'"; } } else @@ -131,9 +131,9 @@ class mailing_thirdparties extends MailingTargets $addDescription .= $langs->trans("Disabled"); } } - if (GETPOST('default_lang','alpha')) + if (GETPOST('default_lang', 'alpha')) { - $addFilter .= " AND s.default_lang LIKE '".GETPOST('default_lang','alpha')."%'"; + $addFilter .= " AND s.default_lang LIKE '".GETPOST('default_lang', 'alpha')."%'"; $addDescription = $langs->trans('DefaultLang')."="; } From 3fb081a2fc9e93f692a65eb7da6a9b22df20c6d2 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 29 Apr 2022 17:57:55 +0200 Subject: [PATCH 4/4] Update contacts1.modules.php --- htdocs/core/modules/mailings/contacts1.modules.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/htdocs/core/modules/mailings/contacts1.modules.php b/htdocs/core/modules/mailings/contacts1.modules.php index 26de9f6359e..42e888fc90c 100644 --- a/htdocs/core/modules/mailings/contacts1.modules.php +++ b/htdocs/core/modules/mailings/contacts1.modules.php @@ -405,12 +405,12 @@ class mailing_contacts1 extends MailingTargets $sql .= " AND c3.label = '".$this->db->escape($filter_category_supplier)."'"; } - // Filter on language - if ($filter_lang <> '') { - $sql .= " AND sp.default_lang = '".$this->db->escape($filter_lang)."'"; - } + // Filter on language + if ($filter_lang != '') { + $sql .= " AND sp.default_lang = '".$this->db->escape($filter_lang)."'"; + } - // Filter on nature + // Filter on nature $key = $filter; //print "xx".$key;