<?xml version="1.0"?>

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

	<xsl:output method="xml" encoding="UTF-8" />
	
	<xsl:template match="/">
	
		<html>
		<head>
   			<title><xsl:value-of select="Birthdays" /></title>
			<link rel="StyleSheet" href="bday.css" type="text/css" />
		</head>
		
		<body>
			<div id="container">
				<xsl:variable name="totalbdays" select="//Table" />
						
				<xsl:call-template name="days">
					<xsl:with-param name="index" select="1" />
					<xsl:with-param name="counter" select="count($totalbdays)" />
					<xsl:with-param name="prevday" select="01" />
					<xsl:with-param name="pcount" select="1" />
				</xsl:call-template>
			</div>
		</body>
		</html>
		
	</xsl:template>
	
	
	<xsl:template name="days">
		
		<xsl:param name="index" select="1" />
		<xsl:param name="counter" select="1" />
		<xsl:param name="prevday" select="1" />
		<xsl:param name="pcount" select="1" />
		
		<xsl:for-each select="/NewDataSet/Table">
			
			<xsl:if test="position() = $index">
									
	 			<xsl:variable name="currday" select="XDAY" />
	
				<xsl:if test="$prevday != $currday">
					<div class="left hdr"><xsl:value-of select="$currday" /></div><div class="right hdr"></div>
				</xsl:if>

				<xsl:variable name="dcount" select="count(//XDAY[.=$currday])" />
		 
		 		<xsl:if test="$pcount mod 2 = 0">
				<div class="right">
					<img src="images/square.gif" /><xsl:value-of select="PREFNAME_FIRST" /><xsl:text> </xsl:text><xsl:value-of select="PREFNAME_LAST" />
				</div>
				</xsl:if>
				<xsl:if test="$pcount mod 2 != 0">
				<div class="left">
					<img src="images/square.gif" /><xsl:value-of select="PREFNAME_FIRST" /><xsl:text> </xsl:text><xsl:value-of select="PREFNAME_LAST" />
				</div>
				</xsl:if>

				<xsl:if test="$dcount = $pcount">
					<xsl:if test="$pcount mod 2 != 0">
						<div class="right"></div>					
					</xsl:if>
				</xsl:if>
		
				<xsl:if test="$dcount = $pcount"> <!-- LAST NAME OF DAY REACHED MOVING TO NEXT DAY -->
					<xsl:if test="$counter > $index">
						<xsl:call-template name="days">
							<xsl:with-param name="index" select="$index+1" />
							<xsl:with-param name="counter" select="$counter" />
							<xsl:with-param name="prevday" select="$currday" />
							<xsl:with-param name="pcount" select="1" />
						</xsl:call-template>
					</xsl:if>
				</xsl:if>
				
				<xsl:if test="$dcount != $pcount"> <!-- CONTINUING TO NEXT NAME OF THIS DAY -->
					<xsl:if test="$counter > $index">
						<xsl:call-template name="days">
							<xsl:with-param name="index" select="$index+1" />
							<xsl:with-param name="counter" select="$counter" />
							<xsl:with-param name="prevday" select="$currday" />
							<xsl:with-param name="pcount" select="$pcount+1" />
						</xsl:call-template>
					</xsl:if>
				</xsl:if>
				
			</xsl:if>
									
		</xsl:for-each>							
 		
	</xsl:template>
	
</xsl:stylesheet>

