Commit c09ce5b76d5052c600d030604f1cf8d3e4d9bd1e

Authored by Edmar Moretti
1 parent 1db38bfa

Correção na ferramenta de busca na INDE

classesjs/classe_editorgm.js
1 //TODO documentar 1 //TODO documentar
2 //TODO traduzir 2 //TODO traduzir
  3 +//TODO incluir opcao para selecionar todas as figuras
  4 +//TODO incluir balao de informacoes como um elemento grafico de desenho
  5 +//TODO uncluir caixas de texto
  6 +
3 /* 7 /*
4 Editor vetorial de limites para a interface google maps 8 Editor vetorial de limites para a interface google maps
5 9
classesjs/classe_editorol.js
1 //TODO documentar 1 //TODO documentar
2 //TODO traduzir 2 //TODO traduzir
  3 +//TODO incluir opcao para selecionar todas as figuras
  4 +//TODO incluir balao de informacoes como um elemento grafico de desenho
  5 +//TODO uncluir caixas de texto
  6 +
3 /* 7 /*
4 Title: Editor vetorial para OpenLayers 8 Title: Editor vetorial para OpenLayers
5 9
@@ -33,6 +37,7 @@ Free Software Foundation, Inc., no endereço @@ -33,6 +37,7 @@ Free Software Foundation, Inc., no endereço
33 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. 37 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
34 */ 38 */
35 39
  40 +
36 if(!i3GEO || typeof(i3GEO) === 'undefined'){ 41 if(!i3GEO || typeof(i3GEO) === 'undefined'){
37 var i3GEO = { 42 var i3GEO = {
38 }; 43 };
@@ -8,6 +8,14 @@ @@ -8,6 +8,14 @@
8 margin-top: -5px; 8 margin-top: -5px;
9 } 9 }
10 */ 10 */
  11 +/*
  12 +Utilizado na janela do buscador INDE
  13 +*/
  14 +.meta-param, .meta-value{
  15 + text-align: left;
  16 + font-size: 12px;
  17 + padding: 5px;
  18 +}
