|
From: <rga...@us...> - 2002-11-10 17:55:14
|
Update of /cvsroot/csms/csms-core/src/resources/conf
In directory usw-pr-cvs1:/tmp/cvs-serv11175
Modified Files:
ScoringConfig.xsl
Log Message:
Scoring events are now keyed according to player ID rather than player name
Index: ScoringConfig.xsl
===================================================================
RCS file: /cvsroot/csms/csms-core/src/resources/conf/ScoringConfig.xsl,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** ScoringConfig.xsl 10 Nov 2002 14:51:25 -0000 1.7
--- ScoringConfig.xsl 10 Nov 2002 17:55:10 -0000 1.8
***************
*** 11,17 ****
--- 11,19 ----
<xsl:output method="text/xml" />
+ <!-- URL of the players dataabse -->
<xsl:variable name="playersDataSource">
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/csms/csms-core/src/resources/conf/players.xml?rev=HEAD&content-type=text/xml</xsl:variable>
+ <!-- URL of the Teams database -->
<xsl:variable name="teamDataSource">
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/csms/csms-core/src/resources/conf/teams.xml?rev=HEAD&content-type=text/xml</xsl:variable>
***************
*** 51,57 ****
<xsl:template name="goalScorers">
<xsl:for-each select="//event[type='goal']">
<xsl:call-template name="getPointsNode">
<xsl:with-param name="playerName">
! <xsl:value-of select="./player" />
</xsl:with-param>
--- 53,60 ----
<xsl:template name="goalScorers">
<xsl:for-each select="//event[type='goal']">
+
<xsl:call-template name="getPointsNode">
<xsl:with-param name="playerName">
! <xsl:value-of select="player" />
</xsl:with-param>
***************
*** 761,764 ****
--- 764,791 ----
</xsl:choose>
</xsl:template>
+
+ <!-- Return the player ID given the full name -->
+ <xsl:template name="getPlayerID">
+ <xsl:param name="playerFullName"/>
+ <xsl:variable name="firstName">
+ <xsl:value-of select="substring-before($playerFullName, ' ')"/>
+ </xsl:variable>
+ <xsl:variable name="surname">
+ <xsl:value-of select="substring-after($playerFullName, ' ')"/>
+ </xsl:variable>
+
+ <xsl:variable name="playerID">
+ <xsl:value-of select="document($playersDataSource)/players/player[surname=$surname and firstName=$firstName]/@id"/>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="string-length($playerID) > 0">
+ <xsl:value-of select="$playerID"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="concat('ERROR: Unknown ID for Player (', $playerFullName, ')')"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
<!-- Return the player position -->
***************
*** 949,955 ****
<xsl:param name="eventType" />
<player>
! <xsl:attribute name="name">
! <xsl:value-of select="$playerName" />
</xsl:attribute>
--- 976,991 ----
<xsl:param name="eventType" />
+
+ <xsl:variable name="playerID">
+ <xsl:call-template name="getPlayerID">
+ <xsl:with-param name="playerFullName">
+ <xsl:value-of select="$playerName"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+
<player>
! <xsl:attribute name="playerID">
! <xsl:value-of select="$playerID" />
</xsl:attribute>
|