Ignore:
Timestamp:
2016-12-15T10:24:21+13:00 (7 years ago)
Author:
kjdon
Message:

split up the home-help-prefs template into multiple templates for ease of customization

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone3/web/interfaces/default/transform/layouts/header.xsl

    r30807 r31239  
    276276    <!-- ***** HOME HELP PREFERENCES LOGIN ***** -->
    277277    <xsl:template name="home-help-preferences">
    278         <ul id="bannerLinks">
    279 
    280           <!-- RSS feed link can appear in a global format statement (where it has no type attribute)
    281                or in section specific format statements, such as browse, search, display.
    282                If it's present in any format statement, display the RSS link in the bannerlinks section. -->
    283           <xsl:if test="/page/pageResponse/format[@type='display' or @type='browse' or @type='search' or not(@type)]/gsf:option[@name='RSS']/@value = 'true'">
    284             <li><gsf:link type="rss"><gsf:icon file="rssicon.png"/></gsf:link></li>
    285           </xsl:if>
    286 
    287             <!-- preferences -->
    288             <li>
    289                 <a href="{$library_name}/collection/{$collNameChecked}/page/pref">
    290                     <xsl:attribute name="title"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref_tip')"/></xsl:attribute>
    291                     <span id="preferencesButton"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref_b')"/></span>
    292                     <script type="text/javascript">
    293                         <xsl:text disable-output-escaping="yes">
    294                             $("#preferencesButton").button({icons:{primary:"ui-icon-wrench"}});
    295                             $("#preferencesButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
    296                         </xsl:text>
    297                     </script>
    298                 </a>
    299             </li>
    300 
    301             <!-- help -->
    302             <!--<li>
    303                 <a href="{$library_name}/collection/{$collNameChecked}/page/help">
    304                     <xsl:attribute name="title"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'help_tip')"/></xsl:attribute>
    305                     <span id="helpButton"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'help_b')"/></span>
    306                     <script type="text/javascript">
    307                         <xsl:text disable-output-escaping="yes">
    308                             $("#helpButton").button({icons:{primary:"ui-icon-help"}});
    309                             $("#helpButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
    310                         </xsl:text>
    311                     </script>
    312                 </a>
    313             </li>-->
    314            
    315             <!-- login/logout -->
    316             <li id="userMenuButton">
    317                 <xsl:choose>
    318                     <xsl:when test="/page/pageRequest/userInformation/@username">
    319                         <a>
    320                             <xsl:attribute name="href">javascript:toggleUserMenu();</xsl:attribute>
    321                             <script type="text/javascript">
    322                                 <xsl:text disable-output-escaping="yes">
     278      <ul id="bannerLinks">
     279        <li><xsl:call-template name="RSSLink"/></li>
     280        <li><xsl:call-template name="PrefsLink"/></li>
     281        <li><xsl:call-template name="HelpLink"/></li>
     282        <li id="userMenuButton"><xsl:call-template name="LoginoutLink"/></li>
     283        <li><xsl:call-template name="DebugLink"/></li>
     284        <xsl:call-template name="buttonStyling"/>
     285      </ul>
     286    </xsl:template>
     287   
     288    <xsl:template name="RSSLink">
     289      <!-- RSS feed link can appear in a global format statement (where it has no type attribute)
     290           or in section specific format statements, such as browse, search, display.
     291           If it's present in any format statement, display the RSS link in the bannerlinks section. -->
     292      <xsl:if test="/page/pageResponse/format[@type='display' or @type='browse' or @type='search' or not(@type)]/gsf:option[@name='RSS']/@value = 'true'">
     293        <gsf:link type="rss"><gsf:icon file="rssicon.png"/></gsf:link>
     294      </xsl:if>
     295    </xsl:template>
     296   
     297    <xsl:template name="PrefsLink">
     298      <a href="{$library_name}/collection/{$collNameChecked}/page/pref">
     299        <xsl:attribute name="title"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref_tip')"/></xsl:attribute>
     300        <span id="preferencesButton"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref_b')"/></span>
     301        <script type="text/javascript">
     302          <xsl:text disable-output-escaping="yes">
     303        //$("#preferencesButton").button({icons:{primary:"ui-icon-wrench"}});
     304        //$("#preferencesButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
     305          </xsl:text>
     306        </script>
     307      </a>
     308    </xsl:template>
     309   
     310    <xsl:template name="HelpLink">
     311      <a href="{$library_name}/collection/{$collNameChecked}/page/help">
     312        <xsl:attribute name="title"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'help_tip')"/></xsl:attribute>
     313        <span id="helpButton"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'help_b')"/></span>
     314        <script type="text/javascript">
     315          <xsl:text disable-output-escaping="yes">
     316        //$("#helpButton").button({icons:{primary:"ui-icon-help"}});
     317        //$("#helpButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
     318          </xsl:text>
     319        </script>
     320      </a>
     321    </xsl:template>
     322   
     323    <xsl:template name="toggleUserMenuScript">
     324      <script type="text/javascript">
     325        <xsl:text disable-output-escaping="yes">
    323326                                    function toggleUserMenu()
    324327                                    {
     
    411414                                    }
    412415                                </xsl:text>
    413                             </script>
    414                             <span id="loginButton"><xsl:value-of select="/page/pageRequest/userInformation/@username"/></span>
    415                             <script type="text/javascript">
    416                                 <xsl:text disable-output-escaping="yes">
    417                                     $("#loginButton").button({icons:{primary:"ui-icon-unlocked"}});
    418                                     $("#loginButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
    419                                 </xsl:text>
    420                             </script>
    421                         </a>
    422                     </xsl:when>
    423                     <xsl:otherwise>
    424                         <a>
    425                             <xsl:attribute name="href">
    426                                 <xsl:value-of select="$library_name"/>
    427                                 <xsl:text>?a=p&amp;sa=login&amp;redirectURL=</xsl:text>
    428                                 <xsl:value-of select="$library_name"/>
    429                                 <xsl:text>%3F</xsl:text>
    430                                 <xsl:if test="/page/pageRequest/@action">
    431                                     <xsl:text>a=</xsl:text>
    432                                     <xsl:value-of select="/page/pageRequest/@action"/>
    433                                 </xsl:if>
    434                                 <xsl:if test="/page/pageRequest/@subaction">
    435                                     <xsl:text>%26sa=</xsl:text>
    436                                     <xsl:value-of select="/page/pageRequest/@subaction"/>
    437                                 </xsl:if>
    438                                 <xsl:for-each select="/page/pageRequest/paramList/param">
    439                                     <xsl:if test="@name != 'password' and @name != 's1.password' and @name != 's1.newPassword' and @name != 's1.oldPassword'">
    440                                         <xsl:text>%26</xsl:text>
    441                                         <xsl:value-of select="@name"/>
    442                                         <xsl:text>=</xsl:text>
    443                                         <xsl:value-of select="@value"/>
    444                                     </xsl:if>
    445                                 </xsl:for-each>
    446                             </xsl:attribute>
    447                             <xsl:attribute name="title"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'login_tip')"/></xsl:attribute>
    448                             <span id="loginButton"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'login_b')"/></span>
    449                             <script type="text/javascript">
    450                                 <xsl:text disable-output-escaping="yes">
    451                                     $("#loginButton").button({icons:{primary:"ui-icon-locked"}});
    452                                     $("#loginButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
    453                                 </xsl:text>
    454                             </script>
    455                         </a>
    456                     </xsl:otherwise>
    457                 </xsl:choose>
    458             </li>
    459             <!-- debuginfo (doesn't use class="ui-state-error" since the text is not legible due to inherited text-colour) -->
    460             <xsl:if test="/page/pageRequest/paramList/param[(@name='debug') and (@value='on' or @value='true' or @value='1' or @value='yes')]">
    461                 <li>
    462                     <a href="{$library_name}/collection/{$collNameChecked}/page/debug">
    463                         <xsl:attribute name="title"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'debuginfo_tip')"/></xsl:attribute>
    464                         <span id="debugButton"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'debuginfo_b')"/></span>
    465                         <script type="text/javascript">
    466                             <xsl:text disable-output-escaping="yes">
    467                                 $("#debugButton").button({icons:{primary:"ui-icon-info"}});
    468                                 $("#debugButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
    469                             </xsl:text>
    470                         </script>
    471                     </a>
    472                 </li>
    473             </xsl:if>
    474         </ul>
    475     </xsl:template>
    476    
     416      </script>
     417     
     418    </xsl:template>
     419    <xsl:template name="generateLoginURL">
     420      <xsl:value-of select="$library_name"/>
     421      <xsl:text>?a=p&amp;sa=login&amp;redirectURL=</xsl:text>
     422      <xsl:value-of select="$library_name"/>
     423      <xsl:text>%3F</xsl:text>
     424      <xsl:if test="/page/pageRequest/@action">
     425        <xsl:text>a=</xsl:text>
     426        <xsl:value-of select="/page/pageRequest/@action"/>
     427      </xsl:if>
     428      <xsl:if test="/page/pageRequest/@subaction">
     429        <xsl:text>%26sa=</xsl:text>
     430        <xsl:value-of select="/page/pageRequest/@subaction"/>
     431      </xsl:if>
     432      <xsl:for-each select="/page/pageRequest/paramList/param">
     433        <xsl:if test="@name != 'password' and @name != 's1.password' and @name != 's1.newPassword' and @name != 's1.oldPassword'">
     434          <xsl:text>%26</xsl:text>
     435          <xsl:value-of select="@name"/>
     436          <xsl:text>=</xsl:text>
     437          <xsl:value-of select="@value"/>
     438        </xsl:if>
     439      </xsl:for-each>
     440     
     441    </xsl:template>
     442   
     443    <xsl:template name="LoginoutLink">
     444      <!-- login/logout -->
     445      <xsl:choose>
     446        <xsl:when test="/page/pageRequest/userInformation/@username">
     447          <a>
     448        <xsl:attribute name="href">javascript:toggleUserMenu();</xsl:attribute>
     449        <xsl:call-template name="toggleUserMenuScript"/>
     450        <span id="loginButton"><xsl:value-of select="/page/pageRequest/userInformation/@username"/></span>
     451        <script type="text/javascript">
     452          <xsl:text disable-output-escaping="yes">
     453            //$("#loginButton").button({icons:{primary:"ui-icon-unlocked"}});
     454            //$("#loginButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
     455          </xsl:text>
     456        </script>
     457          </a>
     458        </xsl:when>
     459        <xsl:otherwise>
     460          <a>
     461        <xsl:attribute name="href"><xsl:call-template name="generateLoginURL"/>
     462        </xsl:attribute>
     463        <xsl:attribute name="title"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'login_tip')"/></xsl:attribute>
     464        <span id="loginButton"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'login_b')"/></span>
     465        <script type="text/javascript">
     466          <xsl:text disable-output-escaping="yes">
     467            //$("#loginButton").button({icons:{primary:"ui-icon-locked"}});
     468            //$("#loginButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
     469          </xsl:text>
     470        </script>
     471          </a>
     472        </xsl:otherwise>
     473      </xsl:choose>
     474    </xsl:template>
     475   
     476    <xsl:template name="DebugLink">
     477      <!-- debuginfo (doesn't use class="ui-state-error" since the text is not legible due to inherited text-colour) -->
     478      <xsl:if test="/page/pageRequest/paramList/param[(@name='debug') and (@value='on' or @value='true' or @value='1' or @value='yes')]">
     479        <a href="{$library_name}/collection/{$collNameChecked}/page/debug">
     480          <xsl:attribute name="title"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'debuginfo_tip')"/></xsl:attribute>
     481          <span id="debugButton"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'debuginfo_b')"/></span>
     482          <script type="text/javascript">
     483        <xsl:text disable-output-escaping="yes">
     484          //$("#debugButton").button({icons:{primary:"ui-icon-info"}});
     485          //$("#debugButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
     486        </xsl:text>
     487          </script>
     488        </a>
     489      </xsl:if>
     490    </xsl:template>
     491   
     492    <xsl:template name="buttonStyling">
     493      <script type="text/javascript">
     494          <xsl:text disable-output-escaping="yes">
     495        $("#preferencesButton").button({icons:{primary:"ui-icon-wrench"}});
     496        $("#preferencesButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
     497        $("#helpButton").button({icons:{primary:"ui-icon-help"}});
     498        $("#helpButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
     499        $("#debugButton").button({icons:{primary:"ui-icon-info"}});
     500        $("#debugButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
     501          </xsl:text>
     502        <xsl:choose>
     503        <xsl:when test="/page/pageRequest/userInformation/@username">
     504          <xsl:text disable-output-escaping="yes">$("#loginButton").button({icons:{primary:"ui-icon-unlocked"}});</xsl:text>
     505        </xsl:when>
     506        <xsl:otherwise>
     507          <xsl:text disable-output-escaping="yes">$("#loginButton").button({icons:{primary:"ui-icon-locked"}});</xsl:text>
     508        </xsl:otherwise>
     509          </xsl:choose>
     510          <xsl:text disable-output-escaping="yes">
     511        $("#loginButton .ui-button-text").css({"padding-top":"0px", "padding-bottom":"3px"});
     512          </xsl:text>
     513      </script>
     514
     515    </xsl:template>
    477516    <!-- ***** PAGE TITLE ***** -->
    478517    <xsl:template name="page-title-area">
Note: See TracChangeset for help on using the changeset viewer.