[Mapbender-commits] r3238 - branches/beck_dev_25/http/gazetteer_rostock

svn_mapbender at osgeo.org svn_mapbender at osgeo.org
Thu Nov 13 04:15:43 EST 2008


Author: beck
Date: 2008-11-13 04:15:43 -0500 (Thu, 13 Nov 2008)
New Revision: 3238

Added:
   branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_client.js
   branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_client.php
   branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_server.php
   branches/beck_dev_25/http/gazetteer_rostock/mod_WFSStreetGaz_client.js
   branches/beck_dev_25/http/gazetteer_rostock/mod_WFSStreetGaz_client.php
   branches/beck_dev_25/http/gazetteer_rostock/mod_WFSStreetGaz_server.php
Log:


Added: branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_client.js
===================================================================
--- branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_client.js	                        (rev 0)
+++ branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_client.js	2008-11-13 09:15:43 UTC (rev 3238)
@@ -0,0 +1,459 @@
+  /**
+ * jquery function to create search form html elements
+ *
+ */
+
+$(document).ready(function(){
+
+	$("<form />").attr({"id":"searchForm1","method":"post","action":"mod_WFSGazetteer_client.php?"+getParamsForm}).appendTo("#"+e_id);
+   	$("#searchForm1").submit( function() {
+   		//try {if(startSearch()){}}catch(e) {console.log(e);}
+   		startSearch();
+   		return false; 
+	} );
+	
+	//$("<div/>").attr({"id":"div1"}).appendTo("#searchForm1");
+	//$("<input type='button'>").attr({"id":"buttonNew","value":"Neue Suche"}).appendTo("#div1");
+	//$("#buttonNew").click( function() { clearSearch();});
+	
+		
+   	//table structure
+   	$("<table/>").attr({"id":"table1","border":"0","cellpadding":"0","cellspacing":"0"}).appendTo("#searchForm1");
+   	$("<tr/>").attr({"id":"tr1"}).appendTo("#table1");
+   	$("<tr/>").attr({"id":"tr2"}).appendTo("#table1");
+   	$("<tr/>").attr({"id":"trLabel"}).appendTo("#table1");
+   	$("<tr/>").attr({"id":"tr3"}).appendTo("#table1");
+   	//$("<tr/>").attr({"id":"tr4"}).appendTo("#table1");
+   	$("<td/>").attr({"id":"td1"}).appendTo("#tr1");
+   	$("<td/>").attr({"id":"td2"}).appendTo("#tr1");
+   	$("<td/>").attr({"id":"td2b"}).appendTo("#tr1");
+   	$("<td/>").attr({"id":"td3"}).appendTo("#tr2");
+   	$("<td/>").attr({"id":"td4"}).appendTo("#tr2");
+   	$("<td/>").attr({"id":"td4b"}).appendTo("#tr2");
+   	
+   	//$("<td/>").attr({"id":"td5"}).appendTo("#tr3");
+   	//$("<td/>").attr({"id":"td5b","colspan":"2"}).appendTo("#tr3");
+   	
+   	$("<table/>").attr({"id":"table2","border":"0"}).appendTo("#searchForm1");
+   	$("<tr/>").attr({"id":"tr1Table2"}).appendTo("#table2");
+   	$("<tr/>").attr({"id":"tr2Table2"}).appendTo("#table2");
+   	$("<td/>").attr({"id":"tdLabel2"}).appendTo("#tr1Table2");
+   	$("<td/>").attr({"id":"tdLabel3"}).appendTo("#tr1Table2");
+   	$("<td/>").attr({"id":"tdLabel4"}).appendTo("#tr1Table2");
+   	$("<td/>").attr({"id":"tdLabel5"}).appendTo("#tr1Table2");
+   	$("<td/>").attr({"id":"td6a"}).appendTo("#tr2Table2");
+   	$("<td/>").attr({"id":"td6c"}).appendTo("#tr2Table2");
+   	$("<td/>").attr({"id":"td6e"}).appendTo("#tr2Table2");
+   	$("<td/>").attr({"id":"td6f"}).appendTo("#tr2Table2");
+   	$("<td/>").attr({"id":"td6g"}).appendTo("#tr2Table2");
+   	
+   	$("<table/>").attr({"id":"table3","border":"0"}).appendTo("#searchForm1");
+   	$("<tr/>").attr({"id":"tr4"}).appendTo("#table3");
+   	$("<td/>").attr({"id":"td7"}).appendTo("#tr4");
+   	$("<td/>").attr({"id":"td8"}).appendTo("#tr4");
+   	$("<td/>").attr({"id":"td8b"}).appendTo("#tr4");
+   	
+   	//button ok for  gemarkung and flurstck
+   	$("<input type='submit'>").attr({"id":"input9","value":"ok"}).appendTo("#td4b");
+   	$("<input type='submit'>").attr({"id":"input10","value":"ok"}).appendTo("#td6g");
+   	$("#input9").css({"position":"relative"});
+   	$("#input10").css({"position":"relative"});
+   	//default: buttons hidden
+   	$("#input9").css({"left":"-800"});
+	$("#input10").css({"left":"-800"});
+	
+   	//text fields
+   	$("<input type='text'>").attr({"id":"input2","size":"15"}).appendTo("#td4");
+   	$("#input2").click( function() { 
+		//clearGemFlur() loescht nur Gem. und Flurfelder, Zaehler/Nenner bleibt stehen;  
+		//austauschen mit clearSearch(), wenn Suche bei Klick komplett reseted werden soll 
+		//clearGemFlur(); 
+		clearSearch();
+		$("#input9").css({"left":"0"});
+		$("#input10").css({"left":"-800"});
+		
+	 } );
+   	
+   	$("<input type='text'>").attr({"id":"input3","size":"6"}).appendTo("#td6a");
+   	$("#input3").focus( function() { 
+		$("#input10").css({"left":"0"});
+		$("#input9").css({"left":"-800"});
+	 } );
+	 
+   	$("<input type='text'>").attr({"id":"input4","size":"3"}).appendTo("#td6c");
+   	$("<input type='text'>").attr({"id":"input5","size":"5"}).appendTo("#td6e");
+   	$("<input type='text'>").attr({"id":"input6","size":"3"}).appendTo("#td6f");
+   	
+   	$("#input4").keyup( function() { nextTab($("#input4"),3,$("#input5")); } );
+   	$("#input5").keyup( function() { nextTab($("#input5"),5,$("#input6")); } );
+   	$("#input6").keyup( function() { nextTab($("#input6"),3,$("#input11")); } );
+   	
+   	//Field texts
+   	$("#td1").html("Kreis:");
+   	$("#td3").html("Gemarkung:");
+   	//$("#td5").html("Flstkennz.:");
+   	$("#td7").html("Treffer:");
+   	$("#tdLabel2").html("Gem.");
+   	$("#tdLabel3").html("Flur");
+   	$("#tdLabel4").html("Z&auml;hler/");
+   	$("#tdLabel5").html("Nenner");
+  	
+   	//select box for selection of wfs
+   	$("#td2").append("<select id='select1' name='select1'/>");
+   	$("#select1").change( function() { 
+           $("#input2").focus();
+           selectedVal = $("#select1 option[@selected]").val();
+    } );
+   	var optionName = optionHtml.split(",");
+   	for(var i=1; i<=optionCount; i++){
+   		$("<option/>").attr({"id":"option"+i,value:i}).appendTo("#select1").html(optionName[i-1]);
+   	}
+   	$("#select1 > option:first").attr('selected', 'selected');
+   	
+   	//Block fuer STYLE CSS ##################################################	
+	$("td").css('padding-left', '1px');
+	$("td").css('padding-right', '1px');
+	$("td").css('color', 'gray');
+	$("td").css('font-size', '11px'); 
+	
+	$("#td1").css('font-weight','bold');
+	$("#td3").css('font-weight','bold');
+	$("#td7").css('font-weight','bold');
+	//Ende Block fuer STYLE CSS #############################################
+
+ });
+
+  /**
+ * function to start search 
+ *
+ */
+ 
+function startSearch(){
+	//if($("#input10").get()!=''){
+	if($("#input3").val()!='' && $("#input4").val()!='' && $("#input5").val()!=''){
+		propertyName[0] = propertyNameString4;
+		propertyName[1] = propertyNameString5;
+		propertyName[2] = propertyNameString6;
+   		var searchString1 = $("#input5").val().replace (/^\s+/, '').replace (/\s+$/, '');
+   		var searchString2 = $("#input6").val().replace (/^\s+/, '').replace (/\s+$/, '');
+   		var sizeOfSearchString1 = searchString1.length;
+   		var sizeOfSearchString2 = searchString2.length;
+   		
+   		if(sizeOfSearchString1==5){
+   			searchString1 = searchString1;
+   		}
+   		else{
+   			var numberOfFillIns1 = 5-sizeOfSearchString1;
+   			searchString1 = FillUpArray[numberOfFillIns1]+searchString1;
+   		}
+   		
+   		if(sizeOfSearchString2==3){
+   			searchString2 = searchString2;
+   		}
+   		else{
+   			var numberOfFillIns2 = 3-sizeOfSearchString2;
+   			searchString2 = FillUpArray[numberOfFillIns2]+searchString2;
+   		}
+   		var searchString4 = $("#input4").val().replace (/^\s+/, '').replace (/\s+$/, '');
+   		var sizeOfSearchString4 = searchString4.length;
+   		if(sizeOfSearchString4==3){
+   			searchString4 = searchString4;
+   		}
+   		else{
+   			var numberOfFillIns2 = 3-sizeOfSearchString4;
+   			searchString4 = FillUpArray[numberOfFillIns2]+searchString4;
+   		}
+   		
+   		searchValue[0] = $("#input3").val()+"-"+searchString4;
+   		searchValue[1] = searchString1;
+   		searchValue[2] = searchString2;
+   		$("#input4").val(searchString4);
+   		$("#input5").val(searchString1);
+   		$("#input6").val(searchString2);	
+   		validate(propertyName,searchValue,wfsSearch3[selectedVal],shortName[2]);
+	}
+	else{
+		$("#td8").empty();
+		var searchString = $("#input2").val().replace (/^\s+/, '').replace (/\s+$/, '');
+		searchValue[0] = searchString;
+		propertyName[0] = propertyNameString0;
+		
+		//workaround Rostock, bis es f�r jeden Kreis eigene WFS gibt ##############
+//		var newPropertyName = [];
+//		newPropertyName[0] = propertyName[0];
+//		newPropertyName[1] = propertyNameString4;
+//		var selectedGem = [];
+//		selectedGem[1] = "Rostock";
+//		selectedGem[2] = "Doberan";
+//		selectedGem[3] = "G�strow";  
+//		searchValue[1] = selectedGem[selectedVal];
+//		validate(newPropertyName,searchValue,wfsSearch1[1],shortName[0]);
+		// Ende Workaround #####################
+		
+		//untenstehende Zeile wieder einkommentieren, wenn Workaround nicht mehr ben�tigt wird
+		validate(propertyName,searchValue,wfsSearch1[selectedVal],shortName[0]);
+	}
+}
+
+
+
+
+function clearSearch(){
+	//$("#select1 > option:first").attr('selected', 'selected');
+	$("#input2").val("");
+	$("#input3").val("");
+	$("#input4").val("");
+	$("#input5").val("");
+	$("#input6").val("");
+	$("#td8").empty();
+	propertyName = [];
+	searchValue = [];
+	//newPropertyName raus, wenn Workaround siehe oben nicht mehr benutzt wird
+	//newPropertyName = [];
+	$("#input9").css({"left":"-800"});
+	$("#input10").css({"left":"-800"});
+}
+
+function clearGemFlur(){
+	$("#input2").val("");
+	$("#input3").val("");
+	$("#input4").val("");
+	$("#td8").empty();
+	propertyName = [];
+	searchValue = [];
+	//newPropertyName raus, wenn Workaround siehe oben nicht mehr benutzt wird
+	//newPropertyName = [];
+	$("#input9").css({"left":"-800"});
+	$("#input10").css({"left":"-800"});
+}
+
+function normalize(str){
+	//console.log("string vor replace = %s",str);
+	str = str.toUpperCase();
+    str = str.replace(/ß/g,'SS');
+    str = str.replace(/Ä/g,'AE');
+    str = str.replace(/Ö/g,'OE');
+    str = str.replace(/Ü/g,'UE');
+    return str;
+} 
+
+ /**
+ * sets focus from one input field to the next one
+ *
+ * [@param {jquery element} first current focused input
+ * [@param {integer} fLength max possible length 
+ * [@param {jquery element} next next input to focus 
+ */
+function nextTab(first,fLength,next){
+	if (first.val().length==fLength){
+		next.focus();
+	}
+}
+
+ /**
+ * fills Gemarkung search result in field, button and input handling and event for button 
+ *
+ * [@param {string} resultFill transfer search value
+ */
+ 
+ function transferGemResult(resultFillName,resultFillNumber){
+ 	$("#input2").attr({"value":""+resultFillName+""});
+	$("#input3").attr({"value":""+resultFillNumber+""});
+	//$("#td6g").empty();
+	$("#input9").css({"left":"-800"});
+	//$("#input2").attr({"disabled":"disabled"});
+	//$("#input3").attr({"disabled":"disabled"});
+	$("#input4").focus();
+	
+	propertyName[0] = propertyNameString4;
+	searchValue[0] = $("#input3").val().replace (/^\s+/, '').replace (/\s+$/, '');
+		
+	validate(propertyName,searchValue,wfsSearch2[selectedVal],shortName[1]);
+	
+}
+
+/**
+ * fills Flur search result in field, button handling and event for button 
+ *
+ * [@param {string} resultFill transfer search value
+ */
+ 
+function transferFlurResult(resultFill){
+	var searchResult = resultFill;
+	$("#input10").css({"left":"0"});
+	$("#input4").attr({"value":""+searchResult+""});
+	//$("#td6g").empty();
+	//$("#input4").attr({"disabled":"disabled"});
+	$("#input5").focus();
+	$("#td8").empty();
+	//$("<input type='submit'>").attr({"id":"input10","value":"ok"}).appendTo("#td6g");
+	
+}
+
+
+
+/**
+ * creates wfs search request and shows search results in div tags
+ *
+ * [@param {array} propertyName array with all propertyNames for search
+ * [@param {array} searchValue array with all searchstrings for search
+ * [@param {string} wfsUrl URL of WFS
+ * [@param {string} searchAbbr string containing abbreviation defining step of search
+ */
+ 
+ function validate(propertyName,searchValue,wfsUrl,searchAbbr){
+ 	if(geomArray.count()>0){
+ 		geomArray.empty();
+ 	}
+ 	global_resultHighlight = new Highlight(targetArray, "wfsGazetteerHighlight", {"position":"absolute", "top":"0px", "left":"0px", "z-index":100}, 2);
+	mb_registerSubFunctions("global_resultHighlight.paint()");
+	var filterParameterCount = propertyName.length;
+	if(filterParameterCount == 0){
+		return false;
+	}
+	else{
+		var andConditions = "";
+		for (var i = 0; i < propertyName.length; i++) {
+			andConditions += "<ogc:PropertyIsLike wildCard='*' singleChar='.' escape='!'>";
+			andConditions += "<ogc:PropertyName>" + propertyName[i] + "</ogc:PropertyName>";
+			andConditions += "<ogc:Literal>";
+			if(searchValue[i]=="*"){
+				andConditions +="";
+			}
+			else{
+				andConditions += normalize(searchValue[i]);
+				//andConditions += searchValue[i];
+			}
+			andConditions += "*</ogc:Literal>";
+			andConditions += "</ogc:PropertyIsLike>";
+		}
+		if (filterParameterCount > 1) {
+			andConditions = "<And>" + andConditions + "</And>";
+		}
+		
+		var requestUrl = wfsUrl;	
+		requestUrl += "&filter=";
+		var filter = "<ogc:Filter xmlns:ogc='http://ogc.org' xmlns:gml='http://www.opengis.net/gml'>"+andConditions+"</ogc:Filter>";
+	}
+	$("#td8").empty();
+	$("<img>").attr({"id":"wheelImg","src":"../img/indicator_wheel.gif"}).appendTo("#td8");
+	$("<span>").attr({"id":"searchDiv"}).appendTo("#td8").html(" Suche...");
+	
+	var parameters = {command:"getSearchResults", "url":requestUrl, "filter":filter};
+	parent.mb_ajax_post("../gazetteer_rostock/mod_WFSGazetteer_server.php", parameters, function (jsCode, status) {
+		$("#td8").empty();
+		var geoObj = eval('(' + jsCode + ')');	
+   		if (jsCode) {	
+			if (typeof(geoObj) == 'object') {
+				geomArray.importGeoJSON(geoObj);
+				$("#td8").empty();
+				for (var i=0; i < geomArray.count(); i++) {
+					if(searchAbbr==shortName[0]){
+						(function () {
+							var geomStr = searchAbbr + i;
+							var geomIndex = i;
+							$("<div>").attr({"id":searchAbbr+i}).appendTo("#td8");
+							$("#"+geomStr).text(geomArray.get(i).e.getElementValueByName(resultValue1));
+							$("#"+geomStr).css({"cursor":"pointer"});
+							$("#"+geomStr).mouseover( function() { setResult('over', geomIndex);});
+							$("#"+geomStr).mouseout( function() { setResult('out', geomIndex);});
+							$("#"+geomStr).click( function() { setResult('click', geomIndex);transferGemResult($("#"+geomStr).text(),geomArray.get(geomIndex).e.getElementValueByName(resultValue0));});
+						})();
+					}
+					else if (searchAbbr==shortName[1]){
+						(function () {
+							var geomStr = searchAbbr + i;
+							var geomIndex = i;
+							$("<div>").attr({"id":searchAbbr+i}).appendTo("#td8");
+							$("#"+geomStr).text(geomArray.get(i).e.getElementValueByName(resultValue2));
+							$("#"+geomStr).css({"cursor":"pointer"});
+							$("#"+geomStr).mouseover( function() { setResult('over', geomIndex);});
+							$("#"+geomStr).mouseout( function() { setResult('out', geomIndex);});
+							$("#"+geomStr).click( function() { setResult('click', geomIndex);transferFlurResult(geomArray.get(geomIndex).e.getElementValueByName(resultValue2));});
+						})();	
+					}
+					else if (searchAbbr==shortName[2]){
+						(function () {
+							var geomStr = searchAbbr + i;
+							var geomIndex = i;
+							$("<div>").attr({"id":searchAbbr+i}).appendTo("#td8");
+							$("#"+geomStr).text(geomArray.get(i).e.getElementValueByName(resultValue3));
+							$("#"+geomStr).css({"cursor":"pointer"});
+							$("#"+geomStr).mouseover( function() { setResult('over', geomIndex);});
+							$("#"+geomStr).mouseout( function() { setResult('out', geomIndex);});
+							$("#"+geomStr).click( function() {  setResult('click', geomIndex);});
+						})();	
+					}
+				}
+				if(geomArray.count()==0){
+					$("#td8").empty();
+					$("<div>").attr({"id":"noResult"}).appendTo("#td8");
+					selectedOption = $("#select1 option[@selected]").text();
+					if(searchAbbr==shortName[0]){
+						$("#noResult").text(noResultText[0]+selectedOption);
+						$("#input9").css({"left":"0"});
+						$("#td6g").empty();
+					}
+					if(searchAbbr==shortName[1]){
+						$("#noResult").text(noResultText[1]+selectedOption);
+					}
+					if(searchAbbr==shortName[2]){
+						$("#noResult").text(noResultText[2]+selectedOption);
+					}
+				}
+			}
+			else {
+				$("#td8").empty();
+				$("<div>").attr({"id":"noResult"}).appendTo("#td8");
+				selectedOption = $("#select1 option[@selected]").text();
+				if(searchAbbr==shortName[0]){
+					$("#noResult").text(noResultText[0]+selectedOption);
+					$("#input9").css({"left":"0"});
+					$("#td6g").empty();
+				}
+				if(searchAbbr==shortName[1]){
+					$("#noResult").text(noResultText[1]+selectedOption);
+				}
+				if(searchAbbr==shortName[2]){
+					$("#noResult").text(noResultText[2]+selectedOption);
+				}
+			}
+		}
+		else {
+			alert("No results.");
+		}
+	});
+}
+ 
+ /**
+ * gets a javascript event and the index of the geometry array; highlights the current geom element and 
+ * sets bbox for zooming
+ *
+ * [@param {string} event (over || out || click)
+ * [@param {integer} i index of geometry array
+ */
+
+function setResult(event,i){
+	var cw_fillcolor = "#cc33cc";
+	var currentGeom = geomArray.get(i);
+	
+	if (event == "over") {
+		global_resultHighlight.add(currentGeom, cw_fillcolor);
+		global_resultHighlight.paint();
+	}
+	else if (event == "out"){
+		global_resultHighlight.del(currentGeom, cw_fillcolor);
+		global_resultHighlight.paint();
+	}
+	else if (event == "click"){
+		global_resultHighlight.del(currentGeom, cw_fillcolor);
+		var bbox = currentGeom.getBBox();
+		var buffer = new Point(1,1);
+		bbox[0] = bbox[0].minus(buffer);
+		bbox[1] = bbox[1].plus(buffer);
+		mb_calculateExtent(targetArray[0], bbox[0].x, bbox[0].y, bbox[1].x, bbox[1].y);
+		zoom(targetArray[0], 'true', 1.0);
+		global_resultHighlight.add(currentGeom, cw_fillcolor);
+		global_resultHighlight.paint();
+	}
+}
\ No newline at end of file


