FCLT#70361: Management rapportage voor periodieke taken.

svn path=/Website/trunk/; revision=57593
This commit is contained in:
Maykel Geerdink
2022-10-11 16:27:35 +00:00
parent 6840ef96e9
commit e6f51fec34

View File

@@ -3230,144 +3230,319 @@ END:VCALENDAR
</body> </body>
</html> </html>
</xsl:when> </xsl:when>
<xsl:when test="@view='ctr_v_monthly_recurring_tasks'"> <xsl:when test="@view='ctr_v_monthly_recurring_tasks'">
<html> <html>
<head> <head>
<script language="javascript"> <script language="javascript">
function filltd(tdid, pstatus) { function filltd(tdid, pstatus)
var td = document.getElementById(tdid); {
if(td) var td = document.getElementById(tdid);
{ if(td)
<xsl:choose> {
<xsl:when test="$mode = 'excel' or $mode = 'print'">  <xsl:choose>
if (pstatus == "Niet gepland") td.innerHTML = "N"; <xsl:when test="$mode = 'excel' or $mode = 'print'"> 
if (pstatus == "Voltooid") td.innerHTML = "V"; if (pstatus == "Niet gepland") td.innerHTML = "N";
if (pstatus == "Gepland") td.innerHTML = "P"; if (pstatus == "Voltooid") td.innerHTML = "V";
</xsl:when> if (pstatus == "Gepland") td.innerHTML = "P";
<xsl:otherwise>  </xsl:when>
if (pstatus == "Niet gepland") td.style.backgroundColor = "#003366"; <xsl:otherwise> 
if (pstatus == "Voltooid") td.style.backgroundColor = "#339933"; if (pstatus == "Niet gepland") td.style.backgroundColor = "#003366";
if (pstatus == "Goed") td.style.backgroundColor = "#339933"; if (pstatus == "Voltooid") td.style.backgroundColor = "#339933";
if (pstatus == "Fout") td.style.backgroundColor = "#990000"; if (pstatus == "Goed") td.style.backgroundColor = "#339933";
if (pstatus == "Gepland") td.style.backgroundColor = "#FFA500"; if (pstatus == "Fout") td.style.backgroundColor = "#990000";
</xsl:otherwise> if (pstatus == "Gepland") td.style.backgroundColor = "#FFA500";
</xsl:choose> </xsl:otherwise>
} </xsl:choose>
} }
function filltable() { }
<xsl:for-each select="rapport_data/data_row"> function filltable()
<xsl:sort select="ins_deel_key" order="ascending"/> {
<xsl:sort select="ins_srtcontrole_key" order="ascending"/> <xsl:for-each select="rapport_data/data_row">
filltd("<xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_', MAAND)"/>", "<xsl:value-of select="DEELSRTCONTROLE_STATUS"/>"); <xsl:sort select="ins_deel_key" order="ascending"/>
</xsl:for-each> <xsl:sort select="ins_srtcontrole_key" order="ascending"/>
} filltd("<xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_', MAAND, '_', JAAR)"/>", "<xsl:value-of select="DEELSRTCONTROLE_STATUS"/>");
</script> </xsl:for-each>
var th = document.getElementsByClassName("th_lastyear");
$(".lastyear").hide();
$(".nextyear").hide();
}
function backoneyear()
{
if (!$(".thisyear").is(":hidden"))
{
$(".lastyear").show();
$(".thisyear").hide();
}
else if (!$(".nextyear").is(":hidden"))
{
$(".thisyear").show();
$(".nextyear").hide();
}
}
function forwardoneyear()
{
if (!$(".lastyear").is(":hidden"))
{
$(".lastyear").hide();
$(".thisyear").show();
}
else if (!$(".thisyear").is(":hidden"))
{
$(".thisyear").hide();
$(".nextyear").show();
}
}
</script>
</head> </head>
<body onLoad="filltable();"> <body onLoad="filltable();">
<table width="100%" id="result" class="RStable" border="1" cellpadding="2" cellspacing="2"> <table width="100%" id="result" class="RStable" border="1" cellpadding="2" cellspacing="2">
<xsl:if test="count(rapport_data/data_row)=0"> <xsl:if test="count(rapport_data/data_row)=0">
<tr> <tr>
<td> <td>
<center> <center>
<b>Geen gegevens gevonden</b> <b>Geen gegevens gevonden</b>
</center> </center>
</td> </td>
</tr> </tr>
</xsl:if> </xsl:if>
<xsl:variable name="sorted"> <xsl:variable name="year">
<xsl:for-each select="rapport_data/data_row"> <xsl:value-of select="preceding-sibling::header/dateYear"/>
<xsl:sort select="INS_DEEL_KEY"/> </xsl:variable>
<xsl:sort select="INS_SRTCONTROLE_KEY"/>
<xsl:copy-of select="."/>
</xsl:for-each>
</xsl:variable>
<xsl:for-each select="msxsl:node-set($sorted)/data_row"> <xsl:variable name="sorted">
<xsl:if test="position() = 1"> <xsl:for-each select="rapport_data/data_row">
<tr> <xsl:sort select="INS_DEEL_KEY"/>
<th style="text-align:left">Omschrijving </th> <xsl:sort select="INS_SRTCONTROLE_KEY"/>
<th style="text-align:left">Controle</th> <xsl:copy-of select="."/>
<th style="text-align:left">Jan</th> </xsl:for-each>
<th style="text-align:left">Feb</th> </xsl:variable>
<th style="text-align:left">Mrt</th>
<th style="text-align:left">Apr</th>
<th style="text-align:left">Mei</th>
<th style="text-align:left">Jun</th>
<th style="text-align:left">Jul</th>
<th style="text-align:left">Aug</th>
<th style="text-align:left">Sep</th>
<th style="text-align:left">Okt</th>
<th style="text-align:left">Nov</th>
<th style="text-align:left">Dec</th>
</tr>
</xsl:if>
<xsl:variable name="prev_deel"> <xsl:for-each select="msxsl:node-set($sorted)/data_row">
<xsl:choose> <xsl:if test="position() = 1">
<xsl:when test="position()=1">-1</xsl:when> <tr>
<xsl:otherwise> <th style="text-align:left">Omschrijving </th>
<xsl:value-of select="preceding-sibling::data_row[1]/INS_DEEL_KEY"/> <th style="text-align:left">Controle</th>
</xsl:otherwise> <th><button type="submit" onclick="backoneyear()">&lt;</button></th>
</xsl:choose> <th style="text-align:left" class="lastyear"><xsl:value-of select="$year - 1" /><br></br>Jan</th>
</xsl:variable> <th style="text-align:left" class="lastyear"><br></br>Feb</th>
<th style="text-align:left" class="lastyear"><br></br>Mrt</th>
<th style="text-align:left" class="lastyear"><br></br>Apr</th>
<th style="text-align:left" class="lastyear"><br></br>Mei</th>
<th style="text-align:left" class="lastyear"><br></br>Jun</th>
<th style="text-align:left" class="lastyear"><br></br>Jul</th>
<th style="text-align:left" class="lastyear"><br></br>Aug</th>
<th style="text-align:left" class="lastyear"><br></br>Sep</th>
<th style="text-align:left" class="lastyear"><br></br>Okt</th>
<th style="text-align:left" class="lastyear"><br></br>Nov</th>
<th style="text-align:left" class="lastyear"><xsl:value-of select="$year - 1" /><br></br>Dec</th>
<xsl:variable name="prev_cont"> <th style="text-align:left" class="thisyear"><xsl:value-of select="$year" /><br></br>Jan</th>
<xsl:choose> <th style="text-align:left" class="thisyear"><br></br>Feb</th>
<xsl:when test="position()=1">-1</xsl:when> <th style="text-align:left" class="thisyear"><br></br>Mrt</th>
<xsl:otherwise> <th style="text-align:left" class="thisyear"><br></br>Apr</th>
<xsl:value-of select="preceding-sibling::data_row[1]/INS_SRTCONTROLE_KEY"/> <th style="text-align:left" class="thisyear"><br></br>Mei</th>
</xsl:otherwise> <th style="text-align:left" class="thisyear"><br></br>Jun</th>
</xsl:choose> <th style="text-align:left" class="thisyear"><br></br>Jul</th>
</xsl:variable> <th style="text-align:left" class="thisyear"><br></br>Aug</th>
<th style="text-align:left" class="thisyear"><br></br>Sep</th>
<th style="text-align:left" class="thisyear"><br></br>Okt</th>
<th style="text-align:left" class="thisyear"><br></br>Nov</th>
<th style="text-align:left" class="thisyear"><xsl:value-of select="$year" /><br></br>Dec</th>
<xsl:if test="INS_DEEL_KEY != $prev_deel or INS_SRTCONTROLE_KEY != $prev_cont"> <th style="text-align:left" class="nextyear"><xsl:value-of select="$year + 1" /><br></br>Jan</th>
<tr> <th style="text-align:left" class="nextyear"><br></br>Feb</th>
<td><xsl:value-of select="OMSCHRIJVING"/></td> <th style="text-align:left" class="nextyear"><br></br>Mrt</th>
<td><xsl:value-of select="SRTCONTROLE_OMSCHRIJVING"/></td> <th style="text-align:left" class="nextyear"><br></br>Apr</th>
<xsl:element name="td"> <th style="text-align:left" class="nextyear"><br></br>Mei</th>
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_01')"/></xsl:attribute> <th style="text-align:left" class="nextyear"><br></br>Jun</th>
</xsl:element> <th style="text-align:left" class="nextyear"><br></br>Jul</th>
<xsl:element name="td"> <th style="text-align:left" class="nextyear"><br></br>Aug</th>
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_02')"/></xsl:attribute> <th style="text-align:left" class="nextyear"><br></br>Sep</th>
</xsl:element> <th style="text-align:left" class="nextyear"><br></br>Okt</th>
<xsl:element name="td"> <th style="text-align:left" class="nextyear"><br></br>Nov</th>
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_03')"/></xsl:attribute> <th style="text-align:left" class="nextyear"><xsl:value-of select="$year + 1" /><br></br>Dec</th>
</xsl:element> <th><button type="submit" onclick="forwardoneyear()">&gt;</button></th>
<xsl:element name="td"> </tr>
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_04')"/></xsl:attribute> </xsl:if>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_05')"/></xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_06')"/></xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_07')"/></xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_08')"/></xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_09')"/></xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_10')"/></xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_11')"/></xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY,'_', INS_SRTCONTROLE_KEY, '_12')"/></xsl:attribute>
</xsl:element>
</tr> <xsl:variable name="prev_deel">
</xsl:if> <xsl:choose>
</xsl:for-each> <xsl:when test="position()=1">-1</xsl:when>
</table> <xsl:otherwise>
</body> <xsl:value-of select="preceding-sibling::data_row[1]/INS_DEEL_KEY"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="prev_cont">
<xsl:choose>
<xsl:when test="position()=1">-1</xsl:when>
<xsl:otherwise>
<xsl:value-of select="preceding-sibling::data_row[1]/INS_SRTCONTROLE_KEY"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:if test="INS_DEEL_KEY != $prev_deel or INS_SRTCONTROLE_KEY != $prev_cont">
<tr>
<td><xsl:value-of select="OMSCHRIJVING"/></td>
<td><xsl:value-of select="SRTCONTROLE_OMSCHRIJVING"/></td>
<td></td>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_01', '_', LASTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">lastyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_02', '_', LASTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">lastyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_03', '_', LASTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">lastyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_04', '_', LASTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">lastyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_05', '_', LASTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">lastyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_06', '_', LASTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">lastyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_07', '_', LASTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">lastyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_08', '_', LASTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">lastyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_09', '_', LASTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">lastyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_10', '_', LASTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">lastyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_11', '_', LASTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">lastyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_12', '_', LASTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">lastyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_01', '_', THISYEAR)"/></xsl:attribute>
<xsl:attribute name="class">thisyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_02', '_', THISYEAR)"/></xsl:attribute>
<xsl:attribute name="class">thisyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_03', '_', THISYEAR)"/></xsl:attribute>
<xsl:attribute name="class">thisyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_04', '_', THISYEAR)"/></xsl:attribute>
<xsl:attribute name="class">thisyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_05', '_', THISYEAR)"/></xsl:attribute>
<xsl:attribute name="class">thisyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_06', '_', THISYEAR)"/></xsl:attribute>
<xsl:attribute name="class">thisyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_07', '_', THISYEAR)"/></xsl:attribute>
<xsl:attribute name="class">thisyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_08', '_', THISYEAR)"/></xsl:attribute>
<xsl:attribute name="class">thisyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_09', '_', THISYEAR)"/></xsl:attribute>
<xsl:attribute name="class">thisyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_10', '_', THISYEAR)"/></xsl:attribute>
<xsl:attribute name="class">thisyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_11', '_', THISYEAR)"/></xsl:attribute>
<xsl:attribute name="class">thisyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_12', '_', THISYEAR)"/></xsl:attribute>
<xsl:attribute name="class">thisyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_01', '_', NEXTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">nextyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_02', '_', NEXTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">nextyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_03', '_', NEXTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">nextyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_04', '_', NEXTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">nextyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_05', '_', NEXTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">nextyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_06', '_', NEXTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">nextyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_07', '_', NEXTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">nextyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_08', '_', NEXTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">nextyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_09', '_', NEXTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">nextyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_10', '_', NEXTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">nextyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_11', '_', NEXTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">nextyear</xsl:attribute>
</xsl:element>
<xsl:element name="td">
<xsl:attribute name="id"><xsl:value-of select="concat(INS_DEEL_KEY, '_', INS_SRTCONTROLE_KEY, '_12', '_', NEXTYEAR)"/></xsl:attribute>
<xsl:attribute name="class">nextyear</xsl:attribute>
</xsl:element>
<td></td>
</tr>
</xsl:if>
</xsl:for-each>
</table>
</body>
</html> </html>
</xsl:when> </xsl:when>
<xsl:otherwise> <xsl:otherwise>