[PATCH 3/7] Add cylinder support to manual2xml XSLT

Miika Turkia miika.turkia at gmail.com
Sat Dec 20 11:23:31 PST 2014


This adds support for importing cylinder information from manually kept
dive logs. However, this cannot be used before GUI counterpart is added.

Signed-off-by: Miika Turkia <miika.turkia at gmail.com>
---
 xslt/manualcsv2xml.xslt | 50 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/xslt/manualcsv2xml.xslt b/xslt/manualcsv2xml.xslt
index 60a239d..ac9d5c3 100644
--- a/xslt/manualcsv2xml.xslt
+++ b/xslt/manualcsv2xml.xslt
@@ -21,6 +21,11 @@
   <xsl:param name="dateformat" select="dateformat"/>
   <xsl:param name="airtempField" select="airtempField"/>
   <xsl:param name="watertempField" select="watertempField"/>
+  <xsl:param name="cylindersizeField" select="cylindersizeField"/>
+  <xsl:param name="startpressureField" select="startpressureField"/>
+  <xsl:param name="endpressureField" select="endpressureField"/>
+  <xsl:param name="o2Field" select="o2Field"/>
+  <xsl:param name="heField" select="heField"/>
   <xsl:output method="xml" encoding="utf-8" indent="yes"/>
 
   <xsl:variable name="lf"><xsl:text>
@@ -208,6 +213,51 @@
         </temperature>
       </xsl:if>
 
+      <xsl:if test="$cylindersizeField > 0 or $startpressureField > 0 or $endpressureField > 0 or o2Field >0 or heField > 0">
+        <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:attribute>
+          </xsl:if>
+          <xsl:if test="$startpressureField > 0">
+            <xsl:attribute name="start">
+              <xsl:call-template name="getFieldByIndex">
+                <xsl:with-param name="index" select="$startpressureField"/>
+                <xsl:with-param name="line" select="$line"/>
+              </xsl:call-template>
+            </xsl:attribute>
+          </xsl:if>
+          <xsl:if test="$endpressureField > 0">
+            <xsl:attribute name="end">
+              <xsl:call-template name="getFieldByIndex">
+                <xsl:with-param name="index" select="$endpressureField"/>
+                <xsl:with-param name="line" select="$line"/>
+              </xsl:call-template>
+            </xsl:attribute>
+          </xsl:if>
+          <xsl:if test="$o2Field > 0">
+            <xsl:attribute name="o2">
+              <xsl:call-template name="getFieldByIndex">
+                <xsl:with-param name="index" select="$o2Field"/>
+                <xsl:with-param name="line" select="$line"/>
+              </xsl:call-template>
+            </xsl:attribute>
+          </xsl:if>
+          <xsl:if test="$heField > 0">
+            <xsl:attribute name="he">
+              <xsl:call-template name="getFieldByIndex">
+                <xsl:with-param name="index" select="$heField"/>
+                <xsl:with-param name="line" select="$line"/>
+              </xsl:call-template>
+            </xsl:attribute>
+          </xsl:if>
+        </cylinder>
+      </xsl:if>
+
       <xsl:if test="$maxDepthField >= 0 or $meanDepthField >= 0">
         <depth>
           <xsl:if test="$maxDepthField >= 0">
-- 
1.9.1



More information about the subsurface mailing list