<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.1"
   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
   xmlns:msxsl="urn:schemas-microsoft-com:xslt"
   xmlns:user="urn:my-scripts">

<xsl:template match="/">
<html>
<head>
   <title>Test Order</title>
   <link rel="stylesheet" href="stylesxsl.css" type="text/css"/>
</head>
   <body>
      <table width="100%" border="0" cellpadding="0" cellspacing="0">
         <tr>
            <td valign="top" align="left">
               <table width="100%" border="0">
                  <tr>
                     <td width="20%" align="left">
                         <strong><xsl:value-of select="Order/Customer/@custno"/></strong>
            		 </td>
             	     <td align="center">
               	        <strong>OFFICE SUPPLY ORDER FORM: <xsl:value-of select="Order/Attribute[@name = 'CatalogName']"/></strong>
            		</td>
            		<td width="20%" align="right">
                        <strong>Tracking #</strong> <xsl:value-of select="Order/@orderID"/>
                    </td>
         		 </tr>
      		  </table>
              <table width="100%" border="0">
         	     <tr>
            	    <td width="" align="left">
               	       <strong><xsl:value-of select="Order/Customer/Name"/></strong>
            	    </td>
                </tr>
              </table>
             <xsl:apply-templates select="Order/Attribute[@name = 'poNo']"/>
             <table width="100%" border="0">
                <tr>
                   <td valign="top" width="50%">
                       <strong>Bill To:</strong><br/>
                       <xsl:for-each select="Order/Customer/BillTo">
                          <xsl:apply-templates select="Contact" />
                       </xsl:for-each>
                   </td>
                  <td valign="top" width="50%">
                     <strong>Ship To:</strong><br/>
                     <xsl:for-each select="Order/Customer/ShipTo">
                        <xsl:apply-templates select="Contact" />
                     </xsl:for-each>
                  </td>
               </tr>
             </table>
             <table width="100%" border="0">
                <tr>
                   <td width="5%" valign="top"><strong>Line</strong></td>
      			   <td width="8%" valign="top"><strong>Quantity</strong></td>
      			   <td width="13%" valign="top"><strong>Item No</strong></td>
      			   <td width="10%" valign="top"><strong>UM</strong></td>
      			   <td width="35%" valign="top"><strong>Description</strong></td>
      			   <td width="12%" align="right" valign="top"><strong>Unit Price</strong></td>
      			   <td width="25%" align="right" valign="top"><strong>Extended Price</strong></td>
   			   </tr>
         	   <xsl:for-each select="Order/Items">
             	   <xsl:apply-templates/>
         	   </xsl:for-each>
   			   <tr>
      			   <td colspan="6" align="right" valign="top"><strong>SubTotal</strong></td>
   			      <td align="right" valign="top"><xsl:value-of select="format-number(subtotal,'###,###.00')" /></td>
   			   </tr>
   			   <tr>
      			   <td colspan="6" align="right" valign="top"><strong>Sales Tax</strong></td>
   			      <td align="right" valign="top"><xsl:value-of select="format-number(subtotal * 0.086,'###,###.00')" /></td>
   			   </tr>
   			   <tr>
   			      <td colspan="4" valign="top"><strong><xsl:value-of select="lines" /> Line(s) on this Order</strong></td>
      			   <td colspan="2" align="right" valign="top"><strong>Grand Total</strong></td>
   			      <td align="right" valign="top"><xsl:value-of select="format-number(subtotal * 1.086,'###,###.00')" /></td>
   		       </tr>
            </table>
      	    <table width="100%" border="0">
         	   <tr>
            	   <td valign="top" width="100%"><strong>Special Instructions:</strong><br/><xsl:value-of select="Order/Attribute[@name = 'comments']"/></td>
               </tr>
            </table>
         </td>
      </tr>
      <tr valign="bottom" height="50%">
         <td height="50%">
            <table width="100%" border="0">
               <tr>
                  <td align="center" class="smf">
                     <strong>Commercial Office Supply - Phone: (425) 485-6900 - FAX: (425) 487-0435 - EMail: comoff@comoff.com</strong>
                  </td>
               </tr>
            </table>
         </td>
      </tr>
     </table>
   </body>
</html>
</xsl:template>

<xsl:template match="Contact">
   <xsl:value-of select="ContactName"/><br/>
   <xsl:if test="ContactTitle[.!= '']">
      <xsl:value-of select="ContactTitle"/><br/>
   </xsl:if>
   <xsl:value-of select="Company"/><br/>
   <xsl:value-of select="Address"/><br/>
   <xsl:value-of select="City"/>, <xsl:value-of select="State"/>  <xsl:value-of select="PostalCode"/><br/>
   <xsl:if test="PhoneNo[.!= '']"><br/>
      Phone: <xsl:value-of select="PhoneNo"/><br/>
   </xsl:if>
   <xsl:if test="FAXNo[.!= '']"><br/>
      FAX: <xsl:value-of select="FAXNo"/><br/>
   </xsl:if>
   <xsl:if test="Email[.!= '']"><br/>
      E-Mail: <xsl:value-of select="Email"/><br/>
   </xsl:if>
</xsl:template>

<xsl:template match="OrderItem">
   <tr>
      <td align="center" valign="top"><xsl:value-of select="@lineno" /></td>
      <td align="center" valign="top"><xsl:value-of select="Quantity"/></td>
      <td valign="top"><xsl:value-of select="@itemno"/></td>
      <td valign="top"><xsl:value-of select="Price/@units"/></td>
      <td valign="top"><xsl:value-of select="Description"/></td>
      <td align="right" valign="top"><xsl:value-of select="Price"/></td>
      <td align="right" valign="top"><xsl:value-of select="format-number(extendedPrice(this),'###,###.00')" /></td>
   </tr>
</xsl:template>

<xsl:template match="Attribute[@name = 'poNo']">
   <xsl:if test=".[. != '']">
      <table width="100%" border="0">
         <tr>
            <td align="right">
               <strong>Purchase Order Number: </strong> <xsl:value-of select="."/>
            </td>
         </tr>
      </table>
   </xsl:if>
</xsl:template>

   <xsl:script implements-prefix="user" language="JavaScript">
<![CDATA[

   lines = 0;   
   subtotal = 0;
   
   function extendedPrice(n)
   {
      eprice = parseFloat(n.selectSingleNode("Price").text) * parseFloat(n.selectSingleNode("Quantity").text);
      subtotal += eprice;
      return eprice;
   }

   function lineNo(n)
   {
      lines++;
      return childNumber(n);
   }
]]>
</xsl:script>

</xsl:stylesheet>
