[Mapbender-commits] r1103 - trunk/mapbender/http/php

svn_mapbender at osgeo.org svn_mapbender at osgeo.org
Thu Feb 8 10:27:32 EST 2007


Author: christoph
Date: 2007-02-08 10:27:23 -0500 (Thu, 08 Feb 2007)
New Revision: 1103

Modified:
   trunk/mapbender/http/php/mod_wfs_result.php
Log:
fixed bug with different gml syntax

Modified: trunk/mapbender/http/php/mod_wfs_result.php
===================================================================
--- trunk/mapbender/http/php/mod_wfs_result.php	2007-02-08 15:26:04 UTC (rev 1102)
+++ trunk/mapbender/http/php/mod_wfs_result.php	2007-02-08 15:27:23 UTC (rev 1103)
@@ -101,6 +101,7 @@
 $member = -1;
 $section = false;
 $geom = false;
+$memberHasBeenCreated = false;
 $str = array();
 $geomtype = array();
 $el = -1;
@@ -122,18 +123,29 @@
 		$geom = true;
 		if (sepNameSpace($element[tag]) == "MultiLineString") {
 			$geom_str .= "geom.addMember(geomTypeLine);\n";
+			$memberHasBeenCreated = true;
 		}
 		else if (sepNameSpace($element[tag]) == "MultiPolygon" ) {
 			$geom_str .= "geom.addMember(geomTypePolygon);\n";
+			$memberHasBeenCreated = true;
 		}
 		elseif (sepNameSpace($element[tag]) == "Point") {
 			$geom_str .= "geom.addMember(geomTypePoint);\n";
+			$memberHasBeenCreated = true;
 			$geom_str .= "geom.get(-1).addGeometry();\n";
 		}
 		elseif (sepNameSpace($element[tag]) == "LineString") {
+			if (!$memberHasBeenCreated) {
+				$geom_str .= "geom.addMember(geomTypeLine);\n";
+				$memberHasBeenCreated = true;
+			}
 			$geom_str .= "geom.get(-1).addGeometry();\n";
 		}
 		else if (sepNameSpace($element[tag]) == "Polygon" ) {
+			if (!$memberHasBeenCreated) {
+				$geom_str .= "geom.addMember(geomTypePolygon);\n";
+				$memberHasBeenCreated = true;
+			}
 			$geom_str .= "geom.get(-1).addGeometry();\n";
 		}
 		else {
@@ -155,6 +167,7 @@
 	}
 	else if(in_array(sepNameSpace($element[tag]),$geometries) && $element[type] == "close"){			
 		$geom = false;
+		$memberHasBeenCreated = false;
 	}
 	else if($section == true && $geom == false && $element[value]){
 		$el++;



More information about the Mapbender_commits mailing list