Property changes on: branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_client.js
___________________________________________________________________
Name: svn:executable
   + *

Added: branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_client.php
===================================================================
--- branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_client.php	                        (rev 0)
+++ branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_client.php	2008-11-13 09:15:43 UTC (rev 3238)
@@ -0,0 +1,90 @@
+<?php
+#$Id: mod_WFSGazetteer_client.php 2008 2008-03-05 11:44:45Z verenadiewald $
+# Copyright (C) 2002 CCGIS 
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+require_once(dirname(__FILE__)."/../php/mb_validateSession.php");
+require_once(dirname(__FILE__)."/../classes/class_mb_exception.php");
+
+echo "var getParamsForm = '".SID."&gui_id=".$gui_id."&e_id=".$e_id."';";
+
+echo "var e_id = '".$e_id."';";
+echo "var resultGeom = '';";
+echo "var geomArray = new GeometryArray();";
+//number of select options
+echo "var optionCount = 4;";
+//comma-separated list of names of select options
+echo "var optionHtml = 'Rostock-Stadt,Doberan,G&uuml;strow,Nordvorpommern';";
+//default selected value of options list
+echo "var selectedVal = 1;";
+
+echo "var wfsSearch1 = [];";
+echo "wfsSearch1[1] = 'http://kataster.sv.rostock.de/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:gemarkung_simple';";
+echo "wfsSearch1[2] = 'http://kataster1.sv.rostock.de/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:gemarkung_simple';";
+echo "wfsSearch1[3] = 'http://kataster.sv.rostock.de/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:gemarkung';";
+echo "wfsSearch1[4] = 'http://geoportal.lk-nvp.de/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=nvp:gemarkung';";
+
+echo "var wfsSearch2 = [];";
+echo "wfsSearch2[1] = 'http://kataster.sv.rostock.de/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:fluren_simple';";
+echo "wfsSearch2[2] = 'http://kataster1.sv.rostock.de/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:fluren';";
+echo "wfsSearch2[3] = 'http://kataster.sv.rostock.de/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:fluren';";
+echo "wfsSearch2[4] = 'http://geoportal.lk-nvp.de/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=nvp:gd_lk_fluren';";
+
+echo "var wfsSearch3 = [];";
+echo "wfsSearch3[1] = 'http://kataster.sv.rostock.de/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:flurstuecke';";
+echo "wfsSearch3[2] = 'http://kataster1.sv.rostock.de/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:flurstuecke';";
+echo "wfsSearch3[3] = 'http://kataster.sv.rostock.de/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:flurstuecke';";
+echo "wfsSearch3[4] = 'http://geoportal.lk-nvp.de/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=nvp:flurstuecke';";
+
+echo "var propertyName = [];";
+#echo "propertyNameString0 = 'hro:gemarkungsname_kurz';";
+echo "propertyNameString0 = 'gemarkungsname_knorm';";
+echo "propertyNameString1 = 'flur';";
+echo "propertyNameString4 = 'parentidentifier';";
+echo "propertyNameString2 = 'flurstueck';";
+echo "propertyNameString5 = 'zaehler';";
+echo "propertyNameString6 = 'nenner';";
+
+echo "var searchValue = [];";
+
+echo "var resultValue1='gemarkungsname_kurz';";
+echo "var resultValue0='geographicidentifier';";
+echo "var resultValue2='flur';";
+echo "var resultValue3='flurstueck';";
+
+echo "var shortName = [];";
+echo "shortName[0] = 'gem';";
+echo "shortName[1] = 'flur';";
+echo "shortName[2] = 'flurst';";
+
+echo "var noResultText = [];";
+echo "noResultText[0] = 'Keine Gemarkung gefunden in ';";
+echo "noResultText[1] = 'Keine Flur gefunden in ';";
+echo "noResultText[2] = 'Kein Flurstück gefunden in ';";
+
+echo "var targetString = '" . implode(",", $e_target) . "';";
+echo "var targetArray = targetString.split(',');";
+
+echo "var FillUpArray = [];";
+echo "FillUpArray[0] = '000';";
+echo "FillUpArray[1] = '0';";
+echo "FillUpArray[2] = '00';";
+echo "FillUpArray[3] = '000';";
+echo "FillUpArray[4] = '0000';";
+
+include (dirname(__FILE__)."/../gazetteer_rostock/mod_WFSGazetteer_client.js");
+
+?>
\ No newline at end of file

