This is an automated email from the ASF dual-hosted git repository.
mseidel pushed a commit to branch AOO42X
in repository https://gitbox.apache.org/repos/asf/openoffice.git
The following commit(s) were added to refs/heads/AOO42X by this push:
new 48a2f9cd8b Dates and times are loaded wrongly from SpreadsheetML
files, because the filter loads only the date or time portion of the
ss:DateTime based on the cell's style.
48a2f9cd8b is described below
commit 48a2f9cd8b92ea4ef01ea0d62af4d4d99a95c2cd
Author: Damjan Jovanovic <[email protected]>
AuthorDate: Fri Jan 13 18:27:50 2023 +0200
Dates and times are loaded wrongly from SpreadsheetML files, because the
filter
loads only the date or time portion of the ss:DateTime based on the cell's
style.
Rather always load the ss:DateTime as our ODF office:date-value in the
XMLSchema-2 dateTime format, with both its date and time part, and then
rely on
formatting to display only the date or time as desired.
Fixes: #82849 - SpreadsheetML ss:DateTime cell value is loaded as either
only
a date or a time
Patch by: Philip J. Turmel <[email protected]>
Reviewed by: me
(cherry picked from commit 0db4a4f44da1c0fb06154ba61c960a18427e751b)
---
.../xslt/import/spreadsheetml/spreadsheetml2ooo.xsl | 18 ++++--------------
1 file changed, 4 insertions(+), 14 deletions(-)
diff --git a/main/filter/source/xslt/import/spreadsheetml/spreadsheetml2ooo.xsl
b/main/filter/source/xslt/import/spreadsheetml/spreadsheetml2ooo.xsl
index e6e19d0900..10d2d1c622 100644
--- a/main/filter/source/xslt/import/spreadsheetml/spreadsheetml2ooo.xsl
+++ b/main/filter/source/xslt/import/spreadsheetml/spreadsheetml2ooo.xsl
@@ -6866,20 +6866,10 @@
</xsl:attribute>
</xsl:when>
<xsl:when test="ss:Data/@ss:Type = 'DateTime'">
- <xsl:choose>
- <xsl:when test="(contains(
$data-format, 'Date') or contains($data-format,'y') or
contains($data-format,'g') or contains($data-format,'d') or
contains($data-format,'e') or starts-with( substring( ss:Data, 11),
'T00:00:00.000' ) ) and (not (contains( $data-format, 'Time') ) )">
- <xsl:attribute
name="office:value-type">date</xsl:attribute>
- <xsl:attribute
name="office:date-value">
- <xsl:value-of
select="substring-before(ss:Data, 'T')"/>
- </xsl:attribute>
- </xsl:when>
- <xsl:otherwise>
- <xsl:attribute
name="office:value-type">time</xsl:attribute>
- <xsl:attribute
name="office:time-value">
- <xsl:value-of
select="concat('P',substring(ss:Data, 11, 3), 'H', substring(ss:Data, 15, 2),
'M', substring(ss:Data, 18,2), 'S')"/>
- </xsl:attribute>
- </xsl:otherwise>
- </xsl:choose>
+ <xsl:attribute
name="office:value-type">date</xsl:attribute>
+ <xsl:attribute name="office:date-value">
+ <xsl:value-of
select="substring(ss:Data, 1, 19)"/>
+ </xsl:attribute>
</xsl:when>
<xsl:when test="ss:Data/@ss:Type = 'Boolean'">
<xsl:attribute
name="office:value-type">boolean</xsl:attribute>