Commit 4bd72a7da2b4b5ad2db799546291d7fffc640418

Authored by Edmar Moretti
1 parent 34c6b428

--no commit message

pacotes/cswclient/csw.html
@@ -28,6 +28,8 @@ @@ -28,6 +28,8 @@
28 </select> 28 </select>
29 <input type="text" name="query" value="" size="24"/> 29 <input type="text" name="query" value="" size="24"/>
30 <p/> 30 <p/>
  31 + Região (xmin ymin xmax ymax): <input type="text" name="bbox" value="-180 -90 180 90" size="24"/>
  32 + <p/>
31 <span id="csw-hosts"></span> 33 <span id="csw-hosts"></span>
32 <select id="schema" name="schema"> 34 <select id="schema" name="schema">
33 <option value="http://www.opengis.net/cat/csw/2.0.2">csw:Record</option> 35 <option value="http://www.opengis.net/cat/csw/2.0.2">csw:Record</option>
@@ -46,7 +48,7 @@ @@ -46,7 +48,7 @@
46 <!--input type="hidden" name="schema" value="http://www.isotc211.org/2005/gmd"/--> 48 <!--input type="hidden" name="schema" value="http://www.isotc211.org/2005/gmd"/-->
47 <!--input type="hidden" name="displaymode" value="html"/--> 49 <!--input type="hidden" name="displaymode" value="html"/-->
48 <input type="button" value="limpar" onClick="javascript:void(csw_client.clearPage())"/> 50 <input type="button" value="limpar" onClick="javascript:void(csw_client.clearPage())"/>
49 - <input type="button" value="pesquisar" onClick="javascript:void(csw_client.getRecords())"/> 51 + <input type="button" value="pesquisar" onClick="javascript:void(csw_client.clearResposta());void(csw_client.getRecords())"/>
50 </form> 52 </form>
51 </div> 53 </div>
52 54
pacotes/cswclient/lib/scripts/cswclient.js
@@ -109,6 +109,16 @@ CSWClient.prototype.getRecords = function(start) @@ -109,6 +109,16 @@ CSWClient.prototype.getRecords = function(start)
109 109
110 var operator = document.theForm.operator.value; 110 var operator = document.theForm.operator.value;
111 var query = trim(document.theForm.query.value); 111 var query = trim(document.theForm.query.value);
  112 + var bbox = document.theForm.bbox.value;
  113 + if (bbox == ""){
  114 + var lowerCorner = "";
  115 + var upperCorner = ""
  116 + }
  117 + else{
  118 + bbox = bbox.split(" ");
  119 + var lowerCorner = bbox[1]+" "+bbox[0];
  120 + var upperCorner = bbox[3]+" "+bbox[2];
  121 + }
112 if (operator == "contains" & query != "") {query = "%" + query + "%";} 122 if (operator == "contains" & query != "") {query = "%" + query + "%";}
113 123
114 var schema = "http://www.opengis.net/cat/csw/2.0.2"; // force outputSchema always to csw:Record for GetRecords requests 124 var schema = "http://www.opengis.net/cat/csw/2.0.2"; // force outputSchema always to csw:Record for GetRecords requests
@@ -119,13 +129,16 @@ CSWClient.prototype.getRecords = function(start) @@ -119,13 +129,16 @@ CSWClient.prototype.getRecords = function(start)
119 this.setXpathValue(this.defaults_xml, "/defaults/startposition", start + ''); 129 this.setXpathValue(this.defaults_xml, "/defaults/startposition", start + '');
120 var sortby = document.theForm.sortby.value; 130 var sortby = document.theForm.sortby.value;
121 this.setXpathValue(this.defaults_xml, "/defaults/sortby", sortby + ''); 131 this.setXpathValue(this.defaults_xml, "/defaults/sortby", sortby + '');
122 - 132 + if (bbox != ""){
  133 + this.setXpathValue(this.defaults_xml, "/defaults/lowerCorner", lowerCorner + '');
  134 + this.setXpathValue(this.defaults_xml, "/defaults/upperCorner", upperCorner + '');
  135 +}