Added: branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_server.php
===================================================================
--- branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_server.php	                        (rev 0)
+++ branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_server.php	2008-11-13 09:15:43 UTC (rev 3238)
@@ -0,0 +1,69 @@
+<?php
+# $Id: mod_wfsrequest.php 1008 2007-01-16 11:26:56Z christoph $
+# http://www.mapbender.org/index.php/Administration
+# Copyright (C) 2002 CCGIS 
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+session_start();
+
+require_once(dirname(__FILE__)."/../../conf/mapbender.conf");
+include(dirname(__FILE__)."/../classes/class_gml2.php");
+require_once(dirname(__FILE__)."/../extensions/JSON.php");
+require_once(dirname(__FILE__)."/../classes/class_administration.php");
+require_once(dirname(__FILE__)."/../classes/class_mb_exception.php");
+
+$con = db_connect($DBSERVER,$OWNER,$PW);
+db_select_db($DB,$con);
+
+$command = $_REQUEST["command"];
+
+if ($command == "getSearchResults") {
+	$filter = $_REQUEST["filter"];
+	$url = $_REQUEST["url"];
+
+	$admin = new administration();
+		
+	$req = urldecode($url).urlencode($admin->char_decode(stripslashes($filter)));
+	$mygml = new gml2();
+	
+	//	$mygml->parsegml($req);
+//	
+//	// generates JavaScript code that will add a geometry array containing
+//	// all the result geometries 
+//	
+//	$js = "";
+//	if ($mygml->getMemberCount() > 0) {
+//		
+//	$js .= $mygml->exportGeometriesToJS(true);
+//	
+//		for ($i = 0; $i < $mygml->getMemberCount(); $i++) {
+//			for ($j = 0; $j < count($mygml->keys[$i]); $j++) {
+//				$key = $mygml->sepNameSpace($mygml->keys[$i][$j]);
+//				$js .= "geom.get(".$i.").e.setElement('".$key."', '".$mygml->getValueBySeparatedKey($i, $key) . "');\n";
+//			}
+//		}
+//	}
+//	echo $js;
+
+	$mygml->parseFile($req);
+	
+	header("Content-type:application/x-json; charset=utf-8");
+	echo $mygml->toGeoJSON();
+}
+else {
+	echo "please enter a valid command.";
+}
+?>
\ No newline at end of file


