diff --git a/htdocs/admin/mails_templates.php b/htdocs/admin/mails_templates.php
index 2c35faea3b1..b896c8962b4 100644
--- a/htdocs/admin/mails_templates.php
+++ b/htdocs/admin/mails_templates.php
@@ -894,7 +894,7 @@ if ($resql) {
$valuetoshow = $langs->trans("Content"); $showfield = 0;
}
if ($fieldlist[$field] == 'content_lines') {
- $valuetoshow = $langs->trans("ContentLines"); $showfield = 0;
+ $valuetoshow = $langs->trans("ContentForLines"); $showfield = 0;
}
// Show fields
@@ -973,6 +973,14 @@ if ($resql) {
$doleditor = new DolEditor($tmpfieldlist.'-'.$rowid, (!empty($obj->{$tmpfieldlist}) ? $obj->{$tmpfieldlist} : ''), '', 500, 'dolibarr_mailings', 'In', 0, false, $okforextended, ROWS_6, '90%');
print $doleditor->Create(1);
}
+ if ($tmpfieldlist == 'content_lines') {
+ print $form->textwithpicto($langs->trans("ContentForLines"), $tabhelp[$id][$tmpfieldlist], 1, 'help', '', 0, 2, $tmpfieldlist).'
';
+ $okforextended = true;
+ if (empty($conf->global->FCKEDITOR_ENABLE_MAIL))
+ $okforextended = false;
+ $doleditor = new DolEditor($tmpfieldlist.'-'.$rowid, (! empty($obj->{$tmpfieldlist}) ? $obj->{$tmpfieldlist} : ''), '', 140, 'dolibarr_mailings', 'In', 0, false, $okforextended, ROWS_6, '90%');
+ print $doleditor->Create(1);
+ }
print '';
print '
| ';
print ' | ';
@@ -1114,35 +1122,6 @@ if ($resql) {
//else print ''.img_delete().''; // Some dictionary can be edited by other profile than admin
}
print '';
-
- /*
- $fieldsforcontent = array('content');
- if (! empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES))
- {
- $fieldsforcontent = array('content', 'content_lines');
- }
- foreach ($fieldsforcontent as $tmpfieldlist)
- {
- $showfield = 1;
- $align = "left";
- $valuetoshow = $obj->{$tmpfieldlist};
-
- $class = 'tddict';
- // Show value for field
- if ($showfield) {
-
- print '| '; // To create an artificial CR for the current tr we are on
- $okforextended = true;
- if (empty($conf->global->FCKEDITOR_ENABLE_MAIL))
- $okforextended = false;
- $doleditor = new DolEditor($tmpfieldlist.'-'.$i, (! empty($obj->{$tmpfieldlist}) ? $obj->{$tmpfieldlist} : ''), '', 140, 'dolibarr_mailings', 'In', 0, false, $okforextended, ROWS_6, '90%', 1);
- print $doleditor->Create(1);
- print ' | ';
- print ' | | | ';
-
- }
- }*/
-
print "
\n";
}
diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php
index ca3908fe843..4f9ec52dd8d 100644
--- a/htdocs/core/class/html.formmail.class.php
+++ b/htdocs/core/class/html.formmail.class.php
@@ -1526,7 +1526,7 @@ class FormMail extends Form
$product = new Product($this->db);
$product->fetch($line->fk_product, '', '', 1);
$product->fetch_optionals();
- if (is_array($extrafields->attributes[$object->table_element]['label']) && count($extrafields->attributes[$object->table_element]['label']) > 0) {
+ if (is_array($extrafields->attributes[$product->table_element]['label']) && count($extrafields->attributes[$product->table_element]['label']) > 0) {
foreach ($extrafields->attributes[$product->table_element]['label'] as $key => $label) {
$substit_line['__PRODUCT_EXTRAFIELD_'.strtoupper($key).'__'] = $product->array_options['options_'.$key];
}
diff --git a/htdocs/core/tpl/card_presend.tpl.php b/htdocs/core/tpl/card_presend.tpl.php
index 212e766589c..7cc95c81fe0 100644
--- a/htdocs/core/tpl/card_presend.tpl.php
+++ b/htdocs/core/tpl/card_presend.tpl.php
@@ -210,6 +210,9 @@ if ($action == 'presend') {
}
// Make substitution in email content
+ if ($object) {
+ $formmail->setSubstitFromObject($object, $langs);
+ }
$substitutionarray = getCommonSubstitutionArray($outputlangs, 0, $arrayoffamiliestoexclude, $object);
$substitutionarray['__CHECK_READ__'] = (is_object($object) && is_object($object->thirdparty)) ? '
' : '';
$substitutionarray['__PERSONALIZED__'] = ''; // deprecated
diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang
index 58ec7dd6be0..f75ba12abe5 100644
--- a/htdocs/langs/en_US/admin.lang
+++ b/htdocs/langs/en_US/admin.lang
@@ -279,6 +279,7 @@ SpaceX=Space X
SpaceY=Space Y
FontSize=Font size
Content=Content
+ContentForLines=Content to display for each product or service (from variable __LINES__ of Content)
NoticePeriod=Notice period
NewByMonth=New by month
Emails=Emails
diff --git a/htdocs/langs/es_ES/admin.lang b/htdocs/langs/es_ES/admin.lang
index 9298219c73f..016b303e18b 100644
--- a/htdocs/langs/es_ES/admin.lang
+++ b/htdocs/langs/es_ES/admin.lang
@@ -280,6 +280,7 @@ SpaceX=Área X
SpaceY=Área Y
FontSize=Tamaño de fuente
Content=Contenido
+ContentForLines=Contenido a mostrar por cada línea de producto o servicio (de la variable __LINES__ definida en Contenido)
NoticePeriod=Plazo de aviso
NewByMonth=Nuevo por mes
Emails=E-Mails