Changeset 26455
- Timestamp:
- 2012-11-14T14:00:56+13:00 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/greenstone3/web/interfaces/default/transform/pages/query.xsl
r26400 r26455 9 9 extension-element-prefixes="java util" 10 10 exclude-result-prefixes="java util gsf"> 11 11 12 12 <!-- use the 'main' layout --> 13 13 <xsl:import href="layouts/main.xsl"/> 14 14 15 15 <xsl:include href="query-common.xsl"/> 16 16 <!-- set page title --> 17 <xsl:template name="pageTitle"><gslib:serviceName/></xsl:template> 17 <xsl:template name="pageTitle"> 18 <gslib:serviceName/> 19 </xsl:template> 18 20 19 21 <!-- set page breadcrumbs --> 20 <xsl:template name="breadcrumbs"> <gslib:siteLink/><gslib:rightArrow/><xsl:if test="/page/pageResponse/collection"> <gslib:collectionNameLinked/><gslib:rightArrow/></xsl:if></xsl:template> 22 <xsl:template name="breadcrumbs"> 23 <gslib:siteLink/> 24 <gslib:rightArrow/> 25 <xsl:if test="/page/pageResponse/collection"> 26 <gslib:collectionNameLinked/> 27 <gslib:rightArrow/> 28 </xsl:if> 29 </xsl:template> 21 30 22 31 <!-- the page content --> … … 27 36 <xsl:call-template name="resultsPage"/> 28 37 </xsl:template> 29 38 30 39 <xsl:template name="resultsPage"> 31 40 <xsl:call-template name="resultsPagePre"/> 32 41 <xsl:call-template name="displayMatchDocs"/> 33 42 <xsl:call-template name="displayTermInfo"/> 34 43 <xsl:call-template name="displayResults"/> … … 36 45 </xsl:template> 37 46 38 <!-- optional cgi-params for links to document pages --> 39 <xsl:variable name="opt-doc-link-args">p.s=<gsvar:this-service/></xsl:variable> 40 47 <!-- optional cgi-params for links to document pages --> 48 <xsl:variable name="opt-doc-link-args">p.s=<gsvar:this-service/> 49 </xsl:variable> 50 41 51 <xsl:template name="displayResults"> 42 52 <xsl:if test="/page/pageResponse/facetList/facet"> 43 <script type="text/javascript" src="interfaces/{$interface_name}/js/facet-scripts.js"><xsl:text> </xsl:text></script> 53 <script type="text/javascript" src="interfaces/{$interface_name}/js/facet-scripts.js"> 54 <xsl:text/> 55 </script> 44 56 <div id="facetSelector"> 45 57 <xsl:for-each select="/page/pageResponse/facetList/facet"> 46 58 <xsl:if test="count(count) > 0"> 47 59 <ul class="facetTable ui-widget-content" indexName="{@name}"> 48 <xsl:variable name="serviceName"><xsl:value-of select="/page/pageRequest/paramList/param[@name = 's']/@value"/></xsl:variable> 49 <xsl:variable name="indexShortName"><xsl:value-of select="@name"/></xsl:variable> 60 <xsl:variable name="serviceName"> 61 <xsl:value-of select="/page/pageRequest/paramList/param[@name = 's']/@value"/> 62 </xsl:variable> 63 <xsl:variable name="indexShortName"> 64 <xsl:value-of select="@name"/> 65 </xsl:variable> 50 66 <xsl:variable name="countSize"> 51 67 <xsl:choose> … … 56 72 </xsl:choose> 57 73 </xsl:variable> 58 74 59 75 <li class="ui-widget-header" style="text-transform:capitalize; text-align:center;"> 60 76 <xsl:choose> … … 70 86 <li> 71 87 <xsl:attribute name="style"> 72 <xsl:if test="position() > $countSize">display:none;<xsl:value-of select="$indexShortName"/></xsl:if> 88 <xsl:if test="position() > $countSize">display:none;<xsl:value-of select="$indexShortName"/> 89 </xsl:if> 73 90 </xsl:attribute> 74 <input type="checkbox" onclick="performRefinedSearch();"/><span><xsl:value-of select="@name"/></span>(<xsl:value-of select="."/>) 91 <input type="checkbox" onclick="performRefinedSearch();"/> 92 <span> 93 <xsl:value-of select="@name"/> 94 </span>(<xsl:value-of select="."/>) 75 95 </li> 76 96 </xsl:for-each> 77 97 <xsl:if test="count(count) > $countSize"> 78 <li class="expandCollapseFacetList{$indexShortName}"><a class="expandCollapseFacetListLink{$indexShortName}" href="javascript:expandFacetList('{$indexShortName}', {$countSize});">See more...</a></li> 98 <li class="expandCollapseFacetList{$indexShortName}"> 99 <a class="expandCollapseFacetListLink{$indexShortName}" href="javascript:expandFacetList('{$indexShortName}', {$countSize});">See more...</a> 100 </li> 79 101 </xsl:if> 80 102 </ul> … … 96 118 <br/> 97 119 </table> 98 120 99 121 <!-- Previous/Next buttons--> 100 122 <xsl:call-template name="prevNextButtons"/> 101 123 </div> 102 124 <xsl:if test="/page/pageResponse/facetList/facet"> 103 <div style="clear:both;"><xsl:text> </xsl:text></div> 125 <div style="clear:both;"> 126 <xsl:text/> 127 </div> 104 128 </xsl:if> 105 129 </xsl:template> … … 110 134 <div> 111 135 <input type="hidden" name="a" value="q"/> 112 <input type="hidden" name="sa"><xsl:attribute name="value"><xsl:value-of select="/page/pageRequest/@subaction"/></xsl:attribute></input> 136 <input type="hidden" name="sa"> 137 <xsl:attribute name="value"> 138 <xsl:value-of select="/page/pageRequest/@subaction"/> 139 </xsl:attribute> 140 </input> 113 141 <input type="hidden" name="rt" value="rd"/> 114 142 <xsl:choose> … … 143 171 </xsl:when> 144 172 <xsl:when test="@type='multi'"> 145 <xsl:apply-templates select="."><xsl:with-param name="ns" select="$ns"/></xsl:apply-templates> 173 <xsl:apply-templates select="."> 174 <xsl:with-param name="ns" select="$ns"/> 175 </xsl:apply-templates> 146 176 </xsl:when> 147 177 <xsl:otherwise> 148 <xsl:call-template name="param-display"><xsl:with-param name="ns" select="$ns"/></xsl:call-template> 178 <xsl:call-template name="param-display"> 179 <xsl:with-param name="ns" select="$ns"/> 180 </xsl:call-template> 149 181 </xsl:otherwise> 150 182 </xsl:choose> 151 183 </xsl:for-each> 152 184 <br/> 153 <input type="submit"><xsl:attribute name="value"><xsl:value-of select="displayItem[@name='submit']"/></xsl:attribute></input> 185 <input type="submit"> 186 <xsl:attribute name="value"> 187 <xsl:value-of select="displayItem[@name='submit']"/> 188 </xsl:attribute> 189 </input> 154 190 </div> 155 191 </form> … … 158 194 159 195 <xsl:template name="displayMatchDocs"> 160 <div id="matchdocs"> 161 <xsl:variable name="numDocsMatched" select="/page/pageResponse/metadataList/metadata[@name='numDocsMatched']"/> 162 <xsl:variable name="numDocsReturned"><xsl:call-template name="numDocsReturned"/></xsl:variable> <!-- select="/page/pageResponse/metadataList/metadata[@name='numDocsReturned']"/>--> 163 <xsl:variable name="docLevel"><xsl:call-template name="documentLevel"/></xsl:variable> 164 <xsl:variable name="docLevelText"><xsl:call-template name="documentLevelText"><xsl:with-param name="numDocsMatched" select="$numDocsMatched"/><xsl:with-param name="level" select="$docLevelText"/></xsl:call-template></xsl:variable> 165 <xsl:choose> 166 <xsl:when test="$numDocsMatched='0' or $numDocsReturned='0'"> 167 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.nodocsmatch', $docLevelText)"/> 168 </xsl:when> 169 <xsl:when test="$numDocsMatched='1' or $numDocsReturned='1'"> 170 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.onedocsmatch', $docLevelText)"/> 171 </xsl:when> 172 <xsl:when test="$numDocsMatched"> 173 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.manydocsmatch', concat($numDocsMatched, ';', $docLevelText))"/> 174 <xsl:if test="$numDocsReturned and not($numDocsMatched=$numDocsReturned)"> (<xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.docsreturned', concat($numDocsReturned, ';', $docLevelText))"/>)</xsl:if> 175 </xsl:when> 176 <xsl:when test="$numDocsReturned"> 177 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.atleastdocsmatch', concat($numDocsReturned, ';', $docLevelText))"/> 178 </xsl:when> 179 </xsl:choose> 180 </div> 181 182 </xsl:template> 183 184 <xsl:template name="numDocsMatched"> 185 <xsl:choose> 186 <xsl:when test="/page/pageResponse/metadataList/metadata[@name = 'numDocsMatched']"> 187 <xsl:value-of select="/page/pageResponse/metadataList/metadata[@name = 'numDocsMatched']"/> 188 </xsl:when> 189 <xsl:when test="/page/pageResponse/metadataList/metadata[@name = 'numDocsReturned']"> 190 <xsl:value-of select="/page/pageResponse/metadataList/metadata[@name = 'numDocsReturned']"/> 191 </xsl:when> 192 <xsl:otherwise><xsl:value-of select="count(/page/pageResponse/documentNodeList/documentNode)"/></xsl:otherwise> 193 </xsl:choose> 194 </xsl:template> 195 196 <xsl:template name="numDocsReturned"> 197 <xsl:choose> 198 <xsl:when test="/page/pageResponse/metadataList/metadata[@name = 'numDocsReturned']"> 199 <xsl:value-of select="/page/pageResponse/metadataList/metadata[@name = 'numDocsReturned']"/> 200 </xsl:when> 201 <xsl:otherwise><xsl:value-of select="count(/page/pageResponse/documentNodeList/documentNode)"/></xsl:otherwise> 202 </xsl:choose> 203 </xsl:template> 204 205 <xsl:template name="documentLevel"> 206 <xsl:choose> 207 <xsl:when test="/page/pageRequest/paramList/param[@name='level']"> 208 <xsl:value-of select="/page/pageRequest/paramList/param[@name='level']/@value" /> 209 </xsl:when> 210 <xsl:when test="/page/pageRequest/paramList/param[@name='s1.level']"> 211 <xsl:value-of select="/page/pageRequest/paramList/param[@name='s1.level']/@value" /> 212 </xsl:when> 213 <xsl:otherwise>Doc</xsl:otherwise> 214 </xsl:choose> 215 </xsl:template> 216 217 <xsl:template name="documentLevelText"> 218 <xsl:param name="numDocsMatched">0</xsl:param> 219 <xsl:param name="level">Doc</xsl:param> 220 <xsl:choose> 221 <xsl:when test="$numDocsMatched = 1"> 222 <xsl:choose> 223 <xsl:when test="$level = 'Doc'"> 224 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.document')"/> 225 </xsl:when> 226 <xsl:otherwise> 227 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.section')"/> 228 </xsl:otherwise> 229 </xsl:choose> 230 </xsl:when> 231 <!-- 0 or more than one use plural. is that the case for all langs??--> 232 <xsl:otherwise> 233 <xsl:choose> 234 <xsl:when test="$level = 'Doc'"> 235 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.document_plural')"/> 236 </xsl:when> 237 <xsl:otherwise> 238 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.section_plural')"/> 239 </xsl:otherwise> 240 </xsl:choose> 241 </xsl:otherwise> 242 </xsl:choose> 243 </xsl:template> 196 <div id="matchdocs"> 197 <xsl:variable name="numDocsMatched" select="/page/pageResponse/metadataList/metadata[@name='numDocsMatched']"/> 198 <xsl:variable name="numDocsReturned"> 199 <xsl:call-template name="numDocsReturned"/> 200 </xsl:variable> 201 <!-- select="/page/pageResponse/metadataList/metadata[@name='numDocsReturned']"/>--> 202 <xsl:variable name="docLevel"> 203 <xsl:call-template name="documentLevel"/> 204 </xsl:variable> 205 <xsl:variable name="docLevelText"> 206 <xsl:call-template name="documentLevelText"> 207 <xsl:with-param name="numDocsMatched" select="$numDocsMatched"/> 208 <xsl:with-param name="level" select="$docLevelText"/> 209 </xsl:call-template> 210 </xsl:variable> 211 <xsl:choose> 212 <xsl:when test="$numDocsMatched='0' or $numDocsReturned='0'"> 213 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.nodocsmatch', $docLevelText)"/> 214 </xsl:when> 215 <xsl:when test="$numDocsMatched='1' or $numDocsReturned='1'"> 216 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.onedocsmatch', $docLevelText)"/> 217 </xsl:when> 218 <xsl:when test="$numDocsMatched"> 219 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.manydocsmatch', concat($numDocsMatched, ';', $docLevelText))"/> 220 <xsl:if test="$numDocsReturned and not($numDocsMatched=$numDocsReturned)"> (<xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.docsreturned', concat($numDocsReturned, ';', $docLevelText))"/>)</xsl:if> 221 </xsl:when> 222 <xsl:when test="$numDocsReturned"> 223 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.atleastdocsmatch', concat($numDocsReturned, ';', $docLevelText))"/> 224 </xsl:when> 225 </xsl:choose> 226 </div> 227 228 </xsl:template> 229 230 <xsl:template name="numDocsMatched"> 231 <xsl:choose> 232 <xsl:when test="/page/pageResponse/metadataList/metadata[@name = 'numDocsMatched']"> 233 <xsl:value-of select="/page/pageResponse/metadataList/metadata[@name = 'numDocsMatched']"/> 234 </xsl:when> 235 <xsl:when test="/page/pageResponse/metadataList/metadata[@name = 'numDocsReturned']"> 236 <xsl:value-of select="/page/pageResponse/metadataList/metadata[@name = 'numDocsReturned']"/> 237 </xsl:when> 238 <xsl:otherwise> 239 <xsl:value-of select="count(/page/pageResponse/documentNodeList/documentNode)"/> 240 </xsl:otherwise> 241 </xsl:choose> 242 </xsl:template> 243 244 <xsl:template name="numDocsReturned"> 245 <xsl:choose> 246 <xsl:when test="/page/pageResponse/metadataList/metadata[@name = 'numDocsReturned']"> 247 <xsl:value-of select="/page/pageResponse/metadataList/metadata[@name = 'numDocsReturned']"/> 248 </xsl:when> 249 <xsl:otherwise> 250 <xsl:value-of select="count(/page/pageResponse/documentNodeList/documentNode)"/> 251 </xsl:otherwise> 252 </xsl:choose> 253 </xsl:template> 254 255 <xsl:template name="documentLevel"> 256 <xsl:choose> 257 <xsl:when test="/page/pageRequest/paramList/param[@name='level']"> 258 <xsl:value-of select="/page/pageRequest/paramList/param[@name='level']/@value" /> 259 </xsl:when> 260 <xsl:when test="/page/pageRequest/paramList/param[@name='s1.level']"> 261 <xsl:value-of select="/page/pageRequest/paramList/param[@name='s1.level']/@value" /> 262 </xsl:when> 263 <xsl:otherwise>Doc</xsl:otherwise> 264 </xsl:choose> 265 </xsl:template> 266 267 <xsl:template name="documentLevelText"> 268 <xsl:param name="numDocsMatched">0</xsl:param> 269 <xsl:param name="level">Doc</xsl:param> 270 <xsl:choose> 271 <xsl:when test="$numDocsMatched = 1"> 272 <xsl:choose> 273 <xsl:when test="$level = 'Doc'"> 274 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.document')"/> 275 </xsl:when> 276 <xsl:otherwise> 277 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.section')"/> 278 </xsl:otherwise> 279 </xsl:choose> 280 </xsl:when> 281 <!-- 0 or more than one use plural. is that the case for all langs??--> 282 <xsl:otherwise> 283 <xsl:choose> 284 <xsl:when test="$level = 'Doc'"> 285 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.document_plural')"/> 286 </xsl:when> 287 <xsl:otherwise> 288 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.section_plural')"/> 289 </xsl:otherwise> 290 </xsl:choose> 291 </xsl:otherwise> 292 </xsl:choose> 293 </xsl:template> 244 294 245 295 <xsl:template name="displayTermInfo"> 246 296 247 297 <!-- Find the number of documents displayed per page --> 248 <xsl:variable name="level"><xsl:call-template name="documentLevel"/></xsl:variable> 249 298 <xsl:variable name="level"> 299 <xsl:call-template name="documentLevel"/> 300 </xsl:variable> 301 250 302 <!-- The list of search terms with their frequency and document count --> 251 <p class="termList"> 252 <xsl:if test="count(/page/pageResponse/termList/stopword) > 0"> 253 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.common')"/><xsl:text> </xsl:text> 254 <xsl:for-each select="/page/pageResponse/termList/stopword"> 255 <span style="font-style:italic;"><xsl:value-of select="@name"/></span><xsl:text> </xsl:text> 256 </xsl:for-each> 257 <br /><br /> 258 </xsl:if> 259 260 <!-- If there is only one or two search terms then show the expanded information --><xsl:choose> 261 <xsl:when test="count(/page/pageResponse/termList/term) < 3"> 262 <xsl:for-each select="/page/pageResponse/termList/term"> 263 <xsl:variable name="occursTextKey"> 264 <xsl:choose> 265 <xsl:when test="@freq = 1">query.termoccurs.1.1</xsl:when> 266 <xsl:when test="@numDocsMatch = 1">query.termoccurs.x.1</xsl:when> 267 <xsl:otherwise>query.termoccurs.x.x</xsl:otherwise></xsl:choose></xsl:variable> 268 <xsl:variable name="levelText"><xsl:call-template name="documentLevelText"><xsl:with-param name="level" select="$level"/><xsl:with-param name="numDocsMatched" select="@numDocsMatch"/></xsl:call-template></xsl:variable> 269 <span class="termInfo"> 270 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, $occursTextKey, concat(@name,';', @freq,';', @numDocsMatch,';', $levelText))"/></span><br/> 271 </xsl:for-each> 272 </xsl:when> 273 <xsl:otherwise> 274 <xsl:for-each select="/page/pageResponse/termList/term"> 275 <span style="font-style:italic;"><xsl:value-of select="@name"/></span> (<xsl:value-of select="@freq"/>) 276 </xsl:for-each> 277 </xsl:otherwise> 278 </xsl:choose> 279 </p> 280 </xsl:template> 281 303 <p class="termList"> 304 <xsl:if test="count(/page/pageResponse/termList/stopword) > 0"> 305 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.common')"/> 306 <xsl:text/> 307 <xsl:for-each select="/page/pageResponse/termList/stopword"> 308 <span style="font-style:italic;"> 309 <xsl:value-of select="@name"/> 310 </span> 311 <xsl:text/> 312 </xsl:for-each> 313 <br /> 314 <br /> 315 </xsl:if> 316 317 <!-- If there is only one or two search terms then show the expanded information --> 318 <xsl:choose> 319 <xsl:when test="count(/page/pageResponse/termList/term) < 3"> 320 <xsl:for-each select="/page/pageResponse/termList/term"> 321 <xsl:variable name="occursTextKey"> 322 <xsl:choose> 323 <xsl:when test="@freq = 1">query.termoccurs.1.1</xsl:when> 324 <xsl:when test="@numDocsMatch = 1">query.termoccurs.x.1</xsl:when> 325 <xsl:otherwise>query.termoccurs.x.x</xsl:otherwise> 326 </xsl:choose> 327 </xsl:variable> 328 <xsl:variable name="levelText"> 329 <xsl:call-template name="documentLevelText"> 330 <xsl:with-param name="level" select="$level"/> 331 <xsl:with-param name="numDocsMatched" select="@numDocsMatch"/> 332 </xsl:call-template> 333 </xsl:variable> 334 <span class="termInfo"> 335 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, $occursTextKey, concat(@name,';', @freq,';', @numDocsMatch,';', $levelText))"/> 336 </span> 337 <br/> 338 </xsl:for-each> 339 </xsl:when> 340 <xsl:otherwise> 341 <xsl:for-each select="/page/pageResponse/termList/term"> 342 <span style="font-style:italic;"> 343 <xsl:value-of select="@name"/> 344 </span> (<xsl:value-of select="@freq"/>) 345 </xsl:for-each> 346 </xsl:otherwise> 347 </xsl:choose> 348 </p> 349 </xsl:template> 350 282 351 <xsl:template name="prevNextButtons"> 283 352 <!-- Current page --> … … 293 362 </xsl:choose> 294 363 </xsl:variable> 295 364 296 365 <xsl:variable name="usesS1"> 297 366 <xsl:choose> … … 300 369 </xsl:choose> 301 370 </xsl:variable> 302 371 303 372 <!-- Find the total number of documents returned --> 304 373 <xsl:variable name="docMax"> … … 310 379 <xsl:value-of select="/page/pageResponse/metadataList/metadata[@name = 'numDocsMatched']"/> 311 380 </xsl:when> 312 <xsl:otherwise><xsl:value-of select="count(/page/pageResponse/documentNodeList/documentNode)"/></xsl:otherwise> 381 <xsl:otherwise> 382 <xsl:value-of select="count(/page/pageResponse/documentNodeList/documentNode)"/> 383 </xsl:otherwise> 313 384 </xsl:choose> 314 385 </xsl:variable> 315 386 316 387 <!-- Find the number of documents displayed per page --> 317 388 <xsl:variable name="docsPerPage"> … … 326 397 </xsl:choose> 327 398 </xsl:variable> 328 399 329 400 <!-- Find the number of documents displayed per page --> 330 401 <xsl:variable name="level"> … … 339 410 </xsl:choose> 340 411 </xsl:variable> 341 342 <table id="searchResultNavTable"><tr> 343 <xsl:variable name="startPageName"><xsl:if test="$usesS1 = 'true'">s1.</xsl:if>startPage</xsl:variable> 344 345 <!-- Previous button --> 346 <td id="prevArrowTD"> 347 <xsl:if test="$currentPage != 1"> 348 <a href="{$library_name}?a=q&sa={/page/pageRequest/@subaction}&c={$collName}&s={/page/pageResponse/service/@name}&rt=rd&{$startPageName}={$currentPage - 1}&qs={/page/pageRequest/paramList/param[@name='qs']/@value}"> 349 <img src="interfaces/default/images/previous.png"/> 350 </a> 412 413 <table id="searchResultNavTable"> 414 <tr> 415 <xsl:variable name="startPageName"> 416 <xsl:if test="$usesS1 = 'true'">s1.</xsl:if>startPage</xsl:variable> 417 418 <!-- Previous button --> 419 <td id="prevArrowTD"> 420 <xsl:if test="$currentPage != 1"> 421 <a href="{$library_name}?a=q&sa={/page/pageRequest/@subaction}&c={$collName}&s={/page/pageResponse/service/@name}&rt=rd&{$startPageName}={$currentPage - 1}&qs={/page/pageRequest/paramList/param[@name='qs']/@value}"> 422 <img src="interfaces/default/images/previous.png"/> 423 </a> 424 </xsl:if> 425 </td> 426 <td id="prevTD"> 427 <xsl:if test="$currentPage != 1"> 428 <a href="{$library_name}?a=q&sa={/page/pageRequest/@subaction}&c={$collName}&s={/page/pageResponse/service/@name}&rt=rd&{$startPageName}={$currentPage - 1}&qs={/page/pageRequest/paramList/param[@name='qs']/@value}">Previous</a> 429 </xsl:if> 430 </td> 431 432 <!-- Search result status bar (in english it reads "Displaying X to Y of Z documents") --> 433 <xsl:if test="$docMax > 0"> 434 <xsl:variable name="startdoc" select="($currentPage - 1) * $docsPerPage + 1"/> 435 <xsl:variable name="enddoc"> 436 <xsl:choose> 437 <xsl:when test="($currentPage * $docsPerPage + 1) > $docMax"> 438 <xsl:value-of select="$docMax"/> 439 </xsl:when> 440 <xsl:otherwise> 441 <xsl:value-of select="$currentPage * $docsPerPage"/> 442 </xsl:otherwise> 443 </xsl:choose> 444 </xsl:variable> 445 <xsl:variable name="level"> 446 <xsl:choose> 447 <xsl:when test="$docMax = 1"> 448 <xsl:text/> 449 <xsl:choose> 450 <xsl:when test="$level = 'Doc'"> 451 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.document')"/> 452 </xsl:when> 453 <xsl:otherwise> 454 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.section')"/> 455 </xsl:otherwise> 456 </xsl:choose> 457 </xsl:when> 458 <xsl:otherwise> 459 <xsl:text/> 460 <xsl:choose> 461 <xsl:when test="$level = 'Doc'"> 462 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.document_plural')"/> 463 </xsl:when> 464 <xsl:otherwise> 465 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.section_plural')"/> 466 </xsl:otherwise> 467 </xsl:choose> 468 </xsl:otherwise> 469 </xsl:choose> 470 </xsl:variable> 471 <td id="searchResultsStatusBar"> 472 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.displayingnumdocs', concat($startdoc,';', $enddoc, ';', $docMax, ';', $level))"/> 473 </td> 351 474 </xsl:if> 352 </td> 353 <td id="prevTD"> 354 <xsl:if test="$currentPage != 1"> 355 <a href="{$library_name}?a=q&sa={/page/pageRequest/@subaction}&c={$collName}&s={/page/pageResponse/service/@name}&rt=rd&{$startPageName}={$currentPage - 1}&qs={/page/pageRequest/paramList/param[@name='qs']/@value}">Previous</a> 356 </xsl:if> 357 </td> 358 359 <!-- Search result status bar (in english it reads "Displaying X to Y of Z documents") --> 360 <xsl:if test="$docMax > 0"> 361 <xsl:variable name="startdoc" select="($currentPage - 1) * $docsPerPage + 1"/> 362 <xsl:variable name="enddoc"><xsl:choose> 363 <xsl:when test="($currentPage * $docsPerPage + 1) > $docMax"> 364 <xsl:value-of select="$docMax"/> 365 </xsl:when> 366 <xsl:otherwise> 367 <xsl:value-of select="$currentPage * $docsPerPage"/> 368 </xsl:otherwise> 369 </xsl:choose></xsl:variable> 370 <xsl:variable name="level"> <xsl:choose> 371 <xsl:when test="$docMax = 1"> 372 <xsl:text> </xsl:text> 373 <xsl:choose> 374 <xsl:when test="$level = 'Doc'"> 375 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.document')"/> 376 </xsl:when> 377 <xsl:otherwise> 378 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.section')"/> 379 </xsl:otherwise> 380 </xsl:choose> 381 </xsl:when> 382 <xsl:otherwise> 383 <xsl:text> </xsl:text> 384 <xsl:choose> 385 <xsl:when test="$level = 'Doc'"> 386 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.document_plural')"/> 387 </xsl:when> 388 <xsl:otherwise> 389 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.section_plural')"/> 390 </xsl:otherwise> 391 </xsl:choose> 392 </xsl:otherwise> 393 </xsl:choose></xsl:variable> 394 <td id="searchResultsStatusBar"> 395 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'query.displayingnumdocs', concat($startdoc,';', $enddoc, ';', $docMax, ';', $level))"/> 396 </td> 397 </xsl:if> 398 399 <!-- Next button --> 400 <td id="nextTD"> 401 <xsl:if test="($currentPage * $docsPerPage + 1) < $docMax"> 402 <a href="{$library_name}?a=q&sa={/page/pageRequest/paramList/param[@name = 'sa']/@value}&c={$collName}&s={/page/pageResponse/service/@name}&rt=rd&{$startPageName}={$currentPage + 1}&qs={/page/pageRequest/paramList/param[@name='qs']/@value}">Next</a> 403 </xsl:if> 404 </td> 405 <td id="nextArrowTD"> 406 <xsl:if test="($currentPage * $docsPerPage + 1) < $docMax"> 407 <a href="{$library_name}?a=q&sa={/page/pageRequest/paramList/param[@name = 'sa']/@value}&c={$collName}&s={/page/pageResponse/service/@name}&rt=rd&{$startPageName}={$currentPage + 1}&qs={/page/pageRequest/paramList/param[@name='qs']/@value}"> 408 <img src="interfaces/default/images/next.png"/> 409 </a> 410 </xsl:if> 411 </td> 412 </tr></table> 475 476 <!-- Next button --> 477 <td id="nextTD"> 478 <xsl:if test="($currentPage * $docsPerPage + 1) < $docMax"> 479 <a href="{$library_name}?a=q&sa={/page/pageRequest/paramList/param[@name = 'sa']/@value}&c={$collName}&s={/page/pageResponse/service/@name}&rt=rd&{$startPageName}={$currentPage + 1}&qs={/page/pageRequest/paramList/param[@name='qs']/@value}">Next</a> 480 </xsl:if> 481 </td> 482 <td id="nextArrowTD"> 483 <xsl:if test="($currentPage * $docsPerPage + 1) < $docMax"> 484 <a href="{$library_name}?a=q&sa={/page/pageRequest/paramList/param[@name = 'sa']/@value}&c={$collName}&s={/page/pageResponse/service/@name}&rt=rd&{$startPageName}={$currentPage + 1}&qs={/page/pageRequest/paramList/param[@name='qs']/@value}"> 485 <img src="interfaces/default/images/next.png"/> 486 </a> 487 </xsl:if> 488 </td> 489 </tr> 490 </table> 413 491 </xsl:template> 414 492 … … 419 497 <xsl:for-each select="param"> 420 498 <xsl:variable name='pname' select="@name"/> 421 <xsl:text>&</xsl:text><xsl:value-of select="$ns"/><xsl:value-of select="@name"/>=<xsl:apply-templates select="." mode="calculate-default"><xsl:with-param name='ns' select='$ns'/></xsl:apply-templates> 499 <xsl:text>&</xsl:text> 500 <xsl:value-of select="$ns"/> 501 <xsl:value-of select="@name"/>=<xsl:apply-templates select="." mode="calculate-default"> 502 <xsl:with-param name='ns' select='$ns'/> 503 </xsl:apply-templates> 422 504 </xsl:for-each> 423 505 </xsl:template> 424 506 425 426 427 428 429 430 431 507 <xsl:template name="resultsPagePre"> 432 508 <!-- OVERWRITE TO INSERT CONTENT BEFORE THE RESULTS PAGE --> … … 435 511 </xsl:if> 436 512 </xsl:template> 437 513 438 514 <xsl:template name="resultsPagePost"> 439 515 <!-- OVERWRITE TO INSERT CONTENT AFTER THE RESULTS PAGE --> 440 516 </xsl:template> 441 517 442 518 <xsl:template name="documentNodePre"> 443 519 <!-- OVERWRITE TO INSERT CONTENT BEFORE EVERY DOCUMENT NODE --> 444 520 </xsl:template> 445 521 446 522 <xsl:template name="documentNodePost"> 447 523 <!-- OVERWRITE TO INSERT CONTENT AFTER EVERY DOCUMENT NODE --> … … 450 526 </xsl:if> 451 527 </xsl:template> 452 528 453 529 <xsl:template name="mapFeaturesJSONNodes"> 454 530 <div id="jsonNodes" style="display:none;"> … … 457 533 <xsl:if test="metadataList/metadata[@name = 'Latitude'] and metadataList/metadata[@name = 'Longitude']"> 458 534 <xsl:text>{</xsl:text> 459 <xsl:text disable-output-escaping="yes">"nodeID":"</xsl:text><xsl:value-of select="@nodeID"/><xsl:text disable-output-escaping="yes">",</xsl:text> 460 <xsl:text disable-output-escaping="yes">"title":"</xsl:text><xsl:value-of disable-output-escaping="yes" select="metadataList/metadata[@name = 'Title']"/><xsl:text disable-output-escaping="yes">",</xsl:text> 461 <xsl:text disable-output-escaping="yes">"lat":</xsl:text><xsl:value-of disable-output-escaping="yes" select="metadataList/metadata[@name = 'Latitude']"/><xsl:text>,</xsl:text> 462 <xsl:text disable-output-escaping="yes">"lng":</xsl:text><xsl:value-of disable-output-escaping="yes" select="metadataList/metadata[@name = 'Longitude']"/> 535 <xsl:text disable-output-escaping="yes">"nodeID":"</xsl:text> 536 <xsl:value-of select="@nodeID"/> 537 <xsl:text disable-output-escaping="yes">",</xsl:text> 538 <xsl:text disable-output-escaping="yes">"title":"</xsl:text> 539 <xsl:value-of disable-output-escaping="yes" select="metadataList/metadata[@name = 'Title']"/> 540 <xsl:text disable-output-escaping="yes">",</xsl:text> 541 <xsl:text disable-output-escaping="yes">"lat":</xsl:text> 542 <xsl:value-of disable-output-escaping="yes" select="metadataList/metadata[@name = 'Latitude']"/> 543 <xsl:text>,</xsl:text> 544 <xsl:text disable-output-escaping="yes">"lng":</xsl:text> 545 <xsl:value-of disable-output-escaping="yes" select="metadataList/metadata[@name = 'Longitude']"/> 463 546 <xsl:text>}</xsl:text> 464 547 <xsl:if test="not(position() = count(//documentNode))"> … … 469 552 <xsl:text>]</xsl:text> 470 553 </div> 471 472 <div id="map_canvas" style="margin:0px auto; width:450px; height:500px; float:right;"><xsl:text> </xsl:text></div> 473 554 555 <div id="map_canvas" style="margin:0px auto; width:450px; height:500px; float:right;"> 556 <xsl:text/> 557 </div> 558 474 559 <!-- Although these aren't visible, they are necessary because it forces Greenstone to include this metadata in the page xml --> 475 560 <gsf:metadata name="Latitude" hidden="true"/> 476 561 <gsf:metadata name="Longitude" hidden="true"/> 477 562 </xsl:template> 478 563 479 564 <xsl:template name="mapFeaturesIcon"> 480 565 <td style="padding-left:5px; padding-right:5px;" valign="top"> 481 <a href="javascript:focusDocument('{@nodeID}');"><img src="interfaces/default/images/map_marker.png"/></a> 566 <a href="javascript:focusDocument('{@nodeID}');"> 567 <img src="interfaces/default/images/map_marker.png"/> 568 </a> 482 569 </td> 483 570 </xsl:template>
Note:
See TracChangeset
for help on using the changeset viewer.