Property changes on: branches/beck_dev_25/http/gazetteer_rostock/mod_WFSGazetteer_server.php
___________________________________________________________________
Name: svn:executable
   + *

Added: branches/beck_dev_25/http/gazetteer_rostock/mod_WFSStreetGaz_client.js
===================================================================
--- branches/beck_dev_25/http/gazetteer_rostock/mod_WFSStreetGaz_client.js	                        (rev 0)
+++ branches/beck_dev_25/http/gazetteer_rostock/mod_WFSStreetGaz_client.js	2008-11-13 09:15:43 UTC (rev 3238)
@@ -0,0 +1,623 @@
+  /**
+ * jquery function to create search form html elements
+ *
+ */
+ eventInit.register(function() {
+ 	global_resultHighlight1 = new Highlight(targetArray2, "wfsGazetteerHighlight1", {"position":"absolute", "top":"0px", "left":"0px", "z-index":100}, 4);
+ 	global_resultHighlight2 = new Highlight(targetArray3, "wfsGazetteerHighlight2", {"position":"absolute", "top":"0px", "left":"0px", "z-index":100}, 4);
+	mb_registerSubFunctions("global_resultHighlight1.paint()");
+	mb_registerSubFunctions("global_resultHighlight2.paint()");
+ });
+ 
+var formSubmitted = false;
+
+$(document).ready(function(){
+	$("<form>").attr({"id":"searchFormStreet","method":"post","action":"mod_WFSStreetGaz_client.php?"+getParamsForm2}).appendTo("#"+e_id2);
+  	$("#searchFormStreet").submit( function() {
+   		//try {if(startSearch2()){}}catch(e) {console.log(e);}
+		formSubmitted = true;
+   		startSearch2();
+   		return false; 
+	} );
+			
+   	//table structure
+   	$("<table>").attr({"id":"tableStreet","border":"0","cellpadding":"0","cellspacing":"0"}).appendTo("#searchFormStreet");
+	$("#tableStreet").css({"margin":"0"});
+
+   	$("<tr>").attr({"id":"tr_a"}).appendTo("#tableStreet");
+   	$("<tr>").attr({"id":"tr_b"}).appendTo("#tableStreet");
+   	$("<tr>").attr({"id":"tr_c"}).appendTo("#tableStreet");
+   	$("<td>").attr({"id":"td_a"}).appendTo("#tr_a");
+   	$("<td>").attr({"id":"td_b"}).appendTo("#tr_a");
+   	$("<td>").attr({"id":"td_c"}).appendTo("#tr_a");
+   	$("<td>").attr({"id":"td_d"}).appendTo("#tr_b");
+   	$("<td>").attr({"id":"td_e"}).appendTo("#tr_b");
+   	$("<td>").attr({"id":"td_f"}).appendTo("#tr_b");
+   	$("<td>").attr({"id":"td_g"}).appendTo("#tr_c");
+	$("<td>").attr({"id":"td_h"}).appendTo("#tr_c");
+	$("<td>").attr({"id":"td_i"}).appendTo("#tr_c");
+	   	
+   	//button ok 
+   	$("<input type='submit'>").attr({"id":"button1","value":"ok"}).appendTo("#td_c");
+   	$("#button1").click( function() {
+		if(formSubmitted) {
+			return false;
+		}
+		eventGazResClickOV.trigger({
+			"targetArray":targetArray2
+		});			
+	 });
+	 
+   	$("<input type='submit'>").attr({"id":"button2","value":"ok"}).appendTo("#td_f");
+	$("#button2").click( function() { 
+		if(formSubmitted) {
+			return false;
+		}
+		eventGazResClickOV.trigger({
+			"targetArray":targetArray2
+		});
+	 });
+	 
+	 $('#button1').css({'visibility':'hidden'});
+	 $('#button2').css({'visibility':'hidden'});
+	
+   	//text fields
+   	$("<input type='text'>").attr({"id":"feld1","size":"22"}).appendTo("#td_b");
+   	$("#feld1").mousedown( function() { 
+		clearAll();
+//		$("#td_h").empty();
+		$("#button1").css({"visibility":"visible"});
+		$("#button2").css({"visibility":"hidden"});
+		$("#feld2").attr('disabled','true');
+//		clearStreet(); 
+	 } );
+   	
+   	$("<input type='text'>").attr({"id":"feld2","size":"22"}).appendTo("#td_e");
+   	$("#feld2").attr('disabled','true');
+   	$("#feld2").mousedown( function() {
+   		clearStreet();
+		$("#button1").css({"visibility":"hidden"});
+		$("#button2").css({"visibility":"visible"});
+	 } );
+   	
+   	//hidden field for gemeindeschluessel
+   	$("<input type='hidden'>").attr({"id":"feldhidden"}).appendTo("#td_i");
+   	
+   	//Field texts
+   	$("#td_a").html("Ort:");
+   	$("#td_d").html("Stra&szlig;e:");
+   	$("#td_g").html("Treffer:");
+   	  	
+   	//Block fuer STYLE CSS ##################################################	
+	$("td").css('padding-left', '1px');
+	$("td").css('padding-right', '1px');
+	$("td").css('color', 'gray');
+	$("td").css('font-size', '11px');
+	$("td").css('height', '30px'); 
+	
+	$("#td_a").css('font-weight','bold');
+	$("#td_d").css('font-weight','bold');
+	$("#td_g").css('font-weight','bold');
+	$("#td_g").css('vertical-align','top');
+	//Ende Block fuer STYLE CSS #############################################
+
+ });
+
+var setIcon = function (argObj) {
+	var geomIndex = argObj.geomIndex;
+	var geomArray = argObj.geomArray;
+	geomArray.get(geomIndex).e.setElement("Mapbender:icon","../img/pinblau.png");
+};
+
+var removeIcon = function (argObj) {
+	var geomIndex = argObj.geomIndex;
+	var geomArray = argObj.geomArray;
+	geomArray.get(geomIndex).e.delElement("Mapbender:icon");
+};
+
+var deleteHighlight = function(argObj){
+	var geomIndex = argObj.geomIndex;
+	var geomArray = argObj.geomArray;
+	var highlightObj = argObj.highlightObj;
+
+//	var cw_fillcolor = "#cc33cc";
+	var cw_fillcolor = "#0000ff";
+	var currentGeom = geomArray.get(geomIndex);
+	highlightObj.clean();
+//	highlightObj.del(currentGeom, cw_fillcolor);
+//	highlightObj.paint();
+/*
+	try {
+		var highlightObjTemp = argObj.highlightObjTemp;
+		highlightObjTemp.clean();
+	}
+	catch(e) {
+		//console.log("Ein Fehler ist aufgetreten: %s", e);
+	}
+*/
+};
+
+var displayHighlight = function(argObj){
+	var geomIndex = argObj.geomIndex;
+	var geomArray = argObj.geomArray;
+	var highlightObj = argObj.highlightObj;
+
+//	var cw_fillcolor = "#cc33cc";
+	var cw_fillcolor = "#0000ff";
+	var currentGeom = geomArray.get(geomIndex);
+	highlightObj.add(currentGeom, cw_fillcolor);
+	highlightObj.paint();
+};
+
+var zoomToGeom = function(argObj){
+	var geomIndex = argObj.geomIndex;
+	var geomArray = argObj.geomArray;
+	var highlightObj = argObj.highlightObj;
+	var targetArray = argObj.targetArray;
+	var zoomTo = argObj.zoomTo;
+	var offsetParam = argObj.offsetParam;
+	
+	var currentGeom = geomArray.get(geomIndex);
+	var bbox = currentGeom.getBBox();
+	var buffer = new Point(1,1);
+	bbox[0] = bbox[0].minus(buffer);
+	bbox[1] = bbox[1].plus(buffer);
+	//console.log(bbox[0].x, bbox[0].y, bbox[1].x, bbox[1].y);
+	mb_calculateExtent(targetArray[0], bbox[0].x-offsetParam, bbox[0].y-offsetParam, bbox[1].x+offsetParam, bbox[1].y+offsetParam);
+	//zoom(targetArray[0], 'true', 0.999);
+	zoom(targetArray[0], 'true', zoomTo);
+};
+
+var zoomToFullExtent = function(argObj){
+	var targetArray = argObj.targetArray;
+	
+	var ind = this.getMapObjIndexByName(targetArray[1]);
+	this.width      = mb_mapObj[ind].width;
+	this.height     = mb_mapObj[ind].height;
+	this.epsg       = wms[0].gui_wms_epsg;
+	
+	var arrayExt = new Array();		
+	var exts = setExtent(width,height,epsg);
+	arrayExt = exts.split(",");
+	mb_calculateExtent(targetArray[1], arrayExt[0], arrayExt[1], arrayExt[2], arrayExt[3]);	
+	mb_repaint(targetArray[1],arrayExt[0],arrayExt[1],arrayExt[2],arrayExt[3]);
+};
+
+var transferResult = function(argObj){
+	var geomIndex = argObj.geomIndex;
+	var geomArray = argObj.geomArray;
+	var resultType = argObj.type;
+
+	if(resultType=='ort'){
+		transferOrtResult(geomArray.get(geomIndex).e.getElementValueByName(resVal3),geomArray.get(geomIndex).e.getElementValueByName(resVal2));
+		$("#feldhidden").attr({"value":""+geomArray.get(geomIndex).e.getElementValueByName(resVal4)+""});
+	}
+	else if(resultType=='strasse'){
+		transferStrResult(geomArray.get(geomIndex).e.getElementValueByName(resVal5),geomArray.get(geomIndex).e.getElementValueByName(resVal6),geomArray.get(geomIndex).e.getElementValueByName(resVal3));
+	}	
+};
+
+var eventGazResClickIcon = new MapbenderEvent();
+eventGazResClickIcon.register(setIcon);
+eventGazResClickIcon.register(deleteHighlight);
+eventGazResClickIcon.register(zoomToGeom);
+eventGazResClickIcon.register(displayHighlight);
+//eventGazResClickIcon.register(removeIcon);
+
+var eventGazResOver = new MapbenderEvent();
+eventGazResOver.register(displayHighlight);
+
+var eventGazResOut = new MapbenderEvent();
+eventGazResOut.register(deleteHighlight);
+
+var eventGazResClickOV = new MapbenderEvent();
+eventGazResClickOV.register(zoomToFullExtent);
+
+var eventGazResClick = new MapbenderEvent();
+eventGazResClick.register(deleteHighlight);
+eventGazResClick.register(zoomToGeom);
+eventGazResClick.register(displayHighlight);
+eventGazResClick.register(transferResult);
+	
+ /**
+ * function to start search 
+ *
+ */
+ 
+function startSearch2(){
+	if($("#feld2").val()!=''){
+		if($("#feld1").val()==''){
+			alert("Bitte Ort wählen.");	
+		}
+		else{
+			propertyName2[0] = propNameStr1;
+			propertyName2[1] = propNameStr2;
+			var searchString1 = $("#feld2").val().replace (/^\s+/, '').replace (/\s+$/, '');
+	   		if (searchString1.length<3){
+				alert("Geben Sie mindestens drei Zeichen ein.");
+				return false;
+			}
+	   		searchValue2[0] = $("#feldhidden").val();
+	   		searchValue2[1] = searchString1;
+	   		validate2(propertyName2,searchValue2,wfsSearchStr,shortName2[1]);
+		}
+	}
+	else{
+//		$("#td_h").empty();
+		var searchString = $("#feld1").val().replace (/^\s+/, '').replace (/\s+$/, '');
+		searchValue2[0] = searchString;
+		propertyName2[0] = propNameStr0;
+		if (searchString.length<3){
+			alert("Geben Sie mindestens drei Zeichen ein.");
+			return false;
+		}
+		validate2(propertyName2,searchValue2,wfsSearchOrt,shortName2[0]);
+	}
+}
+
+function clearStreet(){
+	$("#feld2").val("");
+	$("#td_h").empty();
+	propertyName2 = [];
+	searchValue2 = [];
+	$("#button1").css({"visibility":"hidden"});
+	$("#button2").css({"visibility":"hidden"});
+}
+
+function clearAll(){
+	$("#feld1").val("");
+	$("#feld2").val("");
+	$("#td_h").empty();
+	propertyName2 = [];
+	searchValue2 = [];
+	$("#button1").css({"visibility":"hidden"});
+	$("#button2").css({"visibility":"hidden"});
+}
+
+function normalize2(str){
+	//console.log("string vor replace = %s",str);
+    str = str.replace(/-/g,' ');
+	str = str.toUpperCase();
+    str = str.replace(/ß/g,'SS');
+    str = str.replace(/Ä/g,'AE');
+    str = str.replace(/Ö/g,'OE');
+    str = str.replace(/Ü/g,'UE');
+    
+    return str;
+} 
+
+ /**
+ * fills Ort search result in field, button and input handling and event for button 
+ *
+ * [@param {string} resultFill transfer search value
+ */
+ 
+ function transferOrtResult(nextWfsUrl,resultFillNumber){
+ 	$("#feld1").attr({"value":""+resultFillNumber+""});
+	$("#button1").css({"visibility":"hidden"});
+	$("#button2").css({"visibility":"visible"});
+	$("#feld2").attr('disabled','');
+	$("#feld2").focus();
+	$("#td_h").empty();
+	wfsSearchStr = nextWfsUrl;
+}
+
+/**
+ * fills Strassen search result in field, button handling and event for button 
+ *
+ * [@param {string} resultFill transfer search value
+ */
+ 
+function transferStrResult(resultFill,nextSearchAttr,nextWfsUrl){
+	var searchResult = resultFill;
+	$("#feld2").attr({"value":""+searchResult+""});
+	$("#td_h").empty();
+	propertyName2 = [];
+	searchValue2 = [];
+	propertyName2[0] = propNameStr3;
+	searchValue2[0] = nextSearchAttr;
+		
+	validate2(propertyName2,searchValue2,nextWfsUrl,shortName2[2]);
+}
+
+/**
+ * creates wfs search request and shows search results in div tags
+ *
+ * [@param {array} propertyName2 array with all propertyNames for search
+ * [@param {array} searchValue2 array with all searchstrings for search
+ * [@param {string} wfsUrl URL of WFS
+ * [@param {string} searchAbbr string containing abbreviation defining step of search
+ */
+ 
+ function validate2(propertyName2,searchValue2,wfsUrl,searchAbbr){
+// 	$("#td_h").empty();
+ 	if(geomArray2.count()>0){
+ 		geomArray2.empty();
+ 	}
+ 	if(geomArray3.count()>0){
+ 		geomArray3.empty();
+ 	}
+	var filterParameterCount = propertyName2.length;
+	if(filterParameterCount == 0){
+		return false;
+	}
+	else{
+		var andConditions = "";
+		for (var i = 0; i < propertyName2.length; i++) {
+
+/* ggeändert Woita wegen Textfeld
+		
+	if(propertyName2[i]==propNameStr1 || propertyName2[i]==propNameStr3){
+				andConditions += "<ogc:PropertyIsEqualTo>";
+				var closingTag = "</ogc:PropertyIsEqualTo>"; 		
+			}
+*/
+	if(propertyName2[i]==propNameStr1 || propertyName2[i]==propNameStr3){
+				andConditions += "<ogc:PropertyIsLike wildCard='*' singleChar='.' escape='!'>";
+				var closingTag = "</ogc:PropertyIsLike>";		
+			}
+			else{
+				andConditions += "<ogc:PropertyIsLike wildCard='*' singleChar='.' escape='!'>";
+				var closingTag = "</ogc:PropertyIsLike>";	
+			}
+			andConditions += "<ogc:PropertyName>" + propertyName2[i] + "</ogc:PropertyName>";
+			andConditions += "<ogc:Literal>*";
+			if(searchValue2[i]=="*"){
+				andConditions +="*";
+			}
+			else if(propertyName2[i]==propNameStr1 || propertyName2[i]==propNameStr3){
+				andConditions += normalize2(searchValue2[i]);
+				//andConditions += searchValue2[i];	
+			}
+			else{
+				andConditions += normalize2(searchValue2[i])+"*";
+				//andConditions += searchValue2[i];
+			}
+			andConditions += "</ogc:Literal>";
+			//andConditions += "</ogc:PropertyIsLike>";
+			andConditions += closingTag;
+		}
+		if (filterParameterCount > 1) {
+			andConditions = "<And>" + andConditions + "</And>";
+		}
+		
+//		var requestUrl = wfsUrl;
+		var requestUrl = wfsUrl.replace(/localhost\/geoserver/,'geoportal.rostock.de/geoserver_hro'); // lokale Entwicklung
+
+		requestUrl += "&filter=";
+		var filter = "<ogc:Filter xmlns:ogc='http://ogc.org' xmlns:gml='http://www.opengis.net/gml'>"+andConditions+"</ogc:Filter>";
+	}
+//	$("#td_h").empty();
+	$("<img>").attr({"id":"wheelImg","src":"../img/indicator_wheel.gif"}).appendTo("#td_h");
+	$("<span>").attr({"id":"searchDiv"}).appendTo("#td_h").html("Suche ...");
+	
+	var parameters = {command:"getSearchResults", "url":requestUrl, "filter":filter};
+	parent.mb_ajax_post("../gazetteer_rostock/mod_WFSStreetGaz_server.php", parameters, function (jsCode, status) {
+//		$("#td_h").empty();
+		$("#wheelImg").remove();
+		$("#searchDiv").remove();
+		var geoObj = eval('(' + jsCode + ')');	
+   		if (jsCode) {	
+			if (typeof(geoObj) == 'object') {
+				geomArray2.importGeoJSON(geoObj);
+				geomArray3.importGeoJSON(geoObj);
+//				$("#td_h").empty();
+				$("<ul>").attr({"id":"hnrUl"}).appendTo("#td_h");
+				$("#hnrUl").css('list-style', 'none');
+				$("#hnrUl").css('margin', '0');
+				$("#hnrUl").css('padding', '0');
+				for (var i=0; i < geomArray2.count(); i++) {
+					if(searchAbbr==shortName2[0]){
+						(function () {
+							var geomStr = searchAbbr + i;
+							var geomIndex = i;
+							$("<div>").attr({"id":searchAbbr+i}).appendTo("#td_h");
+							var text1 = geomArray2.get(i).e.getElementValueByName(resVal0);
+							if(geomArray2.get(i).e.getElementValueByName(resVal1)==''){
+								var text2 = ""; 
+							}
+							else{
+								var text2 = geomArray2.get(i).e.getElementValueByName(resVal1);
+							}
+							$("#"+geomStr).text(text1+" "+text2);
+							$("#"+geomStr).css({"cursor":"pointer"});
+							if ((i % 2) === 0) {
+								$("#"+geomStr).css({"color":"red"});
+							}
+							else{
+								$("#"+geomStr).css({"color":"blue"});
+							}
+							$("#"+geomStr).mouseover( function() { 
+								eventGazResOver.trigger({
+									"geomIndex":geomIndex,
+									"geomArray":geomArray2,
+									"eventAction":"over",
+									"targetArray":targetArray2,
+									"highlightObj":global_resultHighlight1
+								});
+							});
+							$("#"+geomStr).mouseout( function() { 
+								eventGazResOut.trigger({
+									"geomIndex":geomIndex,
+									"geomArray":geomArray2,
+									"eventAction":"out",
+									"targetArray":targetArray2,
+									"highlightObj":global_resultHighlight1
+								});
+							});
+							$("#"+geomStr).click( function() { 
+								eventGazResClick.trigger({
+									"geomIndex":geomIndex,
+									"geomArray":geomArray2,
+									"eventAction":"click",
+									"targetArray":targetArray2,
+									"highlightObj":global_resultHighlight1,
+									"type":"ort",
+									"zoomTo":"1.0",
+									"offsetParam":offsetParamOrt
+								});
+							});
+						})();
+					}
+					else if (searchAbbr==shortName2[1]){
+						(function () {
+							var geomStr = searchAbbr + i;
+							var geomIndex = i;
+							$("<div>").attr({"id":searchAbbr+i}).appendTo("#td_h");
+							$("#"+geomStr).text(geomArray2.get(i).e.getElementValueByName(resVal5));
+							$("#"+geomStr).css({"cursor":"pointer"});
+							if ((i % 2) === 0) {
+								$("#"+geomStr).css({"color":"red"});
+							}
+							else{
+								$("#"+geomStr).css({"color":"blue"});
+							}
+							$("#"+geomStr).mouseover( function() { 
+								eventGazResOver.trigger({
+									"geomIndex":geomIndex,
+									"geomArray":geomArray2,
+									"eventAction":"over",
+									"targetArray":targetArray2,
+									"highlightObj":global_resultHighlight1
+								});
+							});
+							$("#"+geomStr).mouseout( function() { 
+								eventGazResOut.trigger({
+									"geomIndex":geomIndex,
+									"geomArray":geomArray2,
+									"eventAction":"out",
+									"targetArray":targetArray2,
+									"zoomTo":"1.0",
+									"highlightObj":global_resultHighlight1
+								});
+							});
+							$("#"+geomStr).click( function() { 
+								eventGazResClick.trigger({
+									"geomIndex":geomIndex,
+									"geomArray":geomArray2,
+									"eventAction":"click",
+									"targetArray":targetArray2,
+									"highlightObj":global_resultHighlight1,
+									"type":"strasse",
+									"offsetParam":offsetParamStr
+								});
+								
+								clearStreet();
+								
+								$(this).clone().attr({'id':'selected_street'}).prependTo('#td_h');
+//								$('#selected_street').css('color','inherit');
+								$('#selected_street').mouseover(function() {
+									global_resultHighlight1.add(geomIndex,'#00F');
+									global_resultHighlight1.paint();
+								});
+								$('#selected_street').mouseout(function() {
+									global_resultHighlight1.add(geomIndex,'transparent');
+									global_resultHighlight1.paint();
+								});
+								global_resultHighlight1.add(geomIndex,'transparent');
+								global_resultHighlight1.paint();
+				
+							});
+						})();	
+					}
+					else if (searchAbbr==shortName2[2]){
+						(function () {
+							var geomStr = searchAbbr + i;
+							var geomIndex = i;
+							
+							$("<li>").attr({"id":searchAbbr+i}).appendTo("#hnrUl");
+							$("#"+searchAbbr+i).css('float','left');
+							$("#"+searchAbbr+i).css('width','25px');
+							$("#"+searchAbbr+i).css('height','25px');
+							$("#"+searchAbbr+i).css('margin','1px');
+							$("#"+searchAbbr+i).css('line-height','25px');
+							$("#"+searchAbbr+i).css('text-align','center');
+							$("#"+searchAbbr+i).css('border','1px solid #EEE');
+							if(i==9){
+								$("#"+geomStr).text(geomArray2.get(i).e.getElementValueByName(resVal7));
+								$("<br>").appendTo("#"+geomStr);
+							}
+							else{
+								$("#"+geomStr).text(geomArray2.get(i).e.getElementValueByName(resVal7));	
+							}
+							$("#"+geomStr).css({"cursor":"pointer"});
+							if ((i % 2) === 0) {
+								$("#"+geomStr).css({"color":"red"});
+							}
+							else{
+								$("#"+geomStr).css({"color":"blue"});
+							}
+							$("#"+geomStr).mouseover( function() { 
+								eventGazResOver.trigger({
+									"geomIndex":geomIndex,
+									"geomArray":geomArray2,
+									"eventAction":"over",
+									"targetArray":targetArray2,
+									"highlightObj":global_resultHighlight2
+								});
+								$(this).css('background-color','#EEE');
+								$(this).css('border-color','#E6E6E6');
+							});
+							$("#"+geomStr).mouseout( function() { 
+								eventGazResOut.trigger({
+									"geomIndex":geomIndex,
+									"geomArray":geomArray2,
+									"eventAction":"out",
+									"targetArray":targetArray2,
+									"highlightObj":global_resultHighlight2
+								});
+								$(this).css('background-color','transparent');
+								$(this).css('border-color','#EEE');
+							});
+							$("#"+geomStr).click( function() { 
+								eventGazResClickIcon.trigger({
+									"geomIndex":geomIndex,
+									"geomArray":geomArray3,
+									"targetArray":targetArray2,
+									"highlightObj":global_resultHighlight2,	
+									"highlightObjTemp":global_resultHighlight1,
+									"zoomTo":"0.01",
+									"offsetParam":offsetParamHsnr	
+								});
+							});
+						})();	
+					}
+				}
+				if(geomArray2.count()==0){
+					$("#td_h").empty();
+					$("<div>").attr({"id":"noResult"}).appendTo("#td_h");
+					if(searchAbbr==shortName2[0]){
+						$("#noResult").text(noResultText2[0]);
+					}
+					if(searchAbbr==shortName2[1]){
+						$("#noResult").text(noResultText2[1]);
+					}
+					if(searchAbbr==shortName2[2]){
+						$("#noResult").text(noResultText2[2]);
+					}
+				}
+			}
+			else {
+				$("#td_h").empty();
+
+				$("<div>").attr({"id":"noResult"}).appendTo("#td_h");
+				if(searchAbbr==shortName2[0]){
+					$("#noResult").text(noResultText2[0]);
+				}
+				if(searchAbbr==shortName2[1]){
+					$("#noResult").text(noResultText2[1]);
+				}
+				if(searchAbbr==shortName2[2]){
+					$("#noResult").text(noResultText2[2]);
+				}
+			}
+		}
+		else {
+			alert("No results.");
+		}
+		
+		formSubmitted = false;
+		$('#button1').css({'visibility':'hidden'});
+		$('#button2').css({'visibility':'hidden'});
+	});
+}

