This will convert cylinder size when importing from imperial units. I am using default working pressure of 3000 PSI that is not precisely correct, but should be close enough for the most common aluminium cylinders.
Signed-off-by: Miika Turkia <[email protected]> --- xslt/manualcsv2xml.xslt | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/xslt/manualcsv2xml.xslt b/xslt/manualcsv2xml.xslt index cae2b62..4f79463 100644 --- a/xslt/manualcsv2xml.xslt +++ b/xslt/manualcsv2xml.xslt @@ -264,10 +264,20 @@ <cylinder> <xsl:if test="$cylindersizeField > 0"> <xsl:attribute name="size"> - <xsl:call-template name="getFieldByIndex"> - <xsl:with-param name="index" select="$cylindersizeField"/> - <xsl:with-param name="line" select="$line"/> - </xsl:call-template> + <xsl:variable name="size"> + <xsl:call-template name="getFieldByIndex"> + <xsl:with-param name="index" select="$cylindersizeField"/> + <xsl:with-param name="line" select="$line"/> + </xsl:call-template> + </xsl:variable> + <xsl:choose> + <xsl:when test="$units = 0"> + <xsl:value-of select="$size"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="format-number((translate($size, translate($size, '0123456789', ''), '') * 14.7 div 3000) div 0.35315, '#.#')"/> + </xsl:otherwise> + </xsl:choose> </xsl:attribute> </xsl:if> <xsl:if test="$startpressureField > 0"> -- 2.5.0 _______________________________________________ subsurface mailing list [email protected] http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface
