diff options
author | Rob Austein <sra@hactrn.net> | 2006-10-26 22:25:27 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2006-10-26 22:25:27 +0000 |
commit | dfa35082955d33cb3e9c3f4d67aedfd1297759f7 (patch) | |
tree | 5d43b830726b778c8d5c97085f1bff461ead1a2b | |
parent | 7f96fd72fd48bd54385d8169ab69939427c33ed0 (diff) |
Add "total" line at bottom
svn path=/rcynic/rcynic.xsl; revision=448
-rw-r--r-- | rcynic/rcynic.xsl | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/rcynic/rcynic.xsl b/rcynic/rcynic.xsl index 12ce2864..13b9a4da 100644 --- a/rcynic/rcynic.xsl +++ b/rcynic/rcynic.xsl @@ -40,9 +40,11 @@ <xsl:param name="refresh" select="1800"/> - <xsl:variable name="counts"> + <xsl:param name="show-total" select="1"/> + + <xsl:variable name="sums"> <xsl:for-each select="rcynic-summary/labels/*"> - <x count="{count(/rcynic-summary/host/*[name() = name(current()) and . != 0])}"/> + <x sum="{sum(/rcynic-summary/host/*[name() = name(current()) and . != 0])}"/> </xsl:for-each> </xsl:variable> @@ -72,7 +74,7 @@ <tr> <xsl:for-each select="rcynic-summary/labels/*"> <xsl:variable name="p" select="position()"/> - <xsl:if test="$suppress-zero-columns = 0 or exslt:node-set($counts)/x[$p]/@count > 0"> + <xsl:if test="$suppress-zero-columns = 0 or position() = 1 or exslt:node-set($sums)/x[$p]/@sum > 0"> <td> <b> <xsl:apply-templates/> @@ -89,7 +91,7 @@ <tr> <xsl:for-each select="*"> <xsl:variable name="p" select="position()"/> - <xsl:if test="$suppress-zero-columns = 0 or exslt:node-set($counts)/x[$p]/@count > 0"> + <xsl:if test="$suppress-zero-columns = 0 or position() = 1 or exslt:node-set($sums)/x[$p]/@sum > 0"> <td> <xsl:apply-templates/> </td> @@ -97,6 +99,22 @@ </xsl:for-each> </tr> </xsl:for-each> + <xsl:if test="$show-total != 0"> + <tr> + <td> + <b>Total</b> + </td> + <xsl:for-each select="exslt:node-set($sums)/x[position() > 1]"> + <xsl:if test="$suppress-zero-columns = 0 or @sum > 0"> + <td> + <b> + <xsl:value-of select="@sum"/> + </b> + </td> + </xsl:if> + </xsl:for-each> + </tr> + </xsl:if> </tbody> </table> </body> |