Ignore:
Timestamp:
2012-07-25T10:36:48+12:00 (12 years ago)
Author:
sjm84
Message:

A major rework of document templates so that the display templates are easier to modify

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone3/web/interfaces/default/transform/pages/document.xsl

    r26014 r26020  
    5757    </xsl:template>
    5858   
     59    <xsl:template name="documentHeading">
     60        <b><gsf:metadata name="Title"/></b><br/>
     61    </xsl:template>
     62   
     63    <xsl:template name="documentContent">
     64        <xsl:choose>
     65            <xsl:when test="@docType='simple'">
     66                <div id="gs-document">
     67                    <xsl:call-template name="wrappedSectionImage"/>
     68                    <div id="gs-document-text">
     69                        <xsl:call-template name="documentNodeText"/>
     70                    </div>
     71                </div>
     72            </xsl:when>
     73            <xsl:otherwise>
     74                <xsl:call-template name="wrappedDocument"/>
     75            </xsl:otherwise>
     76        </xsl:choose>
     77    </xsl:template>
     78   
    5979    <xsl:template name="sectionHeader">
    6080        <xsl:call-template name="sectionTitle"/>
     81    </xsl:template>
     82   
     83    <xsl:template name="topLevelSectionContent">
     84        <xsl:call-template name="wrappedSectionImage"/>
     85        <xsl:call-template name="wrappedSectionText"/>
     86    </xsl:template>
     87   
     88    <xsl:template name="sectionContent">
     89        <xsl:call-template name="wrappedSectionImage"/>
     90        <xsl:call-template name="wrappedSectionText"/>
     91    </xsl:template>
     92   
     93    <xsl:template name="wrappedSectionText">
     94        <div id="text{@nodeID}" class="sectionText"><!-- *** -->
     95            <xsl:attribute name="style">
     96                <xsl:choose>
     97                    <xsl:when test="/page/pageRequest/paramList/param[@name = 'view']/@value = 'image'">
     98                        <xsl:text>display:none;</xsl:text>
     99                    </xsl:when>
     100                    <xsl:otherwise>
     101                        <xsl:text>display:block;</xsl:text>
     102                    </xsl:otherwise>
     103                </xsl:choose>
     104            </xsl:attribute>
     105
     106            <xsl:call-template name="documentNodeText"/>
     107        </div>
     108    </xsl:template>
     109   
     110    <xsl:template name="sectionImage">
     111        <gsf:image type="screen"/>
    61112    </xsl:template>
    62113   
     
    166217            </xsl:if>
    167218           
    168             <xsl:call-template name="sectionImage"/>
     219            <xsl:choose>
     220                <xsl:when test="../../document">
     221                    <xsl:call-template name="topLevelSectionContent"/>
     222                </xsl:when>
     223                <xsl:otherwise>
     224                    <xsl:call-template name="sectionContent"/>
     225                </xsl:otherwise>
     226            </xsl:choose>
    169227           
    170             <div id="text{@nodeID}" class="sectionText"><!-- *** -->
    171                 <xsl:attribute name="style">
    172                     <xsl:choose>
    173                         <xsl:when test="/page/pageRequest/paramList/param[@name = 'view']/@value = 'image'">
    174                             <xsl:text>display:none;</xsl:text>
    175                         </xsl:when>
    176                         <xsl:otherwise>
    177                             <xsl:text>display:block;</xsl:text>
    178                         </xsl:otherwise>
    179                     </xsl:choose>
    180                 </xsl:attribute>
    181                 <!-- Get the section content from the document template -->
    182                 <xsl:call-template name="documentNodeText"/>
    183             </div>
    184228            <xsl:if test="documentNode">
    185229                <xsl:for-each select="documentNode">
     
    262306            <xsl:otherwise> <!-- display the standard greenstone document -->
    263307                <xsl:call-template name="documentContent"/>
    264             </xsl:otherwise>
    265         </xsl:choose>
    266     </xsl:template>
    267     <xsl:template name="documentContent">
    268         <xsl:choose>
    269             <xsl:when test="@docType='simple'">
    270               <div id="gs-document">                           
    271                 <div id="gs-document-text">
    272                   <xsl:call-template name="documentNodeText"/>
    273                 </div>
    274               </div>
    275 
    276             </xsl:when>
    277             <xsl:otherwise>
    278                 <xsl:call-template name="wrappedDocument"/>
    279308            </xsl:otherwise>
    280309        </xsl:choose>
     
    398427    </xsl:template>
    399428   
    400     <xsl:template name="sectionImage">
     429    <xsl:template name="wrappedSectionImage">
    401430        <gsf:variable name="screenImageWidth"><gsf:metadata name="ScreenWidth"/></gsf:variable>
    402431        <gsf:variable name="screenImageHeight"><gsf:metadata name="ScreenHeight"/></gsf:variable>
     
    446475                </div>
    447476            </xsl:when>
    448             <xsl:when test="metadataList/metadata[@name = 'Screen']">
     477            <xsl:otherwise>
    449478                <div id="image{@nodeID}">
    450479                    <xsl:attribute name="style">
     
    458487                        </xsl:choose>
    459488                    </xsl:attribute>
    460                     <gsf:image type="screen"/>
    461                 </div>
    462             </xsl:when>
     489                    <xsl:call-template name="sectionImage"/><xsl:text> </xsl:text>
     490                </div>
     491            </xsl:otherwise>
    463492        </xsl:choose>
    464     </xsl:template>
    465    
    466     <xsl:template name="documentHeading">
    467         <b><gsf:metadata name="Title"/></b><br/>
    468493    </xsl:template>
    469494   
Note: See TracChangeset for help on using the changeset viewer.