root/other-projects/tipple-android/i-greenstone-server-files/greenstone/webapps/greenstone3/interfaces/basic/transform/style.xsl @ 26899

Revision 26899, 7.7 KB (checked in by davidb, 7 years ago)

Tipple reborn after Chris's Summer of Code 2013

  • Property svn:mime-type set to application/xml
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<xsl:stylesheet version="1.0"
3  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
4  xmlns:java="http://xml.apache.org/xslt/java"
5  xmlns:util="xalan://org.greenstone.gsdl3.util.XSLTUtil"
6  extension-element-prefixes="java util"
7  exclude-result-prefixes="java util">
8
9  <xsl:include href="icons.xsl"/>
10
11  <!-- some global parameters - these are set by whoever is invoking the transformation -->
12  <xsl:param name="interface_name"/>
13  <xsl:param name="library_name"/>
14
15  <!-- global style info goes here  -->
16  <xsl:template name="globalStyle">
17    <link rel="stylesheet" href="interfaces/basic/style/core.css" type="text/css"/>
18  </xsl:template>
19
20  <xsl:template name="response">
21    <xsl:apply-templates select="pageResponse"/>
22    <xsl:if test="descendant::error">
23      <script language="Javascript">
24    <xsl:text disable-output-escaping="yes">
25      function removeAllChildren(node) {
26        while (node.hasChildNodes()) {
27          node.removeChild(node.firstChild);
28        }
29      }
30
31      function toggleHideError(obj) {
32        if (obj.style.display == "none") {
33          obj.style.display = "";
34          hide_link = document.getElementById("hide");
35          removeAllChildren(hide_link);
36          hide_link.appendChild(document.createTextNode("</xsl:text><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'hide_error')"/><xsl:text disable-output-escaping="yes">"));
37        } else {
38          obj.style.display = "none";
39          hide_link = document.getElementById("hide");
40          removeAllChildren(hide_link);
41          hide_link.appendChild(document.createTextNode("</xsl:text><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'show_error')"/><xsl:text disable-output-escaping="yes">"));
42        }
43      }
44    </xsl:text>
45      </script>
46      <p align='right'><a id="hide" href="javascript:toggleHideError(error);"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'show_error')"/></a></p>
47      <div id="error" style="display: none;">
48    <xsl:apply-templates select="descendant::error"/>
49      </div>
50    </xsl:if>
51  </xsl:template>
52
53  <xsl:template name="greenstoneFooter">
54    <div id="footer">
55      <xsl:call-template name="dividerBar">
56    <xsl:with-param name="text" select="util:getInterfaceText($interface_name, /page/@lang, 'gs3power')"/>
57      </xsl:call-template>
58    </div>
59        <script type="text/javascript" src="jquery.js">
60        <xsl:comment>Filler for browser</xsl:comment>
61    </script>
62    <script type="text/javascript" src="test.js">
63        <xsl:comment>Filler for browser</xsl:comment>
64    </script>
65  </xsl:template>
66 
67  <xsl:template match="error">
68    <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'error')"/> <xsl:value-of select="."/>
69  </xsl:template>
70
71  <xsl:template name="standardPageBanner">
72    <xsl:param name="collName"/>
73    <xsl:param name="pageType"/>
74    <xsl:variable name="this-element" select="/page/pageResponse/collection|/page/pageResponse/serviceCluster"/>
75    <div  id="banner">   
76      <p>
77    <a href="{$library_name}?a=p&amp;sa=about&amp;c={$collName}">
78      <xsl:choose>
79        <xsl:when test="$this-element/displayItem[@name='icon']">
80          <img border="0">
81        <xsl:attribute name="src">
82          <xsl:value-of select="$this-element/metadataList/metadata[@name='httpPath']"/>/images/<xsl:value-of select="$this-element/displayItem[@name='icon']"/>
83        </xsl:attribute>   
84        <xsl:attribute name="alt">
85          <xsl:value-of select="$this-element/displayItem[@name='name']"/>
86        </xsl:attribute>
87        <xsl:attribute name="title">
88          <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'aboutpage')"/>
89        </xsl:attribute>
90          </img>
91        </xsl:when>
92        <xsl:otherwise>
93          <xsl:value-of select="$this-element/displayItem[@name='name']"/>
94        </xsl:otherwise>
95      </xsl:choose>
96    </a>
97      </p>
98      <ul id="bannerlist">
99    <xsl:call-template name="top-buttons">
100      <xsl:with-param name="collName" select="$collName"/>
101      <xsl:with-param name="pageType" select="$pageType"/>
102    </xsl:call-template>
103      </ul>
104    </div>
105  </xsl:template>
106 
107  <xsl:template name="top-buttons">
108    <xsl:param name="collName"/>
109    <xsl:param name="pageType"/>
110    <li><a  href="{$library_name}?a=p&amp;sa=home"><xsl:attribute name="title"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'home_tip')"/></xsl:attribute>
111    <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'home_b')"/>
112      </a></li>
113    <xsl:choose>
114      <xsl:when test="$pageType='help'">
115    <li><a><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'help_b')"/></a></li>
116      </xsl:when>
117      <xsl:otherwise>
118    <li><a href="{$library_name}?a=p&amp;sa=help&amp;c={$collName}"><xsl:attribute name="title"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'help_tip')"/></xsl:attribute>
119        <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'help_b')"/>
120      </a></li>
121      </xsl:otherwise>
122    </xsl:choose>
123    <xsl:choose>
124      <xsl:when test="$pageType='pref'">
125    <li><a><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref_b')"/></a></li>
126      </xsl:when>
127      <xsl:otherwise>
128    <li><a href="{$library_name}?a=p&amp;sa=pref&amp;c={$collName}"><xsl:attribute name="title"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref_tip')"/></xsl:attribute>
129        <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref_b')"/>
130      </a></li>
131      </xsl:otherwise>
132    </xsl:choose>
133  </xsl:template>
134
135  <xsl:template name="navigationBar">
136    <xsl:param name="collName"/>
137    <xsl:variable name="this-element" select="/page/pageResponse/collection|/page/pageResponse/serviceCluster"/>
138    <xsl:variable name="this-service" select="/page/pageResponse/service/@name"/>
139    <xsl:choose>
140      <xsl:when test="$this-element/serviceList/service">
141    <div id="navbar">
142      <ul id="navbarlist">
143        <xsl:for-each select="$this-element/serviceList/service">
144          <xsl:variable name="action"><xsl:choose>
145          <xsl:when test="@hidden='true'">DO_NOT_DISPLAY</xsl:when>
146          <xsl:when test="@name=$this-service">CURRENT</xsl:when>
147          <xsl:when test="@type='query'">q</xsl:when>
148          <xsl:when test="@type='browse'">b</xsl:when>
149          <xsl:when test="@type='process'">pr</xsl:when>
150          <xsl:when test="@type='applet'">a</xsl:when>
151          <xsl:otherwise>DO_NOT_DISPLAY</xsl:otherwise>
152        </xsl:choose></xsl:variable>
153          <xsl:choose>
154        <xsl:when test="$action='CURRENT'">
155          <li><a ><xsl:value-of select="displayItem[@name='name']"/></a></li>
156        </xsl:when>
157        <xsl:when test="$action !='DO_NOT_DISPLAY'">
158          <li><a href="{$library_name}?a={$action}&amp;rt=d&amp;s={@name}&amp;c={$collName}"><xsl:if test="displayItem[@name='description']"><xsl:attribute name='title'><xsl:value-of select="displayItem[@name='description']"/></xsl:attribute></xsl:if><xsl:value-of select="displayItem[@name='name']"/></a></li>
159        </xsl:when>
160          </xsl:choose>
161        </xsl:for-each>
162      </ul>
163    </div>
164      </xsl:when>
165      <xsl:otherwise>
166        <xsl:call-template name="dividerBar">
167      <xsl:with-param name="text" select="'&#160;'"/>
168        </xsl:call-template>           
169      </xsl:otherwise>
170    </xsl:choose>
171  </xsl:template>
172 
173 
174  <xsl:template name="dividerBar">
175    <xsl:param name='text'/>
176    <xsl:choose>
177      <xsl:when test="$text">
178    <div class="divbar"><xsl:value-of select="$text"/></div>
179      </xsl:when>
180      <xsl:otherwise>
181    <div class="divbar"><xsl:text disable-output-escaping="yes">&amp;nbsp;</xsl:text></div>
182      </xsl:otherwise>
183    </xsl:choose>
184  </xsl:template>
185
186
187  <xsl:template name="direction">
188    <xsl:if test="/page/@lang='ar' or /page/@lang='fa' or /page/@lang='he' or /page/@lang='ur' or /page/@lang='ps' or /page/@lang='prs'">rtl</xsl:if>
189  </xsl:template>
190
191</xsl:stylesheet> 
192
193
Note: See TracBrowser for help on using the browser.