joerg 2003/11/05 05:24:49
Modified: src/blocks/petstore/samples/stylesheets site2html.xsl Log: fixed some issues: - exclude-result-prefixes="xalan" not needed, but if specified, it needs the namespace declaration - the item view and the cart item view formatted a non-existent number => NaN - indentation (tabs => spaces) Revision Changes Path 1.2 +586 -597 cocoon-2.1/src/blocks/petstore/samples/stylesheets/site2html.xsl Index: site2html.xsl =================================================================== RCS file: /home/cvs/cocoon-2.1/src/blocks/petstore/samples/stylesheets/site2html.xsl,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- site2html.xsl 10 Jul 2003 23:48:52 -0000 1.1 +++ site2html.xsl 5 Nov 2003 13:24:49 -0000 1.2 @@ -1,602 +1,591 @@ <?xml version="1.0" encoding="utf-8"?> -<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - exclude-result-prefixes="xalan" > +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> - <xsl:template match="site"> - <html> - <head> - <meta content="text/html; charset=windows-1252" http-equiv="Content-Type" /> - <meta HTTP-EQUIV="Cache-Control" CONTENT="max-age=0"/> - <meta HTTP-EQUIV="Cache-Control" CONTENT="no-cache"/> - <meta http-equiv="expires" content="0"/> - <meta HTTP-EQUIV="Expires" CONTENT="Tue, 01 Jan 1980 1:00:00 GMT"/> - <meta HTTP-EQUIV="Pragma" CONTENT="no-cache"/> - </head> - <body bgcolor="white"> - <table background="images/bkg-topbar.gif" border="0" cellspacing="0" cellpadding="5" width="100%"> - <tbody> - <tr> - <td> - <form method="post" action="index.do"> - <input type="image" border="0" src="images/logo-topbar.gif" /> - <select name="view" width="14" align="left" onChange="document.forms[0].submit()"> - <xsl:choose> - <xsl:when test="@view='jxpath'"> - <option value="JXPath">JXPath</option> - <option value="Jexl">Jexl</option> - <option value="Xsp">Xsp</option> - <option value="Velocity">Velocity</option> - </xsl:when> - <xsl:when test="@view='jexl'"> - <option value="Jexl">Jexl</option> - <option value="JXPath">JXPath</option> - <option value="Xsp">Xsp</option> - <option value="Velocity">Velocity</option> - </xsl:when> - <xsl:otherwise> - <option value="Xsp">Xsp</option> - <option value="JXPath">JXPath</option> - <option value="Jexl">Jexl</option> - <option value="Velocity">Velocity</option> - </xsl:otherwise> - </xsl:choose> - </select> - </form> - </td> - <td align="right"> - <a href="viewCart.do"><img border="0" name="img_cart" src="images/cart.gif" /></a><img border="0" src="images/separator.gif" hspace="4" /> - <xsl:choose> - <xsl:when test="@signOn='true'"> - <a href="signonForm.do"><img border="0" name="img_signin" src="images/sign-in.gif" /></a> - </xsl:when> - <xsl:otherwise> - <a href="signonForm.do?signoff=true"><img border="0" name="img_signout" src="images/sign-out.gif" /></a><img border="0" src="images/separator.gif" hspace="4" /> - <a href="editAccount.form"><img border="0" name="img_myaccount" src="images/my_account.gif" /></a> - </xsl:otherwise> - </xsl:choose> - <img border="0" src="images/separator.gif" hspace="4" /><a href="../help.html"><img border="0" name="img_help" src="images/help.gif" /></a> - </td> - <td align="left" valign="bottom"> - <form method="post" action="searchProducts.do"> - <input name="keyword" size="14" /> - <input border="0" src="images/search.gif" type="image" /> - </form> - </td> - </tr> - </tbody> - </table> - <center> - <a href="viewCategory.do?categoryId=FISH"><img border="0" src="images/sm_fish.gif" /></a> - <img border="0" src="images/separator.gif" hspace="4" /> - <a href="viewCategory.do?categoryId=DOGS"><img border="0" src="images/sm_dogs.gif" /></a> - <img border="0" src="images/separator.gif" hspace="4" /> - <a href="viewCategory.do?categoryId=REPTILES"><img border="0" src="images/sm_reptiles.gif" /></a> - <img border="0" src="images/separator.gif" hspace="4" /> - <a href="viewCategory.do?categoryId=CATS"><img border="0" src="images/sm_cats.gif" /></a> - <img border="0" src="images/separator.gif" hspace="4" /> - <a href="viewCategory.do?categoryId=BIRDS"><img border="0" src="images/sm_birds.gif" /></a> - </center> - <xsl:apply-templates/> - <br/> - <p align="center"> - <a href="http://cocoon.apache.org"><img border="0" align="center" src="images/cocoon.gif" /></a> - </p> - </body> - </html> - </xsl:template> - - <xsl:template match="welcome"> - <table border="0" cellspacing="0" width="100%"> - <tbody> - <tr> - <td valign="top" width="100%"> - <table align="left" border="0" cellspacing="0" width="80%"> - <tbody> - <tr> - <td valign="top"> - <xsl:apply-templates/> - </td> - <td align="center" bgcolor="white" height="300" width="100%"> - <map name="estoremap"> - <area alt="Birds" coords="72,2,280,250" href="viewCategory.do?categoryId=BIRDS" shape="RECT" /> - <area alt="Fish" coords="2,180,72,250" href="viewCategory.do?categoryId=FISH" shape="RECT" /> - <area alt="Dogs" coords="60,250,130,320" href="viewCategory.do?categoryId=DOGS" shape="RECT" /> - <area alt="Reptiles" coords="140,270,210,340" href="viewCategory.do?categoryId=REPTILES" shape="RECT" /> - <area alt="Cats" coords="225,240,295,310" href="viewCategory.do?categoryId=CATS" shape="RECT" /> - <area alt="Birds" coords="280,180,350,250" href="viewCategory.do?categoryId=BIRDS" shape="RECT" /> - </map> - <img border="0" height="355" src="images/splash.gif" align="center" usemap="#estoremap" width="350" /> - </td> - </tr> - </tbody> - </table> - </td> - </tr> - </tbody> - </table> - </xsl:template> - - <xsl:template match="menu"> - <table bgcolor="#FFFF88" border="0" cellspacing="0" cellpadding="5" width="200"> - <tbody> - <tr> - <td> - <!-- - #if (!$accountForm.signOn) - <b><i><font size="2" color="BLACK">Welcome $accountForm.account.firstName!</font></i></b> - #end - --> - </td> - </tr> - <xsl:apply-templates/> - </tbody> - </table> - </xsl:template> - - <xsl:template match="menu/category"> - <tr> - <td> - <a href="[EMAIL PROTECTED]"><i><h2><xsl:value-of select="@name" /></h2></i></a> - </td> - </tr> - </xsl:template> - - <xsl:template match="backpointer"> - <table align="left" bgcolor="#008800" border="0" cellspacing="2" cellpadding="2"> - <tr> - <td bgcolor="#FFFF88"> - <a href="[EMAIL PROTECTED]"><b><font color="BLACK" size="2"><< <xsl:value-of select="@name" /></font></b></a> - </td> - </tr> - </table> - </xsl:template> - - <xsl:template match="category"> - <p> - <center> - <h2><xsl:value-of select="@name" /></h2> - </center> - <table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="3"> - <tr bgcolor="#CCCCCC"> - <td> - <b>Product ID</b> - </td> - <td> - <b>Name</b> - </td> - </tr> - <xsl:apply-templates/> - </table> - </p> - </xsl:template> - - <xsl:template match="category/product"> - <tr bgcolor="#FFFF88"> - <td> - <b><a href="[EMAIL PROTECTED]"><font color="BLACK"><xsl:value-of select="@id" /></font></a></b> - </td> - <td> - <xsl:value-of select="@name" /> - </td> - </tr> - </xsl:template> - - <xsl:template match="search"> - <table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="3"> - <tr bgcolor="#CCCCCC"> - <td></td> - <td> - <b>Product ID</b> - </td> - <td> - <b>Name</b> - </td> - </tr> - - <xsl:apply-templates/> - </table> - - </xsl:template> - - <xsl:template match="search/product"> - <tr bgcolor="#FFFF88"> - <td><a href="[EMAIL PROTECTED]"><xsl:value-of select="product-desc" /></a></td> - <td> - <b><a href="[EMAIL PROTECTED]"><font color="BLACK"><xsl:value-of select="@id" /></font></a></b> - </td> - <td><xsl:value-of select="@name" /></td> - </tr> - </xsl:template> - - <xsl:template match="situation"> - <tr> - <td> - <xsl:if test="@firstPage='false'" > - <a href="[EMAIL PROTECTED]"><font color="white"><B><< Prev</B></font></a> - </xsl:if> - <xsl:if test="@lastPage='false'" > - <a href="[EMAIL PROTECTED]"><font color="white"><B>Next >></B></font></a> - </xsl:if> - </td> - </tr> - </xsl:template> - - <xsl:template match="product"> - <p> - <center> - <b><font size="4"><xsl:value-of select="@name" /></font></b> - </center> - - <table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="3"> - <tr bgcolor="#CCCCCC"> - <td><b>Item ID</b></td> - <td><b>Product ID</b></td> - <td><b>Description</b></td> - <td><b>List Price</b></td> - <td></td> - </tr> - <xsl:apply-templates/> - </table> - </p> - </xsl:template> - - <xsl:template match="product/item"> - <tr bgcolor="#FFFF88"> - <td> - <b><a href="[EMAIL PROTECTED]"><xsl:value-of select="@id" /></a></b> - </td> - <td> - <b><xsl:value-of select="@product-id" /></b> - </td> - <td> - <xsl:value-of select="desc" /><xsl:text> </xsl:text><xsl:value-of select="../@name" /> - </td> - <td> - <xsl:text>$</xsl:text> <xsl:value-of select="price" /> - </td> - <td> - <a href="[EMAIL PROTECTED]"><img border="0" src="images/button_add_to_cart.gif" /></a> - </td> - </tr> - </xsl:template> - - <xsl:template name="cart-common-columns"> - <td><b>Item ID</b></td> - <td><b>Product ID</b></td> - <td><b>Description</b></td> - <td><b>Quantity</b></td> - <td><b>List Price</b></td> - </xsl:template> - - <xsl:template match="[EMAIL PROTECTED]'Shopping Cart']"> - <table border="0" width="100%" cellspacing="0" cellpadding="0"> - <tr> - <td valign="top" width="20%" align="left"> - <xsl:apply-templates select="backpointer" /> - </td> - <td valign="top" align="center"> - <h2 align="center"><xsl:value-of select="@name" /></h2> - <form action="updateCartQuantities.do" method="post" > - <table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="5"> - <tr bgcolor="#cccccc"> - <xsl:call-template name="cart-common-columns" /> - <td></td> - </tr> - <xsl:if test="not(item)"> - <tr bgcolor="#FFFF88"> - <td colspan="6"> - <b>Your cart is empty.</b> - </td> - </tr> - </xsl:if> - <xsl:apply-templates select="item" /> - <tr bgcolor="#FFFF88"> - <td colspan="5" align="right"> - <b>Sub Total: $<xsl:value-of select="format-number (total, '###,##0.00')"/></b><br /> - <input type="image" border="0" src="images/button_update_cart.gif" name="update" /> - </td> - <td></td> - </tr> - </table> - </form> - <xsl:if test="item"> - <xsl:apply-templates select="nextpointer" /> - </xsl:if> - </td> - <td valign="top" width="20%" align="right"> - </td> - </tr> - </table> - </xsl:template> - - <xsl:template match="[EMAIL PROTECTED]'Checkout Summary']"> - <table border="0" width="100%" cellspacing="0" cellpadding="0"> - <tr> - <td valign="top" width="20%" align="left"> - <xsl:apply-templates select="backpointer" /> - </td> - <td valign="top" align="center"> - <h2 align="center"><xsl:value-of select="@name" /></h2> - <table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="5"> - <tr bgcolor="#cccccc"> - <xsl:call-template name="cart-common-columns" /> - </tr> - <xsl:apply-templates select="item" /> - <tr bgcolor="#FFFF88"> - <td colspan="5" align="right"> - <b>Sub Total: $<xsl:value-of select="format-number (total, '###,##0.00')"/></b><br /> - </td> - </tr> - </table> - <xsl:apply-templates select="nextpointer" /> - </td> - <td valign="top" width="20%" align="right"> - </td> - </tr> - </table> - </xsl:template> - - <xsl:template match="[EMAIL PROTECTED]'Status']"> - <table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="5"> - <tr bgcolor="#cccccc"> - <xsl:call-template name="cart-common-columns" /> - </tr> - <xsl:apply-templates select="item" /> - <tr bgcolor="#FFFF88"> - <td colspan="5" align="right"> - <b>Total: $<xsl:value-of select="format-number (total, '###,##0.00')"/></b><br /> - </td> - </tr> - </table> - </xsl:template> - - - <xsl:template match="nextpointer"> - <br /> - <center> - <a href="[EMAIL PROTECTED]"><img border="0" src="[EMAIL PROTECTED]" /></a> - </center> - </xsl:template> - - - <xsl:template match="cart/item"> - <tr bgcolor="#FFFF88"> - <td> - <b><xsl:value-of select="@id" /></b> - </td> - <td> - <xsl:value-of select="@product-id" /> - </td> - <td> - <xsl:value-of select="desc" /> - </td> - <td align="center"> - <xsl:choose> - <xsl:when test="../@name='Shopping Cart'"> - <input type="text" size="3" name="[EMAIL PROTECTED]" > - <xsl:attribute name="value"><xsl:value-of select="format-number (quantity, '####')"/></xsl:attribute> - </input> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="format-number (quantity, '####')"/> - </xsl:otherwise> - </xsl:choose> - </td> - <td align="right"> - $<xsl:value-of select="format-number (price, '###,##0.00')"/> - </td> - <xsl:if test="../@name='Shopping Cart'"> - <td> - <a href="[EMAIL PROTECTED]"><img border="0" src="images/button_remove.gif" /></a> - </td> - </xsl:if> - </tr> - </xsl:template> - - - - - <xsl:template match="item"> - <p> - <table align="center" bgcolor="#008800" cellspacing="2" cellpadding="3" border="0" width="60%"> - <tr bgcolor="#FFFF88"> - <td bgcolor="#FFFFFF"> - <xsl:value-of select="product-desc" /> - </td> - </tr> - <tr bgcolor="#FFFF88"> - <td width="100%" bgcolor="#cccccc"> - <b><xsl:value-of select="@id" /></b> - </td> - </tr> - <tr bgcolor="#FFFF88"> - <td> - <b><font size="4"><xsl:value-of select="desc" /></font></b> - </td> - </tr> - <tr bgcolor="#FFFF88"> - <td> - <font size="3"><i><xsl:value-of select="product-name" /></i></font> - </td> - </tr> - <!-- quantity stuff still missing --> - - <tr bgcolor="#FFFF88"> - <td> - <xsl:value-of select="format-number (instock, '####')"/> in stock. - </td> - </tr> - <tr bgcolor="#FFFF88"> - <td> - $<xsl:value-of select="format-number (price, '###,##0.00')"/> - </td> - </tr> - <tr bgcolor="#FFFF88"> - <td> - <a href="[EMAIL PROTECTED]" ><img border="0" src="images/button_add_to_cart.gif" /></a> - </td> - </tr> - </table> - </p> - </xsl:template> - - <xsl:template match="editAccountForm"> - <xsl:copy-of select="*"/> - </xsl:template> - - <xsl:template match="[EMAIL PROTECTED]'workingAccountForm']"> - <form> - <xsl:copy-of select="@action | @method | @styleId "/> - <xsl:choose> - <xsl:when test="/site/@signOn='true'"> - <hidden name="workingAccountForm" property="validate" value="newAccount"/> - </xsl:when> - <xsl:otherwise> - <hidden name="workingAccountForm" property="validate" value="editAccount" /> - <hidden name="workingAccountForm" property="account.username" /> - </xsl:otherwise> - </xsl:choose> - <table cellpadding="10" cellspacing="0" align="center" border="1" bgcolor="#dddddd"> - <tr> - <td> - <xsl:apply-templates/> - </td> - </tr> - </table> - <br /> - <center> - <input border="0" type="image" src="images/button_submit.gif" name="submit" value="Save Account Information" /> - </center> - </form> - <xsl:if test="/site/@signOn='false'"> - <p> - <center><b><a href="listOrders.do">My Orders</a></b></center> - </p> - </xsl:if> - </xsl:template> - - - <xsl:template match="[EMAIL PROTECTED]'workingOrderForm']"> - <b><font color="RED"><xsl:value-of select="message" /></font></b> - <form> - <xsl:copy-of select="@action | @method | @styleId"/> - <xsl:apply-templates/> - <p><center> - <input type="image" src="images/button_submit.gif"/> - </center> - </p> - </form> - </xsl:template> - - <xsl:template match="[EMAIL PROTECTED]'signon']"> - <xsl:apply-templates select="message"/> - <form> - <xsl:copy-of select="@action | @method"/> - <table align="center" border="0"> - <tr> - <td colspan="2">Please enter your username and password.<br /> </td> - </tr> - <xsl:apply-templates select="input"/> - </table> - </form> - </xsl:template> - - - <xsl:template match="panel[panel]"> - <table width="60%" align="center" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFF88"> - <xsl:if test="@header"> - <tr bgcolor="#FFFF88"> - <td align="center" colspan="2"> - <font size="4"><b><xsl:value-of select="@header" /></b></font> - <xsl:if test="@subheader"> - <br /><font size="3"><b><xsl:value-of select="@subheader" /></b></font> - </xsl:if> - </td> - </tr> - </xsl:if> - <xsl:apply-templates/> - </table> - </xsl:template> - - <xsl:template match="panel"> - <font color="darkgreen"><h3><xsl:value-of select="@label" /></h3></font> - <table border="0" cellpadding="3" cellspacing="1" bgcolor="#008800"> - <xsl:apply-templates/> - </table> - </xsl:template> - - <xsl:template match="panel/panel"> - <tr bgcolor="#FFFF88"> - <td colspan="2"> - <font color="GREEN" size="4"><b><xsl:value-of select="@label" />:</b></font> - </td> - </tr> - <xsl:apply-templates/> - </xsl:template> - - <xsl:template match="panel/select"> - <tr bgcolor="#FFFF88"> - <td><xsl:value-of select="@label" /></td> - <td> - <select> - <xsl:copy-of select="@type | @src | @value | @name | @size | @selected | node()" /> - </select> - </td> - </tr> - </xsl:template> - - <xsl:template match="panel/input"> - <tr bgcolor="#FFFF88"> - <td><xsl:value-of select="@label" /></td> - <td><input><xsl:copy-of select="@type | @src | @value | @name | @size | @selected"/></input></td> - </tr> - </xsl:template> - - <xsl:template match="panel/field"> - <tr bgcolor="#FFFF88"> - <td><xsl:value-of select="@label" />:</td> - <td><xsl:value-of select="." /></td> - </tr> - </xsl:template> - - <xsl:template match="panel/[EMAIL PROTECTED]"> - <tr bgcolor="#FFFF88"> - <td colspan="[EMAIL PROTECTED]"><xsl:value-of select="@label" /> - <xsl:apply-templates /> - </td> - </tr> - </xsl:template> - - <xsl:template match="message"> - <br clear="all" /> - <center> - <b> - <font size="4"> - <xsl:if test="@type='warning'"> - <xsl:attribute name="color">RED</xsl:attribute> - </xsl:if> - <xsl:value-of select="." /> - </font> - </b> - </center> - <br clear="all" /> - </xsl:template> - - - <xsl:template match="input"> - <tr> - <td><xsl:value-of select="@label" /></td> - <td><input><xsl:copy-of select="@type | @src | @value | @name | @size | @selected"/></input></td> - </tr> - </xsl:template> - - - <xsl:template match="register"> - <center> - <a href="newAccountForm.do"><img border="0" src="images/button_register_now.gif" /></a> - </center> - </xsl:template> + <xsl:template match="site"> + <html> + <head> + <meta content="text/html; charset=windows-1252" http-equiv="Content-Type" /> + <meta HTTP-EQUIV="Cache-Control" CONTENT="max-age=0"/> + <meta HTTP-EQUIV="Cache-Control" CONTENT="no-cache"/> + <meta http-equiv="expires" content="0"/> + <meta HTTP-EQUIV="Expires" CONTENT="Tue, 01 Jan 1980 1:00:00 GMT"/> + <meta HTTP-EQUIV="Pragma" CONTENT="no-cache"/> + </head> + <body bgcolor="white"> + <table background="images/bkg-topbar.gif" border="0" cellspacing="0" cellpadding="5" width="100%"> + <tbody> + <tr> + <td> + <form method="post" action="index.do"> + <input type="image" border="0" src="images/logo-topbar.gif" /> + <select name="view" width="14" align="left" onChange="document.forms[0].submit()"> + <xsl:choose> + <xsl:when test="@view='jxpath'"> + <option value="JXPath">JXPath</option> + <option value="Jexl">Jexl</option> + <option value="Xsp">Xsp</option> + <option value="Velocity">Velocity</option> + </xsl:when> + <xsl:when test="@view='jexl'"> + <option value="Jexl">Jexl</option> + <option value="JXPath">JXPath</option> + <option value="Xsp">Xsp</option> + <option value="Velocity">Velocity</option> + </xsl:when> + <xsl:otherwise> + <option value="Xsp">Xsp</option> + <option value="JXPath">JXPath</option> + <option value="Jexl">Jexl</option> + <option value="Velocity">Velocity</option> + </xsl:otherwise> + </xsl:choose> + </select> + </form> + </td> + <td align="right"> + <a href="viewCart.do"><img border="0" name="img_cart" src="images/cart.gif" /></a><img border="0" src="images/separator.gif" hspace="4" /> + <xsl:choose> + <xsl:when test="@signOn='true'"> + <a href="signonForm.do"><img border="0" name="img_signin" src="images/sign-in.gif" /></a> + </xsl:when> + <xsl:otherwise> + <a href="signonForm.do?signoff=true"><img border="0" name="img_signout" src="images/sign-out.gif" /></a><img border="0" src="images/separator.gif" hspace="4" /> + <a href="editAccount.form"><img border="0" name="img_myaccount" src="images/my_account.gif" /></a> + </xsl:otherwise> + </xsl:choose> + <img border="0" src="images/separator.gif" hspace="4" /><a href="../help.html"><img border="0" name="img_help" src="images/help.gif" /></a> + </td> + <td align="left" valign="bottom"> + <form method="post" action="searchProducts.do"> + <input name="keyword" size="14" /> + <input border="0" src="images/search.gif" type="image" /> + </form> + </td> + </tr> + </tbody> + </table> + <center> + <a href="viewCategory.do?categoryId=FISH"><img border="0" src="images/sm_fish.gif" /></a> + <img border="0" src="images/separator.gif" hspace="4" /> + <a href="viewCategory.do?categoryId=DOGS"><img border="0" src="images/sm_dogs.gif" /></a> + <img border="0" src="images/separator.gif" hspace="4" /> + <a href="viewCategory.do?categoryId=REPTILES"><img border="0" src="images/sm_reptiles.gif" /></a> + <img border="0" src="images/separator.gif" hspace="4" /> + <a href="viewCategory.do?categoryId=CATS"><img border="0" src="images/sm_cats.gif" /></a> + <img border="0" src="images/separator.gif" hspace="4" /> + <a href="viewCategory.do?categoryId=BIRDS"><img border="0" src="images/sm_birds.gif" /></a> + </center> + <xsl:apply-templates/> + <br/> + <p align="center"> + <a href="http://cocoon.apache.org"><img border="0" align="center" src="images/cocoon.gif" /></a> + </p> + </body> + </html> + </xsl:template> + + <xsl:template match="welcome"> + <table border="0" cellspacing="0" width="100%"> + <tbody> + <tr> + <td valign="top" width="100%"> + <table align="left" border="0" cellspacing="0" width="80%"> + <tbody> + <tr> + <td valign="top"> + <xsl:apply-templates/> + </td> + <td align="center" bgcolor="white" height="300" width="100%"> + <map name="estoremap"> + <area alt="Birds" coords="72,2,280,250" href="viewCategory.do?categoryId=BIRDS" shape="RECT" /> + <area alt="Fish" coords="2,180,72,250" href="viewCategory.do?categoryId=FISH" shape="RECT" /> + <area alt="Dogs" coords="60,250,130,320" href="viewCategory.do?categoryId=DOGS" shape="RECT" /> + <area alt="Reptiles" coords="140,270,210,340" href="viewCategory.do?categoryId=REPTILES" shape="RECT" /> + <area alt="Cats" coords="225,240,295,310" href="viewCategory.do?categoryId=CATS" shape="RECT" /> + <area alt="Birds" coords="280,180,350,250" href="viewCategory.do?categoryId=BIRDS" shape="RECT" /> + </map> + <img border="0" height="355" src="images/splash.gif" align="center" usemap="#estoremap" width="350" /> + </td> + </tr> + </tbody> + </table> + </td> + </tr> + </tbody> + </table> + </xsl:template> + + <xsl:template match="menu"> + <table bgcolor="#FFFF88" border="0" cellspacing="0" cellpadding="5" width="200"> + <tbody> + <tr> + <td> + <!-- + #if (!$accountForm.signOn) + <b><i><font size="2" color="BLACK">Welcome $accountForm.account.firstName!</font></i></b> + #end + --> + </td> + </tr> + <xsl:apply-templates/> + </tbody> + </table> + </xsl:template> + + <xsl:template match="menu/category"> + <tr> + <td> + <a href="[EMAIL PROTECTED]"><i><h2><xsl:value-of select="@name" /></h2></i></a> + </td> + </tr> + </xsl:template> + + <xsl:template match="backpointer"> + <table align="left" bgcolor="#008800" border="0" cellspacing="2" cellpadding="2"> + <tr> + <td bgcolor="#FFFF88"> + <a href="[EMAIL PROTECTED]"><b><font color="BLACK" size="2"><< <xsl:value-of select="@name" /></font></b></a> + </td> + </tr> + </table> + </xsl:template> + + <xsl:template match="category"> + <p> + <center> + <h2><xsl:value-of select="@name" /></h2> + </center> + <table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="3"> + <tr bgcolor="#CCCCCC"> + <td> + <b>Product ID</b> + </td> + <td> + <b>Name</b> + </td> + </tr> + <xsl:apply-templates/> + </table> + </p> + </xsl:template> + + <xsl:template match="category/product"> + <tr bgcolor="#FFFF88"> + <td> + <b><a href="[EMAIL PROTECTED]"><font color="BLACK"><xsl:value-of select="@id" /></font></a></b> + </td> + <td> + <xsl:value-of select="@name" /> + </td> + </tr> + </xsl:template> + + <xsl:template match="search"> + <table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="3"> + <tr bgcolor="#CCCCCC"> + <td></td> + <td> + <b>Product ID</b> + </td> + <td> + <b>Name</b> + </td> + </tr> + <xsl:apply-templates/> + </table> + </xsl:template> + + <xsl:template match="search/product"> + <tr bgcolor="#FFFF88"> + <td><a href="[EMAIL PROTECTED]"><xsl:value-of select="product-desc" /></a></td> + <td> + <b><a href="[EMAIL PROTECTED]"><font color="BLACK"><xsl:value-of select="@id" /></font></a></b> + </td> + <td><xsl:value-of select="@name" /></td> + </tr> + </xsl:template> + + <xsl:template match="situation"> + <tr> + <td> + <xsl:if test="@firstPage='false'" > + <a href="[EMAIL PROTECTED]"><font color="white"><B><< Prev</B></font></a> + </xsl:if> + <xsl:if test="@lastPage='false'" > + <a href="[EMAIL PROTECTED]"><font color="white"><B>Next >></B></font></a> + </xsl:if> + </td> + </tr> + </xsl:template> + + <xsl:template match="product"> + <p> + <center> + <b><font size="4"><xsl:value-of select="@name" /></font></b> + </center> + <table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="3"> + <tr bgcolor="#CCCCCC"> + <td><b>Item ID</b></td> + <td><b>Product ID</b></td> + <td><b>Description</b></td> + <td><b>List Price</b></td> + <td></td> + </tr> + <xsl:apply-templates/> + </table> + </p> + </xsl:template> + + <xsl:template match="product/item"> + <tr bgcolor="#FFFF88"> + <td> + <b><a href="[EMAIL PROTECTED]"><xsl:value-of select="@id" /></a></b> + </td> + <td> + <b><xsl:value-of select="@product-id" /></b> + </td> + <td> + <xsl:value-of select="desc" /><xsl:text> </xsl:text><xsl:value-of select="../@name" /> + </td> + <td> + <xsl:text>$</xsl:text> <xsl:value-of select="price" /> + </td> + <td> + <a href="[EMAIL PROTECTED]"><img border="0" src="images/button_add_to_cart.gif" /></a> + </td> + </tr> + </xsl:template> + + <xsl:template name="cart-common-columns"> + <td><b>Item ID</b></td> + <td><b>Product ID</b></td> + <td><b>Description</b></td> + <td><b>Quantity</b></td> + <td><b>List Price</b></td> + </xsl:template> + + <xsl:template match="[EMAIL PROTECTED]'Shopping Cart']"> + <table border="0" width="100%" cellspacing="0" cellpadding="0"> + <tr> + <td valign="top" width="20%" align="left"> + <xsl:apply-templates select="backpointer" /> + </td> + <td valign="top" align="center"> + <h2 align="center"><xsl:value-of select="@name" /></h2> + <form action="updateCartQuantities.do" method="post" > + <table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="5"> + <tr bgcolor="#cccccc"> + <xsl:call-template name="cart-common-columns" /> + <td></td> + </tr> + <xsl:if test="not(item)"> + <tr bgcolor="#FFFF88"> + <td colspan="6"> + <b>Your cart is empty.</b> + </td> + </tr> + </xsl:if> + <xsl:apply-templates select="item" /> + <tr bgcolor="#FFFF88"> + <td colspan="5" align="right"> + <b>Sub Total: <xsl:value-of select="format-number(total, '$#,##0.00')"/></b><br /> + <input type="image" border="0" src="images/button_update_cart.gif" name="update" /> + </td> + <td></td> + </tr> + </table> + </form> + <xsl:if test="item"> + <xsl:apply-templates select="nextpointer" /> + </xsl:if> + </td> + <td valign="top" width="20%" align="right"> + </td> + </tr> + </table> + </xsl:template> + + <xsl:template match="[EMAIL PROTECTED]'Checkout Summary']"> + <table border="0" width="100%" cellspacing="0" cellpadding="0"> + <tr> + <td valign="top" width="20%" align="left"> + <xsl:apply-templates select="backpointer" /> + </td> + <td valign="top" align="center"> + <h2 align="center"><xsl:value-of select="@name" /></h2> + <table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="5"> + <tr bgcolor="#cccccc"> + <xsl:call-template name="cart-common-columns" /> + </tr> + <xsl:apply-templates select="item" /> + <tr bgcolor="#FFFF88"> + <td colspan="5" align="right"> + <b>Sub Total: <xsl:value-of select="format-number(total, '$#,##0.00')"/></b><br /> + </td> + </tr> + </table> + <xsl:apply-templates select="nextpointer" /> + </td> + <td valign="top" width="20%" align="right"> + </td> + </tr> + </table> + </xsl:template> + + <xsl:template match="[EMAIL PROTECTED]'Status']"> + <table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="5"> + <tr bgcolor="#cccccc"> + <xsl:call-template name="cart-common-columns" /> + </tr> + <xsl:apply-templates select="item" /> + <tr bgcolor="#FFFF88"> + <td colspan="5" align="right"> + <b>Total: <xsl:value-of select="format-number(total, '$#,##0.00')"/></b><br /> + </td> + </tr> + </table> + </xsl:template> + + + <xsl:template match="nextpointer"> + <br /> + <center> + <a href="[EMAIL PROTECTED]"><img border="0" src="[EMAIL PROTECTED]" /></a> + </center> + </xsl:template> + + + <xsl:template match="cart/item"> + <tr bgcolor="#FFFF88"> + <td> + <b><xsl:value-of select="@id" /></b> + </td> + <td> + <xsl:value-of select="@product-id" /> + </td> + <td> + <xsl:value-of select="desc" /> + </td> + <td align="center"> + <xsl:choose> + <xsl:when test="../@name='Shopping Cart'"> + <input type="text" size="3" name="[EMAIL PROTECTED]" > + <xsl:attribute name="value"><xsl:value-of select="format-number(quantity, '####')"/></xsl:attribute> + </input> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="format-number(quantity, '####')"/> + </xsl:otherwise> + </xsl:choose> + </td> + <td align="right"> + <xsl:value-of select="format-number(price, '$#,##0.00')"/> + </td> + <xsl:if test="../@name='Shopping Cart'"> + <td> + <a href="[EMAIL PROTECTED]"><img border="0" src="images/button_remove.gif" /></a> + </td> + </xsl:if> + </tr> + </xsl:template> + + <xsl:template match="item"> + <p> + <table align="center" bgcolor="#008800" cellspacing="2" cellpadding="3" border="0" width="60%"> + <tr bgcolor="#FFFF88"> + <td bgcolor="#FFFFFF"> + <xsl:value-of select="product-desc" /> + </td> + </tr> + <tr bgcolor="#FFFF88"> + <td width="100%" bgcolor="#cccccc"> + <b><xsl:value-of select="@id" /></b> + </td> + </tr> + <tr bgcolor="#FFFF88"> + <td> + <b><font size="4"><xsl:value-of select="desc" /></font></b> + </td> + </tr> + <tr bgcolor="#FFFF88"> + <td> + <font size="3"><i><xsl:value-of select="product-name" /></i></font> + </td> + </tr> + <!-- quantity stuff still missing --> + <tr bgcolor="#FFFF88"> + <td> + <xsl:value-of select="format-number(instock, '####')"/> in stock. + </td> + </tr> + <tr bgcolor="#FFFF88"> + <td> + <xsl:value-of select="format-number(price, '$#,##0.00')"/> + </td> + </tr> + <tr bgcolor="#FFFF88"> + <td> + <a href="[EMAIL PROTECTED]" ><img border="0" src="images/button_add_to_cart.gif" /></a> + </td> + </tr> + </table> + </p> + </xsl:template> + + <xsl:template match="editAccountForm"> + <xsl:copy-of select="*"/> + </xsl:template> + + <xsl:template match="[EMAIL PROTECTED]'workingAccountForm']"> + <form> + <xsl:copy-of select="@action | @method | @styleId "/> + <xsl:choose> + <xsl:when test="/site/@signOn='true'"> + <hidden name="workingAccountForm" property="validate" value="newAccount"/> + </xsl:when> + <xsl:otherwise> + <hidden name="workingAccountForm" property="validate" value="editAccount" /> + <hidden name="workingAccountForm" property="account.username" /> + </xsl:otherwise> + </xsl:choose> + <table cellpadding="10" cellspacing="0" align="center" border="1" bgcolor="#dddddd"> + <tr> + <td> + <xsl:apply-templates/> + </td> + </tr> + </table> + <br /> + <center> + <input border="0" type="image" src="images/button_submit.gif" name="submit" value="Save Account Information" /> + </center> + </form> + <xsl:if test="/site/@signOn='false'"> + <p> + <center><b><a href="listOrders.do">My Orders</a></b></center> + </p> + </xsl:if> + </xsl:template> + + + <xsl:template match="[EMAIL PROTECTED]'workingOrderForm']"> + <b><font color="RED"><xsl:value-of select="message" /></font></b> + <form> + <xsl:copy-of select="@action | @method | @styleId"/> + <xsl:apply-templates/> + <p> + <center> + <input type="image" src="images/button_submit.gif"/> + </center> + </p> + </form> + </xsl:template> + + <xsl:template match="[EMAIL PROTECTED]'signon']"> + <xsl:apply-templates select="message"/> + <form> + <xsl:copy-of select="@action | @method"/> + <table align="center" border="0"> + <tr> + <td colspan="2">Please enter your username and password.<br /> </td> + </tr> + <xsl:apply-templates select="input"/> + </table> + </form> + </xsl:template> + + <xsl:template match="panel[panel]"> + <table width="60%" align="center" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFF88"> + <xsl:if test="@header"> + <tr bgcolor="#FFFF88"> + <td align="center" colspan="2"> + <font size="4"><b><xsl:value-of select="@header" /></b></font> + <xsl:if test="@subheader"> + <br /><font size="3"><b><xsl:value-of select="@subheader" /></b></font> + </xsl:if> + </td> + </tr> + </xsl:if> + <xsl:apply-templates/> + </table> + </xsl:template> + + <xsl:template match="panel"> + <font color="darkgreen"><h3><xsl:value-of select="@label" /></h3></font> + <table border="0" cellpadding="3" cellspacing="1" bgcolor="#008800"> + <xsl:apply-templates/> + </table> + </xsl:template> + + <xsl:template match="panel/panel"> + <tr bgcolor="#FFFF88"> + <td colspan="2"> + <font color="GREEN" size="4"><b><xsl:value-of select="@label" />:</b></font> + </td> + </tr> + <xsl:apply-templates/> + </xsl:template> + + <xsl:template match="panel/select"> + <tr bgcolor="#FFFF88"> + <td><xsl:value-of select="@label" /></td> + <td> + <select> + <xsl:copy-of select="@type | @src | @value | @name | @size | @selected | node()" /> + </select> + </td> + </tr> + </xsl:template> + + <xsl:template match="panel/input"> + <tr bgcolor="#FFFF88"> + <td><xsl:value-of select="@label" /></td> + <td><input><xsl:copy-of select="@type | @src | @value | @name | @size | @selected"/></input></td> + </tr> + </xsl:template> + + <xsl:template match="panel/field"> + <tr bgcolor="#FFFF88"> + <td><xsl:value-of select="@label" />:</td> + <td><xsl:value-of select="." /></td> + </tr> + </xsl:template> + + <xsl:template match="panel/[EMAIL PROTECTED]"> + <tr bgcolor="#FFFF88"> + <td colspan="[EMAIL PROTECTED]"><xsl:value-of select="@label" /> + <xsl:apply-templates /> + </td> + </tr> + </xsl:template> + + <xsl:template match="message"> + <br clear="all" /> + <center> + <b> + <font size="4"> + <xsl:if test="@type='warning'"> + <xsl:attribute name="color">RED</xsl:attribute> + </xsl:if> + <xsl:value-of select="." /> + </font> + </b> + </center> + <br clear="all" /> + </xsl:template> + + <xsl:template match="input"> + <tr> + <td><xsl:value-of select="@label" /></td> + <td><input><xsl:copy-of select="@type | @src | @value | @name | @size | @selected"/></input></td> + </tr> + </xsl:template> + + <xsl:template match="register"> + <center> + <a href="newAccountForm.do"><img border="0" src="images/button_register_now.gif" /></a> + </center> + </xsl:template> </xsl:stylesheet> -
