Fix merge print to work with both old & new ODF spreadsheets

- adds support for calcext:value-type cell attribute
This commit is contained in:
Nathan Gray 2014-03-18 14:13:57 +00:00
parent 4ebb85a58f
commit 92e29ff0c4

View File

@ -1084,7 +1084,7 @@ abstract class bo_merge
switch($mimetype)
{
case 'application/vnd.oasis.opendocument.spreadsheet': // open office calc
$format = '/<table:table-cell([^>]+?)office:value-type="[^"]+"([^>]*?)(?:calcext:value-type="[^"]+")>.?<([a-z].*?)[^>]*>('.implode('|',$names).')<\/\3>.?<\/table:table-cell>/s';
$format = '/<table:table-cell([^>]+?)office:value-type="[^"]+"([^>]*?)(?:calcext:value-type="[^"]+")?>.?<([a-z].*?)[^>]*>('.implode('|',$names).')<\/\3>.?<\/table:table-cell>/s';
$replacement = '<table:table-cell$1office:value-type="float" office:value="$4"$2 calcext:value-type="float"><$3>$4</$3></table:table-cell>';
break;
case 'application/vnd.oasis.opendocument.text': // tables in open office writer