Changeset 25687 for main


Ignore:
Timestamp:
2012-05-29T10:27:06+12:00 (12 years ago)
Author:
sjm84
Message:

Our classifier code now supports horizontal classifiers

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone3/web/interfaces/oran/transform/classifiertools.xsl

    r25005 r25687  
    7070        <xsl:param name="collName"/>
    7171        <xsl:param name="serviceName"/>
    72             <xsl:call-template name="processNodeChildren">
     72        <xsl:call-template name="processNodeChildren">
    7373            <xsl:with-param name='collName' select='$collName'/>
    7474            <xsl:with-param name='serviceName' select='$serviceName'/>
     
    8080        <xsl:param name="collName"/>
    8181        <xsl:param name="serviceName"/>
    82         <xsl:for-each select='classifierNode|documentNode'>
    83             <tr>
    84                 <xsl:choose>
    85                     <xsl:when test="name()='documentNode'">
     82        <xsl:choose>
     83            <xsl:when test="@childType = 'VList'">
     84                <xsl:for-each select='classifierNode|documentNode'>
     85                    <tr>
     86                        <xsl:choose>
     87                            <xsl:when test="name()='documentNode'">
     88                                <td>
     89                                    <table id="div{@nodeID}"><tr>
     90                                        <xsl:call-template name="documentNodeWrapper">
     91                                            <xsl:with-param name='collName' select='$collName'/>
     92                                            <xsl:with-param name='serviceName' select='$serviceName'/>
     93                                        </xsl:call-template>
     94                                    </tr></table>
     95                                </td>
     96                            </xsl:when>
     97                            <xsl:when test="name()='classifierNode' and @childType = 'VList'">
     98                                <td>
     99                                    <table id="title{@nodeID}"><tr>
     100                                        <xsl:if test="not(/page/pageResponse/format[@type='browse']/gsf:option[@name='turnstyleClassifiers']) or /page/pageResponse/format[@type='browse']/gsf:option[@name='turnstyleClassifiers']/@value='true'">
     101                                            <td class="headerTD">
     102                                                <img id="toggle{@nodeID}" onclick="toggleSection('{@nodeID}');" class="icon">           
     103                                                    <xsl:attribute name="src">
     104                                                        <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'expand_image')"/>
     105                                                    </xsl:attribute>
     106                                                </img>
     107                                            </td>
     108                                        </xsl:if>
     109                                        <xsl:apply-templates select='.'>
     110                                            <xsl:with-param name='collName' select='$collName'/>
     111                                            <xsl:with-param name='serviceName' select='$serviceName'/>
     112                                        </xsl:apply-templates>
     113                                    </tr></table>
     114                                </td>
     115                                <xsl:if test="child::classifierNode or child::documentNode">
     116                                    <!--recurse into the children-->
     117                                    <tr><td><table class="childrenlist" id="div{@nodeID}">
     118                                        <xsl:apply-templates select='.' mode='process-all-children'>
     119                                            <xsl:with-param name='collName' select='$collName'/>
     120                                            <xsl:with-param name='serviceName' select='$serviceName'/>
     121                                        </xsl:apply-templates>
     122                                    </table></td></tr>
     123                                </xsl:if>
     124                            </xsl:when>
     125                            <xsl:otherwise>Unknown classifier style specified</xsl:otherwise>
     126                        </xsl:choose>
     127                    </tr>
     128                </xsl:for-each>
     129            </xsl:when>
     130            <xsl:when test="@childType = 'HList'">
     131                <table><tr>
     132                    <xsl:for-each select='classifierNode'>
    86133                        <td>
    87                             <table id="div{@nodeID}"><tr>
    88                                 <xsl:call-template name="documentNodeWrapper">
    89                                     <xsl:with-param name='collName' select='$collName'/>
    90                                     <xsl:with-param name='serviceName' select='$serviceName'/>
    91                                 </xsl:call-template>
    92                             </tr></table>
     134                            <xsl:apply-templates select='.'>
     135                                <xsl:with-param name='collName' select='$collName'/>
     136                                <xsl:with-param name='serviceName' select='$serviceName'/>
     137                            </xsl:apply-templates>
    93138                        </td>
    94                     </xsl:when>
    95                     <xsl:otherwise>
    96                         <td>
    97                             <table id="title{@nodeID}"><tr>
    98                                 <xsl:if test="not(/page/pageResponse/format[@type='browse']/gsf:option[@name='turnstyleClassifiers']) or /page/pageResponse/format[@type='browse']/gsf:option[@name='turnstyleClassifiers']/@value='true'">
    99                                     <td class="headerTD">
    100                                         <img id="toggle{@nodeID}" onclick="toggleSection('{@nodeID}');" class="icon">           
    101                                             <xsl:attribute name="src">
    102                                                 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'expand_image')"/>
    103                                             </xsl:attribute>
    104                                         </img>
    105                                     </td>
    106                                 </xsl:if>
    107                                 <xsl:apply-templates select='.'>
    108                                     <xsl:with-param name='collName' select='$collName'/>
    109                                     <xsl:with-param name='serviceName' select='$serviceName'/>
    110                                 </xsl:apply-templates>
    111                             </tr></table>
    112                         </td>
    113                         <xsl:if test="child::classifierNode or child::documentNode">
    114                             <!--recurse into the children-->
    115                             <tr><td><table class="childrenlist" id="div{@nodeID}">
    116                                 <xsl:apply-templates select='.' mode='process-all-children'>
    117                                     <xsl:with-param name='collName' select='$collName'/>
    118                                     <xsl:with-param name='serviceName' select='$serviceName'/>
    119                                 </xsl:apply-templates>
    120                             </table></td></tr>
    121                         </xsl:if>
    122                     </xsl:otherwise>
    123                 </xsl:choose>
    124             </tr>
    125         </xsl:for-each>
     139                    </xsl:for-each>
     140                </tr></table>
     141                <xsl:for-each select='classifierNode'>
     142                    <xsl:call-template name="processNodeChildren">
     143                        <xsl:with-param name='collName' select='$collName'/>
     144                        <xsl:with-param name='serviceName' select='$serviceName'/>
     145                    </xsl:call-template>
     146                </xsl:for-each>
     147            </xsl:when>
     148        </xsl:choose>
    126149    </xsl:template>
    127150
Note: See TracChangeset for help on using the changeset viewer.