11 .botoesLegendaFlutuante { 19 .botoesLegendaFlutuante {
12 font-size: 10px; 20 font-size: 10px;
13 } 21 }
pacotes/cswclient/csw-proxy.php
@@ -5,7 +5,7 @@ @@ -5,7 +5,7 @@
5 // Author: Rob van Swol, NLR 5 // Author: Rob van Swol, NLR
6 // October 15th, 2008 6 // October 15th, 2008
7 // 7 //
8 - 8 +include(dirname(__FILE__)."/../../ms_configura.php");
9 $logging = false; 9 $logging = false;
10 /* Optionally write all requests in a log file */ 10 /* Optionally write all requests in a log file */
11 if ($logging) { 11 if ($logging) {
@@ -62,6 +62,9 @@ if ($_POST['csw_request']) { @@ -62,6 +62,9 @@ if ($_POST['csw_request']) {
62 62
63 curl_setopt ($session, CURLOPT_POST, true); 63 curl_setopt ($session, CURLOPT_POST, true);
64 curl_setopt ($session, CURLOPT_POSTFIELDS, $xmlpost); 64 curl_setopt ($session, CURLOPT_POSTFIELDS, $xmlpost);
  65 + if(isset($i3geo_proxy_server) && $i3geo_proxy_server != ""){
  66 + curl_setopt($session, CURLOPT_PROXY, $i3geo_proxy_server);
  67 + }
65 curl_setopt ($session, CURLOPT_HTTPHEADER, Array("Content-Type: application/xml")); 68 curl_setopt ($session, CURLOPT_HTTPHEADER, Array("Content-Type: application/xml"));
66 //curl_setopt ($session, CURLOPT_SSL_VERIFYPEER, 0); 69 //curl_setopt ($session, CURLOPT_SSL_VERIFYPEER, 0);
67 if ($logging) 70 if ($logging)
@@ -78,6 +81,9 @@ if ($_POST['csw_request']) { @@ -78,6 +81,9 @@ if ($_POST['csw_request']) {
78 } 81 }
79 curl_setopt ($session, CURLOPT_POST, true); 82 curl_setopt ($session, CURLOPT_POST, true);
80 curl_setopt ($session, CURLOPT_POSTFIELDS, $_POST['csw_request']); 83 curl_setopt ($session, CURLOPT_POSTFIELDS, $_POST['csw_request']);
  84 + if(isset($i3geo_proxy_server) && $i3geo_proxy_server != ""){
  85 + curl_setopt($session, CURLOPT_PROXY, $i3geo_proxy_server);
  86 + }
81 curl_setopt ($session, CURLOPT_HTTPHEADER, Array("Content-Type: application/x-www-form-urlencoded")); 87 curl_setopt ($session, CURLOPT_HTTPHEADER, Array("Content-Type: application/x-www-form-urlencoded"));
82 if ($logging) 88 if ($logging)
83 fwrite($fh, $timestamp.": POST> ".$_POST['csw_request']."\n"); 89 fwrite($fh, $timestamp.": POST> ".$_POST['csw_request']."\n");
@@ -86,6 +92,9 @@ if ($_POST['csw_request']) { @@ -86,6 +92,9 @@ if ($_POST['csw_request']) {
86 } else if ($_GET['csw_request']) { 92 } else if ($_GET['csw_request']) {
87 curl_setopt ($session, CURLOPT_POST, true); 93 curl_setopt ($session, CURLOPT_POST, true);
88 curl_setopt ($session, CURLOPT_POSTFIELDS, $_GET['csw_request']); 94 curl_setopt ($session, CURLOPT_POSTFIELDS, $_GET['csw_request']);
  95 + if(isset($i3geo_proxy_server) && $i3geo_proxy_server != ""){
  96 + curl_setopt($session, CURLOPT_PROXY, $i3geo_proxy_server);
  97 + }
89 curl_setopt ($session, CURLOPT_HTTPHEADER, Array("Content-Type: application/x-www-form-urlencoded")); 98 curl_setopt ($session, CURLOPT_HTTPHEADER, Array("Content-Type: application/x-www-form-urlencoded"));
90 if ($logging) 99 if ($logging)
91 fwrite($fh, $timestamp.": GET> ".$_GET['csw_request']."\n"); 100 fwrite($fh, $timestamp.": GET> ".$_GET['csw_request']."\n");
pacotes/cswclient/lib/scripts/cswclient.js
@@ -10,6 +10,8 @@ @@ -10,6 +10,8 @@
10 * Last Change : 2008-10-22 10 * Last Change : 2008-10-22
11 */ 11 */
12 12
  13 +i3GEO = window.parent.i3GEO;
  14 +
13 CSWClient = function(cswhost, host){ 15 CSWClient = function(cswhost, host){
14 this.cswhost = null; 16 this.cswhost = null;
15 this.use_proxy = true; 17 this.use_proxy = true;
@@ -27,7 +29,7 @@ CSWClient = function(cswhost, host){ @@ -27,7 +29,7 @@ CSWClient = function(cswhost, host){
27 } 29 }
28 CSWClient.prototype.abreINDE = function(id) 30 CSWClient.prototype.abreINDE = function(id)
29 { 31 {
30 - window.open("http://www.metadados.inde.gov.br/geonetwork/srv/br/main.home?uuid="+id,"new"); 32 + window.open("http://metadados.inde.gov.br/geonetwork/srv/por/main.home?uuid="+id,"new");
31 } 33 }
32 CSWClient.prototype.setCSWHost = function(host) 34 CSWClient.prototype.setCSWHost = function(host)
33 { 35 {
@@ -82,12 +84,14 @@ CSWClient.prototype.handleCSWResponse = function(request, xml) @@ -82,12 +84,14 @@ CSWClient.prototype.handleCSWResponse = function(request, xml)
82 if (request == "getrecordbyid"){ 84 if (request == "getrecordbyid"){
83 85
84 //outputDiv = window.open().document.body;//document.getElementById("metadata"); 86 //outputDiv = window.open().document.body;//document.getElementById("metadata");
85 - //output = '<head><link rel="stylesheet" type="text/css" href="http://localhost/i3geo/pacotes/cswclient/lib/css/cswclient.css"/></head>' + output; 87 + //output = '<head><link rel="stylesheet" type="text/css" href="'+i3GEO.configura.locaplic+'/pacotes/cswclient/lib/css/cswclient.css"/></head>' + output;
86 //this.positionDiv(document.getElementById('popup'), document.getElementById('results')) 88 //this.positionDiv(document.getElementById('popup'), document.getElementById('results'))
87 //this.positionPopUp(document.getElementById('popup'), document.getElementById('results')) 89 //this.positionPopUp(document.getElementById('popup'), document.getElementById('results'))
88 //this.positionPopUp(document.getElementById('popup'), document.getElementById('cswclient')) 90 //this.positionPopUp(document.getElementById('popup'), document.getElementById('cswclient'))
89 //this.showDiv(document.getElementById('popup')); 91 //this.showDiv(document.getElementById('popup'));
90 - } 92 + i3GEO.janela.mensagemSimples("<div style='text-align:left;overflow:auto;height: 250px;'>"+output+"</div>","",450);
  93 + return;
  94 +}
91 outputDiv.innerHTML = output; 95 outputDiv.innerHTML = output;
92 } 96 }
93 97
pacotes/cswclient/lib/xml/csw-hosts.xml
1 <select name="cswhosts"> 1 <select name="cswhosts">
2 - <option value="http://geomatics.nlr.nl/excat/csw">eXcat@nlr</option>  
3 - <option value="http://dinolks03.nitg.tno.nl/excat/csw">eXcat@tno</option>  
4 - <option value="http://www.geodata.alterra.nl/excat/csw">eXcat@alterra</option>  
5 - <option value="http://geonovum.nitg.tno.nl:8080/geonetwork/srv/en/csw">Geonovum</option>  
6 <option value="http://www.metadados.inde.gov.br/geonetwork/srv/br/csw">INDE-BR</option> 2 <option value="http://www.metadados.inde.gov.br/geonetwork/srv/br/csw">INDE-BR</option>
7 - <option value="http://localhost:8080/geonetwork/srv/en/csw">teste</option>  
8 - <option value="http://mapas.mma.gov.br/geonetwork/srv/br/csw">INDE-MMA</option>  
9 </select> 3 </select>
pacotes/cswclient/lib/xsl/csw-metadata.xsl
@@ -262,6 +262,7 @@ @@ -262,6 +262,7 @@
262 <xsl:template match="gmd:MD_Distribution"> 262 <xsl:template match="gmd:MD_Distribution">
263 <div class="captioneddiv"> 263 <div class="captioneddiv">
264 <h3>Distribution info</h3> 264 <h3>Distribution info</h3>
  265 +
265 <table class="meta"><tr></tr> 266 <table class="meta"><tr></tr>
266 <xsl:for-each select="gmd:transferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource"> 267 <xsl:for-each select="gmd:transferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource">
267 <xsl:choose> 268 <xsl:choose>
@@ -315,6 +316,7 @@ @@ -315,6 +316,7 @@
315 </td> 316 </td>
316 </tr> 317 </tr>
317 </xsl:when> 318 </xsl:when>
  319 +
318 <!--xsl:when test="linkage[text()]"> 320 <!--xsl:when test="linkage[text()]">
319 <link type="url"><xsl:value-of select="linkage[text()]"/></link> 321 <link type="url"><xsl:value-of select="linkage[text()]"/></link>
320 </xsl:when--> 322 </xsl:when-->
@@ -372,6 +374,7 @@ @@ -372,6 +374,7 @@
372 </table> 374 </table>
373 <xsl:apply-templates select="./ows:BoundingBox"/> 375 <xsl:apply-templates select="./ows:BoundingBox"/>
374 <xsl:apply-templates select="./ows:WGS84BoundingBox"/> 376 <xsl:apply-templates select="./ows:WGS84BoundingBox"/>
  377 +<xsl:apply-templates select="./dc:URI"/>
375 </div> 378 </div>
376 </xsl:template> 379 </xsl:template>
377 380
@@ -397,6 +400,33 @@ @@ -397,6 +400,33 @@
397 </table> 400 </table>
398 </div> 401 </div>
399 </xsl:template> 402 </xsl:template>
  403 +
  404 +<xsl:template match="dc:URI">
  405 + <div class="captioneddiv">
  406 + <br></br>
  407 + <xsl:choose>
  408 + <xsl:when test="@description = 'WMS'">
  409 + <a>
  410 + <xsl:attribute name="href">
  411 + <xsl:value-of select="."/>
  412 + </xsl:attribute>
  413 + <xsl:value-of select="@description" />
  414 + </a>
  415 + </xsl:when>
  416 + <xsl:otherwise>
  417 + <a>
  418 + <xsl:attribute name="href">
  419 + <xsl:value-of select="."/>
  420 + </xsl:attribute>
  421 + <xsl:value-of select="@description" />
  422 + </a>
  423 + </xsl:otherwise>
  424 + </xsl:choose>
  425 +
  426 +
  427 +
  428 + </div>
  429 +</xsl:template>
400 <!-- End Metadata Dublin Core --> 430 <!-- End Metadata Dublin Core -->
401 431
402 <!-- Start Utills --> 432 <!-- Start Utills -->
pacotes/cswclient/lib/xsl/csw-results.xsl
1 -<?xml version="1.0" encoding="ISO-8859-1"?>  
2 -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"  
3 - xmlns:gco="http://www.isotc211.org/2005/gco"  
4 - xmlns:gmd="http://www.isotc211.org/2005/gmd" 1 +<?xml version="1.0"?>
  2 +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
5 xmlns:dc="http://purl.org/dc/elements/1.1/" 3 xmlns:dc="http://purl.org/dc/elements/1.1/"
6 - xmlns:dct="http://purl.org/dc/terms/"  
7 - xmlns:ows="http://www.opengis.net/ows"  
8 - xmlns:cat="http://www.esri.com/metadata/csw/">  
9 -  
10 -<xsl:output method="xml" encoding="ISO-8859-1"/>  
11 - 4 + xmlns:dct="http://purl.org/dc/terms/">
  5 +<!--xsl:output method="html" encoding="ISO-8859-1"/-->
12 6
13 7
14 <xsl:variable name="pageUrl"> 8 <xsl:variable name="pageUrl">
@@ -83,232 +77,70 @@ @@ -83,232 +77,70 @@
83 </h3> 77 </h3>
84 78
85 <br/> 79 <br/>
  80 + <ol>
  81 + <xsl:attribute name="start">
  82 + <xsl:value-of select="$start"/>
  83 + </xsl:attribute>
  84 + <xsl:for-each select="./*[local-name()='SummaryRecord']|./*[local-name()='BriefRecord']|./*[local-name()='Record']">
  85 + <li>
  86 + <strong><xsl:text>Title: </xsl:text></strong>
  87 + <a>
  88 + <xsl:attribute name="href">
  89 + <xsl:text>javascript:(csw_client.abreINDE</xsl:text>
  90 + <xsl:text>('</xsl:text>
  91 + <xsl:value-of select="./dc:identifier"/>
  92 + <xsl:text>'))</xsl:text>
  93 + </xsl:attribute>
  94 + <xsl:choose>
  95 + <xsl:when test="./dc:title">
  96 + <xsl:apply-templates select="./dc:title"/>
  97 + </xsl:when>
  98 + <xsl:otherwise>
  99 + <xsl:text> ...</xsl:text>
  100 + </xsl:otherwise>
  101 + </xsl:choose>
  102 + </a>
  103 + <br/>
  104 + <xsl:apply-templates select="./dct:abstract"/>
  105 + <br/>
  106 + <strong><xsl:text>Keywords: </xsl:text></strong>
  107 + <xsl:for-each select="./dc:subject">
  108 + <xsl:if test=".!=''">
  109 + <xsl:if test="position() &gt; 1">, </xsl:if>
  110 + <i><xsl:value-of select="."/></i>
  111 + </xsl:if>
  112 + </xsl:for-each>
  113 + <hr/>
  114 + </li>
  115 + </xsl:for-each>
  116 + </ol>
86 </div> 117 </div>
87 - <div>  
88 - <xsl:apply-templates/>  
89 - </div>  
90 -</xsl:template>  
91 -  
92 -<xsl:template match="/*[local-name()='GetRecordByIdResponse']">  
93 - <xsl:apply-templates select="cat:FullRecord"/>  
94 - <xsl:apply-templates select="*[local-name()='Record']"/>  
95 - <xsl:apply-templates select="*[local-name()='SummaryRecord']"/>  
96 - <xsl:apply-templates select="*[local-name()='BriefRecord']"/>  
97 - <xsl:apply-templates select="gmd:MD_Metadata"/>  
98 -  
99 -</xsl:template>  
100 -  
101 -<xsl:template match="cat:FullRecord">  
102 - <xsl:apply-templates select="metadata"/>  
103 -</xsl:template>  
104 -  
105 -  
106 -<!-- Start Metadata ISO19139 -->  
107 -<xsl:template match="gmd:MD_Metadata">  
108 - <!-- First the Identification block -->  
109 - <xsl:apply-templates select="./gmd:identificationInfo/gmd:MD_DataIdentification"/>  
110 - <xsl:apply-templates select="./gmd:distributionInfo/gmd:MD_Distribution"/>  
111 -  
112 - <table class="meta">  
113 - <tr>  
114 - <td class="meta-param">Mais info:</td>  
115 - <td class="meta-value">  
116 - <a>  
117 - <xsl:attribute name="href">  
118 - <xsl:text>javascript:csw_client.abreINDE</xsl:text>  
119 - <xsl:text>('</xsl:text>  
120 - <xsl:value-of select="./gmd:fileIdentifier/gco:CharacterString"/>  
121 - <xsl:text>')</xsl:text>  
122 - </xsl:attribute>  
123 - <xsl:value-of select="./gmd:fileIdentifier/gco:CharacterString"/>  
124 - <xsl:text> (abre em nova janela)</xsl:text>  
125 - </a>  
126 - </td>  
127 - </tr>  
128 - </table>  
129 -</xsl:template>  
130 -  
131 -<!-- 'Identification' block -->  
132 -<xsl:template match="gmd:MD_DataIdentification">  
133 -<div class="captioneddiv">  
134 -<!--<h3>Identification info</h3>-->  
135 -<table class="meta"><tr></tr>  
136 - <tr><td></td><td><hr></hr></td></tr>  
137 - <xsl:call-template name="tablerowBold">  
138 - <xsl:with-param name="cname" select="'Título'"/>  
139 - <xsl:with-param name="cvalue" select="./gmd:citation/gmd:CI_Citation/gmd:title/gco:CharacterString"/>  
140 - </xsl:call-template>  
141 - <tr>  
142 - <td class="meta-param">Resumo:</td>  
143 - <td class="meta-value">  
144 - <xsl:apply-templates select="./gmd:abstract"/>  
145 - </td>  
146 - </tr>  
147 - <xsl:apply-templates select="./gmd:pointOfContact"/>  
148 -</table>  
149 -</div>  
150 -</xsl:template>  
151 -  
152 -<!-- 'Identification->Point of Contact' block -->  
153 -<xsl:template match="gmd:pointOfContact">  
154 - <tr>  
155 - <td class="meta-param">Organização:</td>  
156 - <td class="meta-value">  
157 - <xsl:apply-templates select="./gmd:CI_ResponsibleParty/gmd:organisationName/gco:CharacterString"/>  
158 - </td>  
159 - </tr>  
160 - <tr>  
161 - <td class="meta-param">e-mail:</td>  
162 - <td class="meta-value">  
163 - <xsl:apply-templates select="./gmd:CI_ResponsibleParty/gmd:contactInfo/gmd:CI_Contact/gmd:address/gmd:CI_Address/gmd:electronicMailAddress/gco:CharacterString"/>  
164 - </td>  
165 - </tr>  
166 -  
167 </xsl:template> 118 </xsl:template>
168 119
169 -<!-- 'Distribution Info' block -->  
170 -<xsl:template match="gmd:MD_Distribution">  
171 - <table class="meta">  
172 - <xsl:for-each select="gmd:transferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource">  
173 - <xsl:choose>  
174 - <xsl:when test="starts-with(./gmd:protocol/gco:CharacterString,'WWW:DOWNLOAD-') and contains(./gmd:protocol/gco:CharacterString,'http--download') and ./gmd:name/gco:CharacterString">  
175 - <tr>  
176 - <td class="meta-param">Download:</td>  
177 - <td class="meta-value">  
178 - <a><xsl:attribute name="href">  
179 - <xsl:value-of select="gmd:linkage/gmd:URL"/>  
180 - </xsl:attribute>  
181 - <xsl:value-of select="gmd:linkage/gmd:URL"/>  
182 - </a>  
183 - </td>  
184 - </tr>  
185 - </xsl:when>  
186 - <xsl:when test="starts-with(./gmd:protocol/gco:CharacterString,'ESRI:AIMS-') and contains(./gmd:protocol/gco:CharacterString,'-get-image') and ./gmd:name/gco:CharacterString">  
187 - <tr>  
188 - <td class="meta-param">Esri ArcIms:</td>  
189 - <td class="meta-value">  
190 - <a><xsl:attribute name="href">  
191 - <xsl:value-of select="gmd:linkage/gmd:URL"/>  
192 - </xsl:attribute>  
193 - <xsl:value-of select="gmd:name/gco:CharacterString"/>  
194 - </a>  
195 - </td>  
196 - </tr>  
197 - </xsl:when>  
198 - <xsl:when test="starts-with(./gmd:protocol/gco:CharacterString,'OGC:WMS-') and contains(./gmd:protocol/gco:CharacterString,'-get-map') and ./gmd:name/gco:CharacterString">  
199 - <tr>  
200 - <td class="meta-param">OGC-WMS:</td>  
201 - <td class="meta-value">  
202 - <a><xsl:attribute name="href">  
203 - <xsl:text>javascript:void(window.open('</xsl:text>  
204 - <xsl:value-of select="gmd:linkage/gmd:URL"/>  
205 - <xsl:text>'))</xsl:text>  
206 - </xsl:attribute>  
207 - <xsl:value-of select="gmd:name/gco:CharacterString"/>  
208 - </a>  
209 - </td>  
210 - </tr>  
211 - </xsl:when>  
212 - <xsl:when test="starts-with(./gmd:protocol/gco:CharacterString,'OGC:WMS-') and contains(./gmd:protocol/gco:CharacterString,'-get-capabilities') and ./gmd:name/gco:CharacterString">  
213 - <tr>  
214 - <td class="meta-param">OGC-WMS Capabilities:</td>  
215 - <td class="meta-value">  
216 - <a><xsl:attribute name="href">  
217 - <xsl:value-of select="gmd:linkage/gmd:URL"/>  
218 - </xsl:attribute>  
219 - <xsl:value-of select="gmd:name/gco:CharacterString"/>  
220 - </a>  
221 - </td>  
222 - </tr>  
223 - </xsl:when>  
224 - <!--xsl:when test="linkage[text()]">  
225 - <link type="url"><xsl:value-of select="linkage[text()]"/></link>  
226 - </xsl:when-->  
227 - </xsl:choose>  
228 - </xsl:for-each>  
229 - </table>  
230 -</xsl:template>  
231 -  
232 -<!-- 'Identification->Abstract -->  
233 -<xsl:template match="gmd:abstract">  
234 - <xsl:apply-templates select="./gco:CharacterString/text()"/>  
235 -</xsl:template>  
236 -  
237 -  
238 -<!-- 'Identification' block -->  
239 -<xsl:template match="*[local-name()='Record']|*[local-name()='SummaryRecord']|*[local-name()='BriefRecord']">  
240 - <xsl:call-template name="tablerow">  
241 - <xsl:with-param name="cname" select="'Identifier'"/>  
242 - <xsl:with-param name="cvalue" select="./dc:identifier"/>  
243 - </xsl:call-template>  
244 -</xsl:template>  
245 -  
246 -  
247 -<xsl:template match="dct:abstract">  
248 -<!--xsl:value-of select="."/-->  
249 -<xsl:apply-templates select="text()"/>  
250 -</xsl:template>  
251 -  
252 -  
253 -<!-- Start Utills -->  
254 -<xsl:template match="text()">  
255 - <xsl:call-template name="to-para">  
256 - <xsl:with-param name="from" select="'&#10;&#10;'"/>  
257 - <xsl:with-param name="string" select="."/>  
258 - </xsl:call-template>  
259 -</xsl:template>  
260 -  
261 -<!-- replace all occurences of the character(s) `from'  
262 - by <p/> in the string `string'.-->  
263 -<xsl:template name="to-para" >  
264 - <xsl:param name="string"/>  
265 - <xsl:param name="from"/>  
266 - <xsl:choose>  
267 - <xsl:when test="contains($string,$from)">  
268 - <xsl:value-of select="substring-before($string,$from)"/>  
269 - <!-- output a <p/> tag instead of `from' -->  
270 - <p/>  
271 - <xsl:call-template name="to-para">  
272 - <xsl:with-param name="string" select="substring-after($string,$from)"/>  
273 - <xsl:with-param name="from" select="$from"/>  
274 - </xsl:call-template>  
275 - </xsl:when>  
276 - <xsl:otherwise>  
277 - <xsl:value-of select="$string"/>  
278 - </xsl:otherwise>  
279 - </xsl:choose>  
280 -</xsl:template>  
281 -  
282 -  
283 -<xsl:template name="tablerow" >  
284 - <xsl:param name="cname"/>  
285 - <xsl:param name="cvalue"/> 120 +<xsl:template match="dc:title">
286 <xsl:choose> 121 <xsl:choose>
287 - <xsl:when test="string($cvalue)">  
288 - <tr>  
289 - <td class="meta-param"><xsl:value-of select="$cname"/><xsl:text>: </xsl:text></td>  
290 - <td class="meta-value"><xsl:value-of select="$cvalue"/></td>  
291 - </tr> 122 + <xsl:when test=".!=''">
  123 + <xsl:value-of select="."/>
292 </xsl:when> 124 </xsl:when>
293 <xsl:otherwise> 125 <xsl:otherwise>
  126 + <xsl:text> ...</xsl:text>
294 </xsl:otherwise> 127 </xsl:otherwise>
295 </xsl:choose> 128 </xsl:choose>
296 </xsl:template> 129 </xsl:template>
297 130
298 -<xsl:template name="tablerowBold" >  
299 - <xsl:param name="cname"/>  
300 - <xsl:param name="cvalue"/>  
301 - <xsl:choose>  
302 - <xsl:when test="string($cvalue)">  
303 - <tr>  
304 - <td class="meta-param"><xsl:value-of select="$cname"/><xsl:text>: </xsl:text></td>  
305 - <td class="meta-value"><b><xsl:value-of select="$cvalue"/></b></td>  
306 - </tr>  
307 - </xsl:when>  
308 - <xsl:otherwise>  
309 - </xsl:otherwise>  
310 - </xsl:choose> 131 +<xsl:template match="dct:abstract">
  132 + <strong><xsl:text>Abstract: </xsl:text></strong>
  133 + <xsl:value-of select="substring(.,1,250)"/>
  134 + <xsl:text> ...</xsl:text>
  135 + <a>
  136 + <xsl:attribute name="href">
  137 + <xsl:text>javascript:(csw_client.getRecordById</xsl:text>
  138 + <xsl:text>('</xsl:text>
  139 + <xsl:value-of select="../dc:identifier"/>
  140 + <xsl:text>'))</xsl:text>
  141 + </xsl:attribute>
  142 + <xsl:text> Mais info</xsl:text>
  143 + </a>
311 </xsl:template> 144 </xsl:template>
312 -<!-- End Utills -->  
313 145
314 </xsl:stylesheet> 146 </xsl:stylesheet>