diff --git a/htdocs/core/modules/export/export_csv.modules.php b/htdocs/core/modules/export/export_csv.modules.php index 83de884e7c3..04b090f8827 100644 --- a/htdocs/core/modules/export/export_csv.modules.php +++ b/htdocs/core/modules/export/export_csv.modules.php @@ -299,7 +299,9 @@ class ExportCsv extends ModeleExports */ function csv_clean($newvalue, $charset) { + global $conf; $addquote=0; + // Rule Dolibarr: No HTML //print $charset.' '.$newvalue."\n"; @@ -308,10 +310,14 @@ class ExportCsv extends ModeleExports // Rule 1 CSV: No CR, LF in cells $oldvalue=$newvalue; - $newvalue=str_replace("\r",'',$newvalue); + $newvalue=str_replace("\r",'\r',$newvalue); $newvalue=str_replace("\n",'\n',$newvalue); - if($oldvalue != $newvalue) + if ($conf->global->USE_STRICT_CSV_RULES && $oldvalue != $newvalue) + { + // If strict use of CSV rules, we just add quote + $newvalue=$oldvalue; $addquote=1; + } // Rule 2 CSV: If value contains ", we must escape with ", and add " if (preg_match('/"/',$newvalue))