123 var processor = new XSLTProcessor(); 136 var processor = new XSLTProcessor();
124 processor.importStylesheet(this.getrecords_xsl); 137 processor.importStylesheet(this.getrecords_xsl);
125 138
126 var request_xml = processor.transformToDocument(this.defaults_xml); 139 var request_xml = processor.transformToDocument(this.defaults_xml);
127 var request = new XMLSerializer().serializeToString(request_xml); 140 var request = new XMLSerializer().serializeToString(request_xml);
128 - 141 + //alert(request);return;
129 csw_response = this.sendCSWRequest(request); 142 csw_response = this.sendCSWRequest(request);
130 var results = "<results><request start=\"" + start + "\""; 143 var results = "<results><request start=\"" + start + "\"";
131 results += " maxrecords=\""; 144 results += " maxrecords=\"";
@@ -227,7 +240,12 @@ CSWClient.prototype.setXpathValue = function(_a,_b,_c) @@ -227,7 +240,12 @@ CSWClient.prototype.setXpathValue = function(_a,_b,_c)
227 return false; 240 return false;
228 } 241 }
229 }; 242 };
230 - 243 +CSWClient.prototype.clearResposta = function()
  244 +{
  245 + var outputDiv = document.getElementById("csw-output");
  246 + outputDiv.innerHTML = "Aguarde...";
  247 + this.hideDiv(document.getElementById('popup'))
  248 +}
231 249
232 CSWClient.prototype.clearPage = function() 250 CSWClient.prototype.clearPage = function()
233 { 251 {
pacotes/cswclient/lib/xml/defaults.xml
@@ -4,11 +4,12 @@ @@ -4,11 +4,12 @@
4 <startposition>1</startposition> 4 <startposition>1</startposition>
5 <outputformat>application/xml</outputformat> 5 <outputformat>application/xml</outputformat>
6 <outputschema>http://www.opengis.net/cat/csw/2.0.2</outputschema> 6 <outputschema>http://www.opengis.net/cat/csw/2.0.2</outputschema>
7 -<!--outputschema>http://www.isotc211.org/2005/gmd</outputschema-->  
8 <resulttype>results</resulttype> 7 <resulttype>results</resulttype>
9 <propertyname>AnyText</propertyname> 8 <propertyname>AnyText</propertyname>
10 <literal></literal> 9 <literal></literal>
11 <sortby></sortby> 10 <sortby></sortby>
12 <sortorder>ASC</sortorder> 11 <sortorder>ASC</sortorder>
13 <id></id> 12 <id></id>
  13 +<lowerCorner></lowerCorner>
  14 +<upperCorner></upperCorner>
14 </defaults> 15 </defaults>
pacotes/cswclient/lib/xsl/getrecords.xsl
@@ -41,7 +41,21 @@ @@ -41,7 +41,21 @@
41 <xsl:if test="./literal !=''"> 41 <xsl:if test="./literal !=''">
42 <csw:Constraint version="1.1.0"> 42 <csw:Constraint version="1.1.0">
43 <ogc:Filter xmlns:ogc="http://www.opengis.net/ogc" xmlns="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"> 43 <ogc:Filter xmlns:ogc="http://www.opengis.net/ogc" xmlns="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml">
44 - <ogc:PropertyIsLike escape="\" singleChar="_" wildCard="%"> 44 + <ogc:And>
  45 + <xsl:if test="./lowerCorner !=''">
  46 + <ogc:Intersects>
  47 + <ogc:PropertyName>iso:BoundingBox</ogc:PropertyName>
  48 + <gml:Envelope xmlns:gml="http://www.opengis.net/gml">
  49 + <gml:lowerCorner>
  50 + <xsl:value-of select="./lowerCorner"/>
  51 + </gml:lowerCorner>
  52 + <gml:upperCorner>
  53 + <xsl:value-of select="./upperCorner"/>
  54 + </gml:upperCorner>
  55 + </gml:Envelope>
  56 + </ogc:Intersects>
  57 + </xsl:if>
  58 + <ogc:PropertyIsLike escape="\" singleChar="_" wildCard="%">
45 <ogc:PropertyName> 59 <ogc:PropertyName>
46 <xsl:value-of select="./propertyname"/> 60 <xsl:value-of select="./propertyname"/>
47 </ogc:PropertyName> 61 </ogc:PropertyName>
@@ -49,6 +63,7 @@ @@ -49,6 +63,7 @@
49 <xsl:value-of select="./literal"/> 63 <xsl:value-of select="./literal"/>
50 </ogc:Literal> 64 </ogc:Literal>
51 </ogc:PropertyIsLike> 65 </ogc:PropertyIsLike>
  66 + </ogc:And>
52 </ogc:Filter> 67 </ogc:Filter>
53 </csw:Constraint> 68 </csw:Constraint>
54 </xsl:if> 69 </xsl:if>