';
diff --git a/htdocs/langs/en_US/mails.lang b/htdocs/langs/en_US/mails.lang
index 04eddbf9791..9ada97fc97b 100644
--- a/htdocs/langs/en_US/mails.lang
+++ b/htdocs/langs/en_US/mails.lang
@@ -39,12 +39,14 @@ MailingStatusDraft=Draft
MailingStatusValidated=Validated
MailingStatusApproved=Approved
MailingStatusSent=Sent
-MailingStatusRead=Read
MailingStatusSentPartialy=Sent partialy
MailingStatusSentCompletely=Sent completely
MailingStatusError=Error
MailingStatusNotSent=Not sent
MailSuccessfulySent=Email successfully sent (from %s to %s)
+MailUnsubcribe=Unsubscribe
+Unsuscribe=Unsubscribe
+MailingStatusNotContact=Don't contact anymore
ErrorMailRecipientIsEmpty=Email recipient is empty
WarningNoEMailsAdded=No new Email to add to recipient's list.
ConfirmValidMailing=Are you sure you want to validate this emailing ?
@@ -70,6 +72,9 @@ CloneReceivers=Cloner recipients
DateLastSend=Date of last sending
DateSending=Date sending
SentTo=Sent to %s
+MailingStatusRead=Read
+CheckRead=Read Receipt
+YourMailUnsubcribeOK=The email %s is correctly unsubcribe from mailing list
# Libelle des modules de liste de destinataires mailing
MailingModuleDescContactCompanies=Contacts of all third parties (customer, prospect, supplier, ...)
diff --git a/htdocs/langs/es_ES/mails.lang b/htdocs/langs/es_ES/mails.lang
index 3957b886cae..c068a7d57d4 100644
--- a/htdocs/langs/es_ES/mails.lang
+++ b/htdocs/langs/es_ES/mails.lang
@@ -39,12 +39,13 @@ MailingStatusDraft=Borrador
MailingStatusValidated=Validado
MailingStatusApproved=Aprovado
MailingStatusSent=Enviado
-MailingStatusRead=Leido
MailingStatusSentPartialy=Enviado parcialmente
MailingStatusSentCompletely=Enviado completamente
MailingStatusError=Error
MailingStatusNotSent=No enviado
MailSuccessfulySent=E-Mail enviado correctamente (de %s a %s)
+MailUnsubcribe=Desuscribe
+Unsuscribe=Desuscribe
ErrorMailRecipientIsEmpty=La dirección del destinatario está vacía
WarningNoEMailsAdded=Ningún nuevo E-Mailing a añadir a la lista destinatarios.
ConfirmValidMailing=¿Confirma la validación del E-Mailing?
@@ -70,6 +71,10 @@ CloneReceivers=Clonar destinatarios
DateLastSend=Fecha último envío
DateSending=Fecha envío
SentTo=Enviado a %s
+MailingStatusRead=Leido
+CheckRead=Confirmación de lectura
+YourMailUnsubcribeOK=El correo electrónico %s es correcta desuscribe.
+
# Libelle des modules de liste de destinataires mailing=
MailingModuleDescContactCompanies=Contactos de terceros (clientes potenciales, clientes, proveedores...)
MailingModuleDescDolibarrUsers=Usuarios de Dolibarr
diff --git a/htdocs/langs/fr_FR/mails.lang b/htdocs/langs/fr_FR/mails.lang
index 591000e00d8..c80a79615aa 100644
--- a/htdocs/langs/fr_FR/mails.lang
+++ b/htdocs/langs/fr_FR/mails.lang
@@ -39,12 +39,14 @@ MailingStatusDraft=Brouillon
MailingStatusValidated=Validé
MailingStatusApproved=Approuvé
MailingStatusSent=Envoyé
-MailingStatusRead=Lu
MailingStatusSentPartialy=Envoyé partiellement
MailingStatusSentCompletely=Envoyé complètement
MailingStatusError=Erreur
MailingStatusNotSent=Non envoyé
MailSuccessfulySent=Mail correctement envoyé (de %s à %s)
+MailUnsubcribe=Desinscription
+Unsuscribe=Desinscription
+MailingStatusNotContact=Ne plus contacter
ErrorMailRecipientIsEmpty=L'adresse du destinataire est vide
WarningNoEMailsAdded=Aucun nouvel e-mail à ajouter à la liste des destinataires.
ConfirmValidMailing=Confirmez-vous la validation du mailing ?
@@ -70,6 +72,9 @@ CloneReceivers=Cloner destinataires
DateLastSend=Date du dernier envoi
DateSending=Date envoi
SentTo=Envoyés à %s
+MailingStatusRead=Lu
+CheckRead=Accusé de lecture
+YourMailUnsubcribeOK=L'adresse e-mail %s est bien désincrite de la liste.
# Libelle des modules de liste de destinataires mailing
MailingModuleDescContactCompanies=Contacts de tiers (prospects, clients, fournisseurs...)
diff --git a/htdocs/product/fournisseurs.php b/htdocs/product/fournisseurs.php
index b274009897a..d9a48c6d8d7 100644
--- a/htdocs/product/fournisseurs.php
+++ b/htdocs/product/fournisseurs.php
@@ -53,6 +53,11 @@ $fieldvalue = (! empty($id) ? $id : (! empty($ref) ? $ref : ''));
$fieldtype = (! empty($ref) ? 'ref' : 'rowid');
if ($user->societe_id) $socid=$user->societe_id;
$result=restrictedArea($user,'produit|service&fournisseur',$fieldvalue,'product&product','','',$fieldtype);
+// Initialize technical object to manage hooks of thirdparties. Note that conf->hooks_modules contains array array
+include_once(DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php');
+$hookmanager=new HookManager($db);
+$hookmanager->callHooks(array('fournpricecard'));
+
$sortfield = GETPOST("sortfield",'alpha');
$sortorder = GETPOST("sortorder",'alpha');
@@ -273,7 +278,13 @@ if ($id || $ref)
}
else
{
- print $form->select_company($_POST["id_fourn"],'id_fourn','fournisseur=1',1);
+ print $form->select_company(GETPOST("id_fourn"),'id_fourn','fournisseur=1',1);
+
+ if (is_object($hookmanager))
+ {
+ $parameters=array('filtre'=>"fournisseur=1",'html_name'=>'id_fourn','selected'=>GETPOST("id_fourn"),'showempty'=>1,'prod_id'=>$product->id);
+ echo $hookmanager->executeHooks('formCreateCompagnyOptions',$parameters,$object,$action);
+ }
}
print '
';
diff --git a/htdocs/public/emailing/mailing-read.php b/htdocs/public/emailing/mailing-read.php
index e1271a71f41..9b5721b70da 100644
--- a/htdocs/public/emailing/mailing-read.php
+++ b/htdocs/public/emailing/mailing-read.php
@@ -31,16 +31,23 @@ define("NOCSRFCHECK",1); // We accept to go on this page from external web site.
require("../../main.inc.php");
-$id=GETPOST('mail_cbl_id');
-$mail_reader=GETPOST('mail');
+$id=GETPOST('tag');
-$statut='2';
+if ($id!='')
+{
+ $statut='2';
+ $sql = "UPDATE ".MAIN_DB_PREFIX."mailing_cibles SET statut=".$statut." WHERE tag='".$id."'";
+ dol_syslog("public/emailing/mailing-read.php : Mail read : ".$sql, LOG_DEBUG);
+
+ $resql=$db->query($sql);
+
+ $sql = "UPDATE ".MAIN_DB_PREFIX."societe SET fk_stcomm=2 WHERE rowid IN (SELECT source_id FROM ".MAIN_DB_PREFIX."mailing_cibles WHERE tag='".$id."')";
+ dol_syslog("public/emailing/mailing-read.php : Mail read : ".$sql, LOG_DEBUG);
+
+ $resql=$db->query($sql);
+}
-$sql = "UPDATE ".MAIN_DB_PREFIX."mailing_cibles SET statut=".$statut." WHERE rowid=".$id." AND email='".$mail_reader."'";
-dol_syslog("public/emailing/mailing-read.php : Mail read : ".$sql, LOG_DEBUG);
-
-$resql=$db->query($sql);
$db->close();
?>
diff --git a/htdocs/public/emailing/mailing-usubscribe.php b/htdocs/public/emailing/mailing-usubscribe.php
new file mode 100644
index 00000000000..a46946b9661
--- /dev/null
+++ b/htdocs/public/emailing/mailing-usubscribe.php
@@ -0,0 +1,94 @@
+
+ * Copyright (C) 2005-2011 Laurent Destailleur
+ * Copyright (C) 2012 Florian Henry
+ *
+ * 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
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+
+/**
+ * \file scripts/emailings/mailing-read.php
+ * \ingroup mailing
+ * \brief Script use to update unsubcribe contact to prospect mailing list
+ */
+
+define("NOLOGIN",1); // This means this output page does not require to be logged.
+define("NOCSRFCHECK",1); // We accept to go on this page from external web site.
+
+require("../../main.inc.php");
+require_once(DOL_DOCUMENT_ROOT."/lib/company.lib.php");
+
+global $user, $conf, $langs;
+
+$langs->load("main");
+$langs->load("mails");
+
+$id=GETPOST('tag');
+$unsuscrib=GETPOST('unsuscrib');
+
+
+if (($id!='') && ($unsuscrib=='1'))
+{
+ //Udate status of mail in Destinaries maling list
+ $statut='3';
+ $sql = "UPDATE ".MAIN_DB_PREFIX."mailing_cibles SET statut=".$statut." WHERE tag='".$id."'";
+ dol_syslog("public/emailing/mailing-read.php : Mail unsubcribe : ".$sql, LOG_DEBUG);
+
+ $resql=$db->query($sql);
+
+ //Update status communication of prospect
+ $sql = "UPDATE ".MAIN_DB_PREFIX."societe SET fk_stcomm=-1 WHERE rowid IN (SELECT source_id FROM ".MAIN_DB_PREFIX."mailing_cibles WHERE tag='".$id."' AND source_type='thirdparty')";
+ dol_syslog("public/emailing/mailing-read.php : Mail unsubcribe : ".$sql, LOG_DEBUG);
+
+ $resql=$db->query($sql);
+
+ $sql = "SELECT mc.email";
+ $sql .= " FROM ".MAIN_DB_PREFIX."mailing_cibles as mc";
+ $sql .= " WHERE mc.tag='".$id."'";
+
+ $resql=$db->query($sql);
+
+ $obj = $db->fetch_object($resql);
+
+ header("Content-type: text/html; charset=".$conf->file->character_set_client);
+
+ print '';
+ print "\n";
+ print "\n";
+ print "\n";
+ print ''."\n";
+ print ''."\n";
+ print ''."\n";
+ print "".$langs->trans("MailUnsubcribe")."\n";
+ print ''."\n";
+ print '';
+
+ print "\n";
+ print ''."\n";
+ print '