home *** CD-ROM | disk | FTP | other *** search
/ 11 Top Anwendungen / CD_ROM_MAGAZIN.iso / MoneyMethod-Demo / Beispiel / source / XML / tabpages.xsl < prev    next >
Encoding:
Extensible Markup Language  |  2000-05-29  |  2.8 KB  |  81 lines

  1. <xsl:stylesheet
  2.   version="1.0"
  3.   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  4.   xmlns:xt="http://www.jclark.com/xt">
  5. <xsl:output method="html"/>
  6. <!--<xsl:strip-space elements='*'/>-->
  7.  
  8. <xsl:include href="tabbody.xsl"/>
  9. <xsl:include href="tabnav.xsl"/>
  10.  
  11.  
  12. <xsl:template name="generate-table-pages">
  13.   <xsl:param name="count"/>        <!-- starting row number -->
  14.   <xsl:param name="tabnum"/>       <!-- current table number -->
  15.   <xsl:param name="splitcount"/>   <!-- number of rows in each table -->
  16.   <xsl:param name="preview"/>      <!-- generate all pages or one page -->
  17. <!-- execution context - category -->
  18.  
  19.  
  20.      <xt:document href="{concat ($filepath, 'tcat', position(), $tabnum, '.htm')}" method="htm">
  21.        <html>
  22.          <head>
  23.            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
  24.            <meta name="GENERATOR" content=""/>
  25.            <title>Electronic shop model</title>
  26.          </head>
  27.        <script>
  28.     <xsl:text disable-output-escaping="yes">
  29.     var loaded=false;
  30.     function netscape()
  31.     {
  32.      var name = navigator.appName;
  33.  
  34.      if(name.indexOf("Netscape") > -1) return(true);
  35.      else return (false);
  36.         }
  37.     </xsl:text>
  38.        </script>
  39.        <xsl:element name="body" use-attribute-sets="page-style">
  40.  
  41.        <!-- here comes the table navigation controls -->
  42.        <xsl:call-template name="tabnavi">
  43.           <xsl:with-param name="tabnum" select="$tabnum"/>
  44.           <xsl:with-param name="count" select="$count"/>
  45.           <xsl:with-param name="splitcount" select="$splitcount"/>
  46.        </xsl:call-template>
  47.        <!-- here ends the table navigation controls -->
  48.  
  49.        <br/>
  50.  
  51.     <xsl:call-template name="tabbody">
  52.       <xsl:with-param name="count"><xsl:value-of select="$count"/></xsl:with-param>        <!-- starting row number -->
  53.       <xsl:with-param name="splitcount"><xsl:value-of select="$splitcount"/></xsl:with-param>   <!-- number of rows in each table -->
  54.     </xsl:call-template>
  55.  
  56.        </xsl:element>  <!--body -->
  57.        <script src="scripts/xslcheck.js">
  58.        <xsl:comment>Comment</xsl:comment>
  59.        </script>
  60.        <script src="scripts/images.js">
  61.        <xsl:comment>Comment</xsl:comment>
  62.        </script>
  63.        <script>
  64.        loaded = true;
  65.        </script>
  66.        </html>
  67.      </xt:document>
  68.   
  69.   <xsl:if test="$preview != 'yes'">
  70.   <xsl:if test="count(ancestor-or-self::category/row)>=$count+$splitcount">
  71.     <xsl:call-template name="generate-table-pages">
  72.        <xsl:with-param name="count" select="$count+$splitcount"/>
  73.        <xsl:with-param name="tabnum" select="$tabnum+1"/>
  74.        <xsl:with-param name="splitcount" select="$splitcount"/>
  75.     </xsl:call-template>
  76.   </xsl:if>
  77.   </xsl:if>
  78. </xsl:template> <!-- end generate-table-pages -->
  79.  
  80. </xsl:stylesheet>
  81.