Reworked contact page. The "Local Contact" part is built dynamically now.
svn path=/trunk/; revision=6383
This commit is contained in:
86
contact/contact.xsl
Normal file
86
contact/contact.xsl
Normal file
@@ -0,0 +1,86 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<xsl:output method="xml" encoding="ISO-8859-1" indent="yes" />
|
||||
|
||||
<!-- Fill dynamic content -->
|
||||
<xsl:template match="dynamic-content">
|
||||
<xsl:for-each select="/html/set/contact">
|
||||
<xsl:sort select="@id" />
|
||||
|
||||
<xsl:variable name="country">
|
||||
<xsl:value-of select="@id" />
|
||||
</xsl:variable>
|
||||
|
||||
<!-- Heading -->
|
||||
<xsl:element name="h3">
|
||||
<xsl:value-of select="/html/set/country[@id=$country]" />
|
||||
</xsl:element>
|
||||
|
||||
<!-- Email -->
|
||||
<xsl:if test="email != ''">
|
||||
<xsl:element name="p">
|
||||
<xsl:value-of select="/html/text[@id='email']" />
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:element name="a">
|
||||
<xsl:attribute name="href">
|
||||
<xsl:text>mailto:</xsl:text>
|
||||
<xsl:value-of select="email" />
|
||||
</xsl:attribute>
|
||||
<xsl:value-of select="email" />
|
||||
</xsl:element>
|
||||
</xsl:element>
|
||||
</xsl:if>
|
||||
|
||||
<!-- Phone -->
|
||||
<xsl:if test="phone != ''">
|
||||
<xsl:element name="p">
|
||||
<xsl:value-of select="/html/text[@id='phone']" />
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:value-of select="phone" />
|
||||
</xsl:element>
|
||||
</xsl:if>
|
||||
|
||||
<!-- Fax -->
|
||||
<xsl:if test="fax != ''">
|
||||
<xsl:element name="p">
|
||||
<xsl:value-of select="/html/text[@id='fax']" />
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:value-of select="fax" />
|
||||
</xsl:element>
|
||||
</xsl:if>
|
||||
|
||||
<!-- Core team members -->
|
||||
<xsl:element name="p">
|
||||
<xsl:choose>
|
||||
<xsl:when test="count(/html/set/person[@country=$country])>0">
|
||||
<xsl:value-of select="/html/text[@id='members']" />
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:for-each select="/html/set/person[@country=$country]">
|
||||
<xsl:if test="position()!=1">
|
||||
<xsl:text>, </xsl:text>
|
||||
</xsl:if>
|
||||
<xsl:value-of select="name" />
|
||||
</xsl:for-each>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="/html/text[@id='nomembers']" />
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:element>
|
||||
|
||||
</xsl:for-each>
|
||||
</xsl:template>
|
||||
|
||||
<!-- Do not copy <set> and <text> to output at all -->
|
||||
<xsl:template match="set" />
|
||||
<xsl:template match="text" />
|
||||
|
||||
<!-- For all other nodes, copy verbatim -->
|
||||
<xsl:template match="@*|node()" priority="-1">
|
||||
<xsl:copy>
|
||||
<xsl:apply-templates select="@*|node()"/>
|
||||
</xsl:copy>
|
||||
</xsl:template>
|
||||
|
||||
</xsl:stylesheet>
|
Reference in New Issue
Block a user