Added: branches/beck_dev_25/http/gazetteer_rostock/mod_WFSStreetGaz_client.php
===================================================================
--- branches/beck_dev_25/http/gazetteer_rostock/mod_WFSStreetGaz_client.php	                        (rev 0)
+++ branches/beck_dev_25/http/gazetteer_rostock/mod_WFSStreetGaz_client.php	2008-11-13 09:15:43 UTC (rev 3238)
@@ -0,0 +1,73 @@
+<?php
+#$Id: mod_WFSStreetGaz_client.php 2008 2008-03-05 11:44:45Z verenadiewald $
+# Copyright (C) 2002 CCGIS 
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+require_once(dirname(__FILE__)."/../php/mb_validateSession.php");
+echo "var getParamsForm2 = '".SID."&gui_id=".$gui_id."&e_id=".$e_id."';";
+
+echo "var e_id2 = '".$e_id."';";
+echo "var resultGeom2 = '';";
+echo "var geomArray2 = new GeometryArray();";
+echo "var geomArray3 = new GeometryArray();";
+
+echo "var wfsSearchOrt = 'http://geoportal.rostock.de/geoserver_hro/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:orte_sort';";
+echo "var wfsSearchStr = 'http://geoportal.rostock.de/geoserver_hro/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:str_dbr_sort';";
+echo "var wfsSearchNr = 'http://geoportal.rostock.de/geoserver_hro/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:hnr_dbr_sort';";
+
+//echo "var wfsSearchOrt = 'http://localhost/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:orte_sort';";
+//echo "var wfsSearchStr = 'http://localhost/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:str_dbr_sort';";
+//echo "var wfsSearchNr = 'http://localhost/geoserver/wfs?SERVICE=WFS&VERSION=1.0.0&REQUEST=getFeature&TYPENAME=hro:hnr_dbr_sort';";
+
+echo "var propertyName2 = [];";
+echo "propNameStr0 = 'ort_normalisiert';";
+echo "propNameStr1 = 'gemeindeschluessel';";
+echo "propNameStr2 = 'strassenname_normalisiert';";
+echo "propNameStr3 = 'suchschluessel';";
+
+echo "var searchValue2 = [];";
+
+echo "var resVal0='geographicidentifier';";
+echo "var resVal1='orts_zusatz';";
+echo "var resVal2='gemeindename';";
+echo "var resVal3='wfs_url';";
+echo "var resVal4='gemeindeschluessel';";
+echo "var resVal5='strassenname';";
+echo "var resVal6='suchschluessel';";
+echo "var resVal7='hnr';";
+
+echo "var shortName2 = [];";
+echo "shortName2[0] = 'ort';";
+echo "shortName2[1] = 'strasse';";
+echo "shortName2[2] = 'hausnr';";
+
+echo "var noResultText2 = [];";
+echo "noResultText2[0] = 'Kein Ort gefunden.';";
+echo "noResultText2[1] = 'Keine Strasse gefunden.';";
+echo "noResultText2[2] = 'Keine Hausnummern vorhanden.';";
+
+echo "var targetString2 = '" . implode(",", $e_target) . "';";
+echo "var targetArray2 = targetString2.split(',');";
+echo "var targetArray3 = [];";
+echo "targetArray3[0] = targetArray2[0];";
+
+echo "var offsetParamOrt = 200;";
+echo "var offsetParamStr = 200;";
+echo "var offsetParamHsnr = 1;";
+
+include (dirname(__FILE__)."/../gazetteer_rostock/mod_WFSStreetGaz_client.js");
+
+?>

