summaryrefslogtreecommitdiffstats
path: root/xslt/commonTemplates.xsl
diff options
context:
space:
mode:
authorGravatar Miika Turkia <miika.turkia@gmail.com>2013-03-02 09:22:08 +0200
committerGravatar Dirk Hohndel <dirk@hohndel.org>2013-03-01 23:49:09 -0800
commit0f9142b4e3ea3a46f7cee95cf9363c5fd3264ad3 (patch)
tree10780500736925c6a3a90113c7bd02a18fa7d9cb /xslt/commonTemplates.xsl
parent51d20880210d990e35982137067cda1801460d0a (diff)
downloadsubsurface-0f9142b4e3ea3a46f7cee95cf9363c5fd3264ad3.tar.gz
Grab a bit more info from UDDF import
otu and po2 are now grabbed. The po2 value comes from setpo2 tag. Also divecomputerid is constructed from the generator information. Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'xslt/commonTemplates.xsl')
-rw-r--r--xslt/commonTemplates.xsl40
1 files changed, 40 insertions, 0 deletions
diff --git a/xslt/commonTemplates.xsl b/xslt/commonTemplates.xsl
index 2d64a05d8..a9aa44279 100644
--- a/xslt/commonTemplates.xsl
+++ b/xslt/commonTemplates.xsl
@@ -1,6 +1,8 @@
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+ <!-- Convert ISO 8601 time format to "standard" date and time format
+ -->
<xsl:template name="datetime">
<xsl:param name="value"/>
@@ -58,4 +60,42 @@
</xsl:if>
</xsl:template>
+ <!-- Convert units in Pascal given in scientific notation to normal
+ decimal notation -->
+ <xsl:template name="convertPascal">
+ <xsl:param name="value"/>
+
+ <xsl:variable name="number">
+ <xsl:value-of select="translate($value, 'e', 'E')"/>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="contains($number, 'E')">
+ <xsl:variable name="pressure">
+ <xsl:choose>
+ <xsl:when test="$value != ''">
+ <xsl:variable name="Exp" select="substring-after($number, 'E')"/>
+ <xsl:variable name="Man" select="substring-before($number, 'E')"/>
+ <xsl:variable name="Fac" select="substring('100000000000000000000', 1, substring($Exp,2) + 1)"/>
+ <xsl:choose>
+ <xsl:when test="$Exp != ''">
+ <xsl:value-of select="(number($Man) * number($Fac))"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$number"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>0</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <xsl:value-of select="$pressure div 100000"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$value"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
</xsl:stylesheet>