source: main/trunk/greenstone3/web/interfaces/default/transform/style.xsl@ 32127

Last change on this file since 32127 was 32127, checked in by ak19, 6 years ago

Fixing up the GS3 GLI applet. To get it to work, follow the instructions at http://wiki.greenstone.org/doku.php?id=old:remote_greenstone&s[]=applet 2. But need to put the SignedGatherer.java in web\applet for GS3. 3. In the default interface, edit home.xsl and uncomment <gslib:libraryInterfaceLink/>. 4. Set up Java Control Panel to allow from the host:port of the (remote) GS server on which the GS3 to connect to is hosted. This will then allow accessing applets from that host:port. 5. Configure Internet Explorer (works on Win 8) as explained in GS3's Tudors tutorial for the Phind phrase browser. 6. In Internet Explorer, visit the GS home page, click on the Librarian Interface link and now you will be asked to allow and run the SignedGatherer.jar GLI applet.

File size: 11.6 KB
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 xmlns:gslib="http://www.greenstone.org/skinning"
7 extension-element-prefixes="java util"
8 exclude-result-prefixes="java util">
9
10 <xsl:include href="icons.xsl"/>
11
12 <!-- some global parameters - these are set by whoever is invoking the transformation -->
13 <xsl:param name="interface_name"/>
14 <xsl:param name="library_name"/>
15
16 <!-- any global style stuff should go in here -->
17 <xsl:template name="response">
18 <xsl:apply-templates select="pageResponse"/>
19 <xsl:if test="descendant::error">
20 <script language="Javascript">
21 <xsl:text disable-output-escaping="yes">
22 function removeAllChildren(node) {
23 while (node.hasChildNodes()) {
24 node.removeChild(node.firstChild);
25 }
26 }
27
28 function toggleHideError(obj) {
29 if (obj.style.display == "none") {
30 obj.style.display = "";
31 hide_link = document.getElementById("hide");
32 removeAllChildren(hide_link);
33 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">"));
34 } else {
35 obj.style.display = "none";
36 hide_link = document.getElementById("hide");
37 removeAllChildren(hide_link);
38 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">"));
39 }
40 }
41 </xsl:text>
42 </script>
43 <p align='right'><a id="hide" href="javascript:toggleHideError(error);"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'show_error')"/></a></p>
44 <div id="error" style="display: none;">
45 <xsl:apply-templates select="descendant::error"/>
46 </div>
47 </xsl:if>
48 </xsl:template>
49
50 <xsl:template name="globalStyle">
51 <link rel="stylesheet" href="interfaces/default/style/core.css" type="text/css"/>
52 <!--<link rel="stylesheet" href="interfaces/gs2/style/gs2-style2.css" type="text/css"/>-->
53 </xsl:template>
54
55 <xsl:template name="genericPageBanner">
56 <xsl:param name='text'/>
57 <xsl:variable name="lang" select="/page/@lang"/>
58 <center>
59 <table width="100%">
60 <tr><td align="left"></td>
61 <td align="right">
62 <table>
63 <tr><td class="gsbutton">
64 <a class="gsbutton" href="{$library_name}?a=p&amp;sa=home">
65 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'home_b')"/>
66 </a>
67 </td></tr></table>
68 </td>
69 </tr>
70 </table>
71 </center>
72 <xsl:call-template name="dividerBar"><xsl:with-param name='text' select="$text"/></xsl:call-template>
73 </xsl:template>
74
75 <xsl:template name="standardPageBanner">
76 <xsl:param name="collName"/>
77 <xsl:param name="pageType"/>
78 <xsl:param name="clTop"/>
79 <xsl:variable name="this-element" select="/page/pageResponse/collection"/>
80 <div id="banner">
81 <div class="pageinfo">
82 <xsl:call-template name="top-buttons">
83 <xsl:with-param name="collName" select="$collName"/>
84 <xsl:with-param name="pageType" select="$pageType"/>
85 </xsl:call-template>
86 <xsl:if test="not(/page/pageRequest/@action='d')">
87 <xsl:variable name="text">
88 <xsl:choose>
89 <xsl:when test="$pageType='browse'">
90 <xsl:value-of select="/page/pageResponse/collection/serviceList/service[@name='ClassifierBrowse']/classifierList/classifier[@name=$clTop]/displayItem[@name='name']"/>
91 </xsl:when>
92 <xsl:otherwise>
93 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, concat($pageType, '_t'))"/>
94 </xsl:otherwise>
95 </xsl:choose>
96 </xsl:variable>
97 <xsl:if test="$text != '__t_'">
98 <p class="bannertitle"><xsl:value-of select="$text"/></p>
99 </xsl:if>
100 </xsl:if>
101 </div>
102
103 <div class="collectimage">
104 <a href="{$library_name}?a=p&amp;sa=about&amp;c={$collName}">
105 <xsl:choose>
106 <xsl:when test="$this-element/displayItem[@name='icon']">
107 <img border="0">
108 <xsl:attribute name="src">
109 <xsl:value-of select="$this-element/metadataList/metadata[@name='httpPath']"/>/images/<xsl:value-of select="$this-element/displayItem[@name='icon']"/>
110 </xsl:attribute>
111 <xsl:attribute name="alt">
112 <xsl:value-of select="$this-element/displayItem[@name='name']"/>
113 </xsl:attribute>
114 <xsl:attribute name="title">
115 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'aboutpage')"/>
116 </xsl:attribute>
117 </img>
118 </xsl:when>
119 <xsl:otherwise>
120 <b><xsl:value-of select="$this-element/displayItem[@name='name']"/></b>
121 </xsl:otherwise>
122 </xsl:choose>
123 </a>
124 </div>
125 </div>
126 <div class="bannerextra"></div>
127 </xsl:template>
128
129 <xsl:template name="top-buttons">
130 <xsl:param name="collName"/>
131 <xsl:param name="pageType"/>
132 <p class="bannerlinks">
133 <a class="navlink" 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>
134 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'home_b')"/>
135 </a>
136 <!--<xsl:choose>
137 <xsl:when test="$pageType='help'">
138 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'help_b')"/>
139 </xsl:when>
140 <xsl:otherwise>
141 <a class="navlink" 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>
142 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'help_b')"/>
143 </a>
144 </xsl:otherwise>
145 </xsl:choose> -->
146 <xsl:choose>
147 <xsl:when test="$pageType='pref'">
148 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref_b')"/>
149 </xsl:when>
150 <xsl:otherwise>
151 <a class="navlink" 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>
152 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref_b')"/>
153 </a>
154 </xsl:otherwise>
155 </xsl:choose>
156 </p>
157 </xsl:template>
158
159 <xsl:template name="navigationBar">
160 <xsl:param name="collName"/>
161 <xsl:param name="clTop"/>
162 <xsl:variable name="this-element" select="/page/pageResponse/collection"/>
163 <xsl:variable name="this-service" select="/page/pageResponse/service/@name"/>
164 <xsl:variable name="classifiers" select="$this-element/serviceList/service[@name='ClassifierBrowse']/classifierList[1]"/>
165
166 <!-- display order, for Arabic etc. languages, display right to left -->
167 <xsl:variable name="dir"><xsl:call-template name="direction"/></xsl:variable>
168 <xsl:variable name="sort_order"><xsl:choose><xsl:when test="$dir='rtl'">descending</xsl:when><xsl:otherwise>ascending</xsl:otherwise></xsl:choose></xsl:variable>
169
170 <div class="navbar">
171 <p class="navbar">
172 <xsl:choose>
173 <xsl:when test="not($dir='rtl')">
174 <xsl:if test="$this-element/serviceList/service[@type='query']">
175 <xsl:call-template name="navbar-search"><xsl:with-param name="collName" select="$collName"/></xsl:call-template>
176 </xsl:if>
177 </xsl:when>
178 <xsl:otherwise>
179 <xsl:if test="$this-element/serviceList/service[@name='PhindApplet']">
180 <xsl:call-template name="navbar-phind"><xsl:with-param name="collName" select="$collName"/></xsl:call-template>
181 </xsl:if>
182 </xsl:otherwise>
183 </xsl:choose>
184
185 <xsl:for-each select="$classifiers/classifier">
186 <xsl:sort order="{$sort_order}" select="position()" />
187 <xsl:apply-templates select="." mode="navbar">
188 <xsl:with-param name="collName" select="$collName"/>
189 <xsl:with-param name="clTop" select="$clTop"/>
190 </xsl:apply-templates>
191 </xsl:for-each>
192
193 <xsl:choose>
194 <xsl:when test="$dir='rtl'">
195 <xsl:if test="$this-element/serviceList/service[@type='query']">
196 <xsl:call-template name="navbar-search"><xsl:with-param name="collName" select="$collName"/></xsl:call-template>
197 </xsl:if>
198 </xsl:when>
199 <xsl:otherwise>
200 <xsl:if test="$this-element/serviceList/service[@name='PhindApplet']">
201 <xsl:call-template name="navbar-phind"><xsl:with-param name="collName" select="$collName"/></xsl:call-template>
202 </xsl:if>
203 </xsl:otherwise>
204 </xsl:choose>
205 </p>
206 </div>
207 </xsl:template>
208
209 <xsl:template name="navbar-search">
210 <xsl:param name="collName"/>
211 <xsl:choose>
212 <xsl:when test="/page/pageRequest/@action='q'">
213 <span class="narspace">search</span>
214 </xsl:when>
215 <xsl:otherwise>
216 <xsl:variable name="service">
217 <xsl:choose>
218 <xsl:when test="not(/page/pageRequest/paramList/param[@name='ct'])">TextQuery</xsl:when>
219 <xsl:when test="/page/pageRequest/paramList/param[@name='ct']/@value='0'">TextQuery</xsl:when>
220 <xsl:when test="/page/pageRequest/paramList/param[@name='qt']/@value='1'"><xsl:choose><xsl:when test="/page/pageRequest/paramList/param[@name='qfm']/@value='1'">AdvancedFieldQuery</xsl:when><xsl:otherwise>FieldQuery</xsl:otherwise></xsl:choose></xsl:when>
221 <xsl:otherwise>TextQuery</xsl:otherwise>
222 </xsl:choose>
223 </xsl:variable>
224 <a class="navlink" href="{$library_name}?a=q&amp;rt=d&amp;s={$service}&amp;c={$collName}"><xsl:attribute name='title'><xsl:value-of select="/page/pageResponse/collection/service[@name=$service]/displayItem[@name='description']"/></xsl:attribute>search</a>
225 </xsl:otherwise>
226 </xsl:choose>
227 </xsl:template>
228
229 <xsl:template name="navbar-phind">
230 <xsl:param name="collName"/>
231 <xsl:choose>
232 <xsl:when test="/page/pageRequest/paramList/param[@name='s']/@value='PhindApplet'">
233 <span class="narspace">phrases</span>
234 </xsl:when>
235 <xsl:otherwise>
236 <a class="navlink" href="{$library_name}?a=a&amp;rt=d&amp;s=PhindApplet&amp;c={$collName}"><xsl:if test="/page/pageResponse/collection/service[@name='PhindApplet']/displayItem[@name='description']"><xsl:attribute name='title'><xsl:value-of select="/page/pageResponse/collection/service[@name='PhindApplet']/displayItem[@name='description']"/></xsl:attribute></xsl:if>phrases</a>
237 </xsl:otherwise>
238 </xsl:choose>
239 </xsl:template>
240
241 <xsl:template match="classifier" mode="navbar">
242 <xsl:param name="collName"/>
243 <xsl:param name="clTop"/>
244 <xsl:choose>
245 <xsl:when test="/page/pageRequest/@action='b' and $clTop=@name">
246 <span class="narspace"><xsl:value-of select="displayItem[@name='name']"/></span>
247 </xsl:when>
248 <xsl:otherwise>
249 <a class="navlink" href="{$library_name}?a=b&amp;rt=r&amp;s=ClassifierBrowse&amp;c={$collName}&amp;cl={@name}"><xsl:attribute name='title'><xsl:value-of select="displayItem[@name='description']"/></xsl:attribute><xsl:value-of select="displayItem[@name='name']"/></a>
250 </xsl:otherwise>
251 </xsl:choose>
252 </xsl:template>
253
254 <xsl:template name="dividerBar">
255 <xsl:param name='text'/>
256 <xsl:choose>
257 <xsl:when test="$text">
258 <div class="divbar"><p class="navbar"><xsl:value-of select="$text"/></p></div>
259 </xsl:when>
260 <xsl:otherwise>
261 <div class="divbar"><xsl:text disable-output-escaping="yes">&amp;nbsp;</xsl:text></div>
262 </xsl:otherwise>
263 </xsl:choose>
264 </xsl:template>
265
266 <xsl:template name="greenstoneFooter">
267 <div class="divbar"><p class="navbar">powered by greenstone3</p>
268 </div>
269 </xsl:template>
270
271 <xsl:template name="direction">
272 <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>
273 </xsl:template>
274
275</xsl:stylesheet>
Note: See TracBrowser for help on using the repository browser.