Ignore:
Timestamp:
2003-07-04T11:36:52+12:00 (21 years ago)
Author:
kjdon
Message:

moved a lot of the classifier stuff into classifiertools.xsl so that it can be shared between interfaces

Location:
trunk/gsdl3/web/interfaces/default/transform
Files:
1 added
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/gsdl3/web/interfaces/default/transform/classifier.xsl

    r4872 r4883  
    88 
    99  <xsl:include href="style.xsl"/>
    10 
     10  <xsl:include href="classifiertools.xsl"/>
     11 
    1112  <xsl:output method="html"/> 
    1213
     
    5455  </xsl:template>
    5556
    56   <xsl:template match="classifier">
    57     <xsl:param name="collName"/>
    58     <xsl:param name="serviceName"/>
    59     <xsl:variable name="cl_name"><xsl:value-of select="@name"/></xsl:variable>
    60     <xsl:choose>
    61       <xsl:when test="/page/pageResponse/service/classifierList/classifier[@name=$cl_name]/@horizontalAtTop">
    62     <xsl:apply-templates select="." mode="horizontal-at-top">
    63       <xsl:with-param name="collName" select="$collName"/>
    64       <xsl:with-param name="serviceName" select="$serviceName"/>
    65     </xsl:apply-templates>
    66       </xsl:when>
    67       <xsl:otherwise>
    68     <xsl:apply-templates select="." mode="default">
    69       <xsl:with-param name="collName" select="$collName"/>
    70       <xsl:with-param name="serviceName" select="$serviceName"/>
    71     </xsl:apply-templates>
    72       </xsl:otherwise>
    73     </xsl:choose>
    74   </xsl:template>
    75  
    76 
    77   <xsl:template match="classifier" mode="horizontal-at-top">
    78     <xsl:param name="collName"/>
    79     <xsl:param name="serviceName"/>
    80     <table width='537'>
    81       <tr valign='top'>
    82     <xsl:for-each select='classifierNode'>
    83       <xsl:apply-templates select='.' mode="horizontal"><xsl:with-param name='collName' select='$collName'/><xsl:with-param name='serviceName' select='$serviceName'/></xsl:apply-templates>
    84     </xsl:for-each>
    85       </tr>
    86     </table>
    87     <table width='537'>
    88       <tr valign='top'>
    89     <xsl:for-each select='classifierNode'>
    90       <xsl:apply-templates select='.' mode='process-all-children'><xsl:with-param name='collName' select='$collName'/><xsl:with-param name='serviceName' select='$serviceName'/></xsl:apply-templates>
    91     </xsl:for-each>
    92       </tr>
    93     </table>
    94     <xsl:call-template name="greenBar"/>
    95   </xsl:template>
    96 
    97   <xsl:template match="classifier" mode="default"> <!-- the default -->
    98     <xsl:param name="collName"/>
    99     <xsl:param name="serviceName"/>
    100     <table width='537'>
    101       <xsl:for-each select='classifierNode|documentNode'>
    102     <tr valign='top'><xsl:apply-templates select='.'><xsl:with-param name='collName' select='$collName'/><xsl:with-param name='serviceName' select='$serviceName'/></xsl:apply-templates></tr>
    103     <xsl:if test='name()="classifierNode"'>
    104       <!--recurse into the children-->
    105       <tr valign='top'><td><xsl:text> </xsl:text></td><xsl:apply-templates select='.' mode='process-all-children'><xsl:with-param name='collName' select='$collName'/><xsl:with-param name='serviceName' select='$serviceName'/></xsl:apply-templates></tr>
    106     </xsl:if>
    107       </xsl:for-each>
    108     </table>
    109     <xsl:call-template name="greenBar"/>
    110   </xsl:template>
    111   <!-- recursively process all nodes and documents -->
    112  
    113   <xsl:template match="documentNode">
    114     <xsl:param name="collName"/>
    115     <td><a href="{$library_name}?a=d&amp;c={$collName}&amp;d={@nodeID}&amp;dt={@documentType}"><xsl:apply-templates select="." mode="displayNodeIcon"/></a></td><td align='left'><xsl:value-of disable-output-escaping="yes"  select="metadataList/metadata[@name='Title']"/></td>
    116   </xsl:template>
    117  
    118   <!-- icon + title template-->
    119   <xsl:template match="classifierNode">
    120     <xsl:param name="collName"/>
    121     <xsl:param name="serviceName"/>
    122     <td><a><xsl:attribute name='href'><xsl:value-of select='$library_name'/>?a=b&amp;rt=r&amp;s=<xsl:value-of select='$serviceName'/>&amp;c=<xsl:value-of select='$collName'/>&amp;cl=<xsl:value-of select='@nodeID'/><xsl:if test="classifierNode|documentNode">.pr</xsl:if></xsl:attribute><img src='interfaces/default/images/bshelf.gif' border='0' width='20' height='16' /></a></td><td align='left'><xsl:value-of disable-output-escaping="yes" select="metadataList/metadata[@name='Title']"/></td>
    123   </xsl:template>
    124  
    125   <!-- the title is a link: an alternative template -->
    126   <xsl:template match="classifierNode" mode="horizontal">
    127     <xsl:param name="collName"/>
    128     <xsl:param name="serviceName"/>
    129     <xsl:choose>
    130       <xsl:when test="classifierNode|documentNode"><!-- the opened one -->
    131     <td><xsl:value-of disable-output-escaping="yes" select="metadataList/metadata[@name='Title']"/></td>
    132       </xsl:when>
    133       <xsl:otherwise>
    134     <td><a><xsl:attribute name='href'><xsl:value-of select='$library_name'/>?a=b&amp;rt=r&amp;s=<xsl:value-of select='$serviceName'/>&amp;c=<xsl:value-of select='$collName'/>&amp;cl=<xsl:value-of select='@nodeID'/></xsl:attribute><xsl:value-of disable-output-escaping="yes" select="metadataList/metadata[@name='Title']"/></a></td>
    135       </xsl:otherwise>
    136     </xsl:choose>
    137   </xsl:template>
    138  
    139 
    140 <!-- processing for the recursive bit -->
    141 <!-- if interleave=true, process all child nodes and documents, else just do nodes -->
    142 
    143 
    144   <xsl:template match="classifierNode" mode="process-all-children">
    145     <xsl:param name="collName"/>
    146     <xsl:param name="serviceName"/>
    147     <!-- only do this if there are children -->
    148     <xsl:if test="classifierNode|documentNode">
    149       <td>
    150       <table> 
    151     <xsl:for-each select='classifierNode|documentNode'>
    152       <tr valign='top'><xsl:apply-templates select='.'><xsl:with-param name='collName' select='$collName'/><xsl:with-param name='serviceName' select='$serviceName'/></xsl:apply-templates></tr>
    153       <xsl:if test='name()="classifierNode"'>
    154         <tr valign='top'><td><xsl:text> </xsl:text></td><xsl:apply-templates select='.' mode='process-all-children'><xsl:with-param name='collName' select='$collName'/></xsl:apply-templates></tr>
    155       </xsl:if>       
    156     </xsl:for-each>
    157       </table>
    158       </td>
    159     </xsl:if>
    160   </xsl:template>
    161  
    16257</xsl:stylesheet>
    16358
Note: See TracChangeset for help on using the changeset viewer.