Fixed bug #4957: CSV export stop exporting a field when there is a linebreak. Thanks...
authorErnesto Baschny <ernst@cron-it.de>
Sat, 28 Apr 2007 20:28:38 +0000 (20:28 +0000)
committerErnesto Baschny <ernst@cron-it.de>
Sat, 28 Apr 2007 20:28:38 +0000 (20:28 +0000)
git-svn-id: https://svn.typo3.org/TYPO3v4/Core/trunk@2300 709f56b5-9817-0410-a4d7-c38de5d9e867

ChangeLog
t3lib/class.t3lib_div.php

index aa18717..701b803 100755 (executable)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-04-28  Ernesto Baschny  <ernst@cron-it.de>
+
+       * Fixed bug #4957: CSV export stop exporting a field when there is a linebreak. Thanks for Oliver Klee for the idea and solution.
+       * !!! t3lib_div::cvsValues now exports like RFC 4180 (embedded line-breaks allowed)
+
 2007-04-28  Andreas Otto  <andreas.otto@dkd.de>
 
        * Fixed bug #3649: Call to a member function formWidth() on object $GLOBALS['TBE_TEMPLATE'] instead on $GLOBALS['SOBE']. Thanks to Chi Hoang for supplying a patch.
 2007-04-28  Andreas Otto  <andreas.otto@dkd.de>
 
        * Fixed bug #3649: Call to a member function formWidth() on object $GLOBALS['TBE_TEMPLATE'] instead on $GLOBALS['SOBE']. Thanks to Chi Hoang for supplying a patch.
@@ -17,7 +22,7 @@
 
 2007-04-28  Oliver Hader  <oh@inpublica.de>
 
 
 2007-04-28  Oliver Hader  <oh@inpublica.de>
 
-       * Fixed bug #5519: EM - Some input fields don't have real labels yet (thanks to Oliver Klee)
+       * Fixed bug #5519: EM - Some input fields don't have real labels yet (patch by Oliver Klee)
 
 2007-04-27  Martin Kutschker  <martin.t.kutschker@blackbox.net>
 
 
 2007-04-27  Martin Kutschker  <martin.t.kutschker@blackbox.net>
 
index 719e518..ca58165 100755 (executable)
@@ -1698,10 +1698,8 @@ class t3lib_div {
        function csvValues($row,$delim=',',$quote='"')  {
                reset($row);
                $out=array();
        function csvValues($row,$delim=',',$quote='"')  {
                reset($row);
                $out=array();
-               while(list(,$value)=each($row)) {
-                       list($valPart) = explode(chr(10),$value);
-                       $valPart = trim($valPart);
-                       $out[]=str_replace($quote,$quote.$quote,$valPart);
+               foreach ($row as $value) {
+                       $out[] = str_replace($quote, $quote.$quote, $value);
                }
                $str = $quote.implode($quote.$delim.$quote,$out).$quote;
                return $str;
                }
                $str = $quote.implode($quote.$delim.$quote,$out).$quote;
                return $str;