1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/get_users.xsl Thu Nov 16 08:30:26 2006 +0000
1.3 @@ -0,0 +1,39 @@
1.4 +<?xml version="1.0"?>
1.5 +<xsl:stylesheet version="1.0"
1.6 + xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
1.7 + xmlns:exsl="http://exslt.org/common"
1.8 + extension-element-prefixes="exsl">
1.9 +
1.10 +<xsl:variable name="users">
1.11 + <xsl:for-each select="//artifact/field[@name='submitted_by' or @name='assigned_to']">
1.12 + <user><xsl:value-of select="normalize-space(.)"/></user>
1.13 + </xsl:for-each>
1.14 + <xsl:for-each select="//artifact/field[@name='artifact_history']/history/field[@name='mod_by']">
1.15 + <user><xsl:value-of select="normalize-space(.)"/></user>
1.16 + </xsl:for-each>
1.17 + <xsl:for-each select="//artifact/field[@name='artifact_messages']/message/field[@name='user_name']">
1.18 + <user><xsl:value-of select="normalize-space(.)"/></user>
1.19 + </xsl:for-each>
1.20 +</xsl:variable>
1.21 +
1.22 +<xsl:variable name="sorted_users">
1.23 + <xsl:for-each select="exsl:node-set($users)/user">
1.24 + <xsl:sort/>
1.25 + <xsl:copy-of select="."/>
1.26 + </xsl:for-each>
1.27 +</xsl:variable>
1.28 +
1.29 +<xsl:template match="/">
1.30 + <users>
1.31 + <xsl:for-each select="exsl:node-set($sorted_users)/user">
1.32 + <xsl:if test="not(. = following-sibling::user[1])">
1.33 + <user>
1.34 + <xsl:value-of select="."/>
1.35 + <xsl:text>@users.sourceforge.net</xsl:text>
1.36 + </user>
1.37 + </xsl:if>
1.38 + </xsl:for-each>
1.39 + </users>
1.40 +</xsl:template>
1.41 +
1.42 +</xsl:stylesheet>