Changeset 26367


Ignore:
Timestamp:
2012-10-23T14:00:36+13:00 (11 years ago)
Author:
kjdon
Message:

split this up into lots of templates so its easier to modify it for a collection. added templates for case/stem/accent params. niupepa has these in preferences page.

File:
1 edited

Legend:

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

    r25462 r26367  
    2323
    2424    <!-- the page content -->
    25     <xsl:template match="/page">
    26 
     25  <xsl:template match="/page">
     26    <xsl:call-template name="prefs-javascript"/>
     27    <xsl:variable name="collName" select="/page/pageRequest/paramList/param[@name='c']/@value"/>
     28   
     29    <div id="queryform">
     30      <form name="PrefForm" method="get" action="{$library_name}" id="prefform">
     31   
     32    <input type='hidden' name='a' value='p'/>
     33    <input type='hidden' name='sa' value='pref'/>
     34    <input type='hidden' name='c' value="{$collName}"/>
     35
     36    <xsl:call-template name="presentation-prefs"/>
     37    <xsl:call-template name="search-prefs"/>
     38    <br/>
     39   
     40    <input type='submit' onclick="bypass=true;"><xsl:attribute name="value"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref.set_prefs')"/></xsl:attribute></input>
     41   
     42      </form>
     43    </div>
     44   
     45  </xsl:template>
     46    <xsl:template name="presentation-prefs">
     47    <h3 class="formheading"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref.prespref')"/></h3>
     48    <div id="presprefs">
     49      <xsl:call-template name="lang-param"/>
     50     <!-- <xsl:call-template name="encoding-param"/>-->
     51      <xsl:call-template name="format-edit-param"/>
     52    <xsl:call-template name="berry-basket-param"/>
     53    <xsl:call-template name="document-maker-param"/>
     54    <xsl:call-template name="book-param"/>
     55    <xsl:call-template name="theme-change-param"/>
     56      </div>
     57  </xsl:template>
     58<xsl:template name="search-prefs">
     59                <h3><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref.searchpref')"/></h3>
     60                <div id="searchprefs">
     61    <xsl:call-template name="hits-param"/>
     62    <xsl:call-template name="max-docs-param"/>
     63                </div>
     64</xsl:template>
     65    <xsl:template name="prefs-javascript">
    2766        <!--
    2867        Add some javascript to the page that notices when a preference is changed
     
    116155            YAHOO.util.Event.addListener(window, 'beforeunload', checkModified);
    117156        </xsl:text></script>
    118 
    119         <xsl:variable name="collName" select="/page/pageRequest/paramList/param[@name='c']/@value"/>
    120         <xsl:variable name="tidyoption"><xsl:value-of select="/page/pageResponse/collection/metadataList/metadata[@name='tidyoption']"/></xsl:variable>
    121 
    122         <div id="queryform">
    123             <form name="PrefForm" method="get" action="{$library_name}" id="prefform">
    124 
    125                 <input type='hidden' name='a' value='p'/>
    126                 <input type='hidden' name='sa' value='pref'/>
    127                 <input type='hidden' name='c' value="{$collName}"/>
    128 
    129                 <!-- presentation preferences -->
    130                 <h3 class="formheading"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref.prespref')"/></h3>
    131                 <div id="presprefs">
    132 
    133                     <!-- language -->
     157    </xsl:template>
     158
     159
     160                <xsl:template name="lang-param">
    134161                    <div class="paramLabel">
    135162                        <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref.interfacelang')"/>
     
    143170
    144171                    </div>
    145                     <br class="clear"/>
    146 
    147                     <!-- encoding -->
     172      <br class="clear"/>
     173
     174</xsl:template>
     175                   
     176
     177                <xsl:template name="encoding-param">
    148178                    <div class="paramValue">
    149179                        <span class="rightspace"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref.encoding')"/></span>
    150180                    </div>
    151                     <br class="clear"/>
    152 
    153                     <!-- format editing -->
     181      <br class="clear"/>
     182
     183    </xsl:template>
     184                   
     185
     186                    <xsl:template name="format-edit-param">
    154187                    <xsl:if test="/page/pageResponse/collection/serviceList/service[@name='CoverageMetadataRetrieve']">
    155188                        <div id="formateditprefs">
     
    167200                        </div>
    168201                    </xsl:if>
    169                 </div>
    170 
    171                 <!-- berry baskets -->
     202</xsl:template>
     203
     204<xsl:template name="berry-basket-param">
    172205                <div id="berrybasketprefs">
    173206                    <xsl:variable name="berrybasket"><xsl:choose><xsl:when test="/page/pageRequest/paramList/param[@name='berrybasket']"><xsl:value-of select="/page/pageRequest/paramList/param[@name='berrybasket']/@value"/></xsl:when><xsl:otherwise>off</xsl:otherwise></xsl:choose></xsl:variable>
     
    183216                    <br class="clear"/>
    184217                </div>
    185                
    186                 <!-- document maker -->
     218</xsl:template>
     219                <xsl:template name="document-maker-param">
    187220                <xsl:if test="/page/pageRequest/userInformation and (util:contains(/page/pageRequest/userInformation/@groups, 'administrator') or util:contains(/page/pageRequest/userInformation/@groups, 'all-collections-editor') or util:contains(/page/pageRequest/userInformation/@groups, $thisCollectionEditor))">
    188221                    <div id="documentmakerprefs">
     
    198231                    </div>
    199232                </xsl:if>
    200 
     233      </xsl:template>
     234      <xsl:template name="book-param">
    201235                <!-- tidy (?) -->
     236        <xsl:variable name="tidyoption"><xsl:value-of select="/page/pageResponse/collection/metadataList/metadata[@name='tidyoption']"/></xsl:variable>
    202237                <xsl:if test="$tidyoption='tidy'">
    203238                    <xsl:variable name="book"><xsl:choose><xsl:when test="/page/pageRequest/paramList/param[@name='book']"><xsl:value-of select="/page/pageRequest/paramList/param[@name='book']/@value"/></xsl:when><xsl:otherwise>off</xsl:otherwise></xsl:choose></xsl:variable>
     
    213248                    <br class="clear"/>
    214249                </xsl:if>
    215                
     250      </xsl:template>
     251      <xsl:template name="theme-change-param">
    216252                <!-- Theme Changer -->
    217253                <xsl:if test="/page/pageRequest/userInformation and util:contains(/page/pageRequest/userInformation/@groups, 'administrator')">
     
    237273                    <br class="clear"/>
    238274                </xsl:if>
    239 
    240                 <!-- search preferences -->
    241                 <h3><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref.searchpref')"/></h3>
    242                 <div id="searchprefs">
     275</xsl:template>
     276
     277<xsl:template name="hits-param">
    243278                    <xsl:variable name="hits">
    244279                        <xsl:choose>
     
    287322                   
    288323                    <br class="clear"/>
    289                    
     324                    </xsl:template>
     325    <xsl:template name="max-docs-param">
    290326                    <xsl:variable name="mdocs">
    291327                        <xsl:choose>
     
    307343                   
    308344                    <br class="clear"/>
    309                 </div>
    310 
    311                 <br/>
    312 
    313                 <input type='submit' onclick="bypass=true;"><xsl:attribute name="value"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref.set_prefs')"/></xsl:attribute></input>
    314 
    315             </form>
    316         </div>
    317 
    318     </xsl:template>
    319 
     345</xsl:template>
     346
     347  <!-- what happens if more than one query service??-->
     348  <xsl:template name="casefold-param">
     349    <xsl:for-each select="/page/pageResponse/collection[@name=$collNameChecked]/serviceList/service[@type='query']/paramList/param[@name='case']"><xsl:call-template name="param-display"/></xsl:for-each>
     350  </xsl:template>
     351  <xsl:template name="stem-param">
     352    <xsl:for-each select="/page/pageResponse/collection[@name=$collNameChecked]/serviceList/service[@type='query']/paramList/param[@name='stem']"><xsl:call-template name="param-display"/></xsl:for-each>
     353  </xsl:template>
     354  <xsl:template name="accentfold-param">
     355    <xsl:for-each select="/page/pageResponse/collection[@name=$collNameChecked]/serviceList/service[@type='query']/paramList/param[@name='accent']"><xsl:call-template name="param-display"/></xsl:for-each>
     356  </xsl:template>
    320357</xsl:stylesheet>
Note: See TracChangeset for help on using the changeset viewer.