Added: branches/beck_dev_25/http/gazetteer_rostock/mod_WFSStreetGaz_server.php
===================================================================
--- branches/beck_dev_25/http/gazetteer_rostock/mod_WFSStreetGaz_server.php	                        (rev 0)
+++ branches/beck_dev_25/http/gazetteer_rostock/mod_WFSStreetGaz_server.php	2008-11-13 09:15:43 UTC (rev 3238)
@@ -0,0 +1,70 @@
+<?php
+# $Id: mod_wfsrequest.php 1008 2007-01-16 11:26:56Z christoph $
+# http://www.mapbender.org/index.php/Administration
+# Copyright (C) 2002 CCGIS 
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+session_start();
+
+require_once(dirname(__FILE__)."/../../conf/mapbender.conf");
+include(dirname(__FILE__)."/../classes/class_gml2.php");
+require_once(dirname(__FILE__)."/../extensions/JSON.php");
+require_once(dirname(__FILE__)."/../classes/class_administration.php");
+require_once(dirname(__FILE__)."/../classes/class_mb_exception.php");
+
+$con = db_connect($DBSERVER,$OWNER,$PW);
+db_select_db($DB,$con);
+
+$command = $_REQUEST["command"];
+
+if ($command == "getSearchResults") {
+	$filter = $_REQUEST["filter"];
+	$url = $_REQUEST["url"];
+
+	$admin = new administration();
+
+	$req = urldecode($url).urlencode($admin->char_decode(stripslashes($filter)));
+	$mygml = new gml2();
+	
+	//	$mygml->parsegml($req);
+//	
+//	// generates JavaScript code that will add a geometry array containing
+//	// all the result geometries 
+//	
+//	$js = "";
+//	if ($mygml->getMemberCount() > 0) {
+//		
+//	$js .= $mygml->exportGeometriesToJS(true);
+//	
+//		for ($i = 0; $i < $mygml->getMemberCount(); $i++) {
+//			for ($j = 0; $j < count($mygml->keys[$i]); $j++) {
+//				$key = $mygml->sepNameSpace($mygml->keys[$i][$j]);
+//				$js .= "geom.get(".$i.").e.setElement('".$key."', '".$mygml->getValueBySeparatedKey($i, $key) . "');\n";
+//			}
+//		}
+//	}
+//	echo $js;
+
+	$mygml->parseFile($req);
+	
+	header("Content-type:application/x-json; charset=utf-8");
+
+	echo $mygml->toGeoJSON();
+}
+else {
+	echo "please enter a valid command.";
+}
+?>
\ No newline at end of file



More information about the Mapbender_commits mailing list