[OpenLayers-Commits] r5104 - in sandbox/context: examples lib/OpenLayers/Format

commits at openlayers.org commits at openlayers.org
Fri Nov 2 14:17:30 EDT 2007


Author: ominiverdi
Date: 2007-11-02 14:17:29 -0400 (Fri, 02 Nov 2007)
New Revision: 5104

Added:
   sandbox/context/examples/context-owc2.html
Modified:
   sandbox/context/lib/OpenLayers/Format/OWC.js
Log:
Context: posting baseLayer tentative tag maching
posted context example that show bug in OLON deserialization for WFS

Added: sandbox/context/examples/context-owc2.html
===================================================================
--- sandbox/context/examples/context-owc2.html	                        (rev 0)
+++ sandbox/context/examples/context-owc2.html	2007-11-02 18:17:29 UTC (rev 5104)
@@ -0,0 +1,146 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <style type="text/css">
+        #map {
+            width: 512px;
+            height: 512px;
+            border: 1px solid black;
+        }
+        #col {
+            position: absolute;
+            top: 1.75em;
+            left: 550px;
+        }
+        #output {
+            width: 512px;
+            height: 412px;
+        }
+    </style>
+	<!--
+	key ominiverdi.org : ABQIAAAAibqj4o_PdrlEKJTx1aS1rhQaMbevYlCUtCKKycs8Y2ERuqs33xSQtx5-h45tBR8NwxQB20DPyhtTvQ
+	key schaub: ABQIAAAAjpkAC9ePGem0lIq5XcMiuhR_wWLPFku8Ix9i2SXYRVK3e45q1BQUd_beF8dtzKET_EteAjPdGDwqpQ
+	-->
+    <script src='http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAibqj4o_PdrlEKJTx1aS1rhQaMbevYlCUtCKKycs8Y2ERuqs33xSQtx5-h45tBR8NwxQB20DPyhtTvQ'></script>
+    <script src="../lib/OpenLayers.js"></script>
+	<script src="../lib/OpenLayers/Format/OWC.js" type="text/javascript"></script>
+	<!-- patched version of WFS, overriding class -->
+	<script src="http://www.ominiverdi.org/openlayers/sandbox/openlayers/lib/OpenLayers/Layer/WFS.js" type="text/javascript"></script>
+    
+	<script type="text/javascript">
+        var lon = 5;
+        var lat = 40;
+        var zoom = 5;
+        var map, layer, graphic;
+
+        function init(){
+            OpenLayers.ProxyHost="/cgi-bin/proxy.cgi?url=";
+            map = new OpenLayers.Map('map');
+
+            map.addControl(new OpenLayers.Control.LayerSwitcher());
+        }
+        
+        var olon = new OpenLayers.Format.OLON();
+		var owc = new OpenLayers.Format.OWC();
+        var doc = null;
+		var ows_url =  "http://www.ogcnetwork.net/schemas/owc/0.2.1/owsContext.xml";
+		//var ows_url = "http://devgeo.cciw.ca/ms_tmp/owsContext-test.xml";
+		
+        function serialize() {
+            var str = olon.write(map, true);
+            var element = document.getElementById('output');
+            element.value = str;
+        }
+        function clear() {
+			
+            for(var i=map.layers.length-1; i>=0; --i) {
+                map.layers[i].destroy();
+            }
+			map.projection="";
+        }
+		var myObj;
+		
+        function deserialize() {
+            clear();
+            var element = document.getElementById('output');
+            var str = element.value;
+            var obj = olon.read(str);
+			
+			if(obj.projection){
+				map.projection = obj.projection;
+			}
+			
+			
+			console.log('proj: '+obj.projection + ' '+ map.projection);
+			
+            map.addLayers(obj.layers);
+			
+				//map.bounds = obj.bounds;
+				
+				map.zoomToExtent(obj.bounds);
+			
+			if(obj.resolution && obj.center) {
+                //zoom = map.getZoomForResolution(obj.resolution, true);
+                //map.setCenter(obj.center, zoom);
+            }
+			myObj = obj;
+                
+        }
+		
+		
+		function owswrite(){
+			var dom_str = owc.write(map);
+			updateStatus(dom_str);
+		}
+		function owsread() {
+            
+            //OpenLayers.loadURL(ows_url, null, null, loadSuccess, loadFailure);
+			var owc_str = owc.read(getStatus());
+            updateStatus(owc_str);
+        }
+        
+        
+		function updateStatus(msg) {
+			var element = document.getElementById('output');
+            element.value = msg;
+		}
+		function getStatus() {
+			var element = document.getElementById('output');
+            return element.value;
+		}
+		
+		function owsshow() {
+            
+            OpenLayers.loadURL(ows_url, null, null, loadSuccess, loadFailure);
+        }
+        
+        function loadSuccess(request) {
+            updateStatus("loaded");
+			var owc_str = request.responseText;
+            updateStatus(owc_str);
+			
+        }
+        
+        function loadFailure(request) {
+            updateStatus("failed to load");
+        }
+    </script>
+	<title>OpenLayers Context with OWS Context 0.2.1</title>
+  </head>
+  <body onload="init()">
+    <h3>OpenLayers Context with OWS Context 0.2.1</h3>
+    <div id="map"></div>
+    <div id="col">
+    	<ul>
+    		<li><a href="javascript: void owsshow();">load OWS Context (OWC)</a></li>
+    		<li><a href="javascript: void owsread();"> OWC -> OpenLayers (OLON)</a></li>
+    		<li><a href="javascript: void deserialize();">apply OLON to map</a></li>
+    		<li><a href="javascript: void clear();">clear map</a></li>
+    	</ul>
+        
+      <!--  <a href="javascript: void owswrite();">OLON -> OWS </a> <br />
+        <a href="javascript: void serialize();">serialize OLON</a> |-->
+         
+        <textarea id="output"></textarea>
+    </div>
+  </body>
+</html>

Modified: sandbox/context/lib/OpenLayers/Format/OWC.js
===================================================================
--- sandbox/context/lib/OpenLayers/Format/OWC.js	2007-11-02 12:08:36 UTC (rev 5103)
+++ sandbox/context/lib/OpenLayers/Format/OWC.js	2007-11-02 18:17:29 UTC (rev 5104)
@@ -146,13 +146,19 @@
 			//Get Output Format
 			var outFormat = this.concatChildValues(this.findChildByName(layer,'ows:OutputFormat'));
 			
+			//Get Base Layers
+			//<osgwm:LayerType>baselayer</osgwm:LayerType>
+			var layerType = this.findChildByName(layer,'osgwm:LayerType');
+			var layerTypeValue = null;
+			if(layerType) var layerTypeValue = this.concatChildValues(layerType);
+			 
 			
-			
 			//built layer structure
 			layer = {};
 			layer.CLASS_NAME = "OpenLayers.Layer.WMS";
 			layer.name =  title;
             layer.url =  url;
+			if(layerTypeValue && layerTypeValue == 'baselayer') layer.isBaseLayer = true;
             layer.params = {}; 
 			layer.params.LAYERS = name;
 			layer.params.FORMAT = outFormat;//'image/png';
@@ -218,6 +224,17 @@
 			if(layer.name=='roads')OLContext.layers.push(layer);
 			
 		}
+		
+		/*
+		 * EXTENSIONS
+		 */
+		
+			//GOOGLE EXTENSION
+		
+		/*
+		 * EXTENSIONS END
+		 */
+		
 		console.log(OLContext);
 		//OUTPUT
 		console.log('out');



More information about the Commits mailing list