| 806 | | var g = new OpenLayers.Format.GML(); |
|---|
| 807 | | var outputGML = response.responseXML.getElementsByTagName("ComplexValue")[0].firstChild; |
|---|
| 808 | | var s = new XMLSerializer(); |
|---|
| 809 | | |
|---|
| 810 | | // Create div and textarea for output |
|---|
| 811 | | // print arrived GML |
|---|
| 812 | | div = document.createElement("div"); |
|---|
| 813 | | div.appendChild(document.createTextNode("Before import to OL:")); |
|---|
| 814 | | div.appendChild(document.createElement("br")); |
|---|
| 815 | | textarea = document.createElement("textarea"); |
|---|
| 816 | | textarea.cols = 50; |
|---|
| 817 | | textarea.rows = 20; |
|---|
| 818 | | div.appendChild(textarea); |
|---|
| 819 | | document.getElementsByTagName("body")[0].appendChild(div); |
|---|
| 820 | | textarea.innerHTML = s.serializeToString(outputGML); |
|---|
| 821 | | |
|---|
| 822 | | // get GML features |
|---|
| 823 | | var features = g.read(s.serializeToString(outputGML)); |
|---|
| 824 | | var title = this.describeProcessDocument.getElementsByTagName("Title")[0].firstChild.nodeValue; |
|---|
| 825 | | |
|---|
| 826 | | // add new layer, add features, redraw |
|---|
| 827 | | var processLayer = new OpenLayers.Layer.Vector(title+" (WPS)"); |
|---|
| 828 | | this.map.addLayer(processLayer); |
|---|
| 829 | | processLayer.addFeatures(features); |
|---|
| 830 | | processLayer.redraw(); |
|---|
| 831 | | |
|---|
| 832 | | // Create div and textarea for output, |
|---|
| 833 | | // convert all features to GML |
|---|
| 834 | | div = document.createElement("div"); |
|---|
| 835 | | div.appendChild(document.createTextNode("After import to OL:")); |
|---|
| 836 | | div.appendChild(document.createElement("br")); |
|---|
| 837 | | data = g.write(processLayer.features); |
|---|
| 838 | | textarea = document.createElement("textarea"); |
|---|
| 839 | | textarea.cols = 50; |
|---|
| 840 | | textarea.rows = 20; |
|---|
| 841 | | textarea.innerHTML = s.serializeToString(data); |
|---|
| 842 | | div.appendChild(textarea); |
|---|
| 843 | | document.getElementsByTagName("body")[0].appendChild(div); |
|---|
| | 804 | |
|---|
| | 805 | var outputs = response.responseXML.getElementsByTagName("Output"); |
|---|
| | 806 | |
|---|
| | 807 | for (var i = 0; i < outputs.length; i++) { |
|---|
| | 808 | |
|---|
| | 809 | var title = this.describeProcessDocument.getElementsByTagName("Title")[0].firstChild.nodeValue; |
|---|
| | 810 | title += ": "+outputs[i].getElementsByTagName("Title")[0].firstChild.nodeValue; |
|---|
| | 811 | |
|---|
| | 812 | /* |
|---|
| | 813 | * complexvalue reference output |
|---|
| | 814 | */ |
|---|
| | 815 | if (outputs[i].getElementsByTagName("ComplexValueReference").length > 0) { |
|---|
| | 816 | |
|---|
| | 817 | // add new layer, add features, redraw |
|---|
| | 818 | var processLayer = new OpenLayers.Layer.GML(title, |
|---|
| | 819 | outputs[i].getElementsByTagName("ComplexValueReference")[0].getAttribute("reference")); |
|---|
| | 820 | this.map.addLayer(processLayer); |
|---|
| | 821 | processLayer.redraw(); |
|---|
| | 822 | } |
|---|
| | 823 | /* |
|---|
| | 824 | * complexvalue output |
|---|
| | 825 | */ |
|---|
| | 826 | else if (outputs[i].getElementsByTagName("ComplexValue").length > 0) { |
|---|
| | 827 | var g = new OpenLayers.Format.GML(); |
|---|
| | 828 | var outputGML = outputs[i].getElementsByTagName("ComplexValue")[0].firstChild; |
|---|
| | 829 | |
|---|
| | 830 | // get GML features |
|---|
| | 831 | var features = g.parseFeature(outputGML); |
|---|
| | 832 | |
|---|
| | 833 | // add new layer, add features, redraw |
|---|
| | 834 | var processLayer = new OpenLayers.Layer.Vector(title); |
|---|
| | 835 | this.map.addLayer(processLayer); |
|---|
| | 836 | processLayer.addFeatures(features); |
|---|
| | 837 | processLayer.redraw(); |
|---|
| | 838 | } |
|---|
| | 839 | /* |
|---|
| | 840 | * literal output |
|---|
| | 841 | */ |
|---|
| | 842 | else if (outputs[i].getElementsByTagName("LiteralValue").length > 0) { |
|---|
| | 843 | var outDiv = OpenLayers.getElement("wpsLiteralOutput"); |
|---|
| | 844 | outDiv.appendChild( |
|---|
| | 845 | document.createTextNode( |
|---|
| | 846 | outputs[i].getElementsByTagName("LiteralValue")[0].firstChild.nodeValue)); |
|---|
| | 847 | } |
|---|
| | 848 | /* |
|---|
| | 849 | * bbox output |
|---|
| | 850 | */ |
|---|
| | 851 | else { |
|---|
| | 852 | } |
|---|
| | 853 | } |
|---|