Changeset 25687

Show
Ignore:
Timestamp:
29.05.2012 10:27:06 (7 years ago)
Author:
sjm84
Message:

Our classifier code now supports horizontal classifiers

Files:
1 modified

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