
var merk_open=false;

var myZoomBoxActive = false;
var ie = document.all?1:0;
var opera  = (navigator.userAgent.search(/Opera/)==-1)?0:1;
var safari = (navigator.userAgent.search(/Safari/)==-1)?0:1;
var konqueror = (navigator.userAgent.search(/Konqueror/)==-1)?0:1;

var myMouseXY = new Array();
var myStartXY = new Array();
var myEndXY = new Array();

var myUsemap = new Array();
var myLegende = false;

var merkinfo_show=true;

var requestLayers = "";

var kmlRequest = "";

var mybaseurl = "";

var zbb = new Array();
var myHistory = new Array();

var gmscales = new Array();
gmscales[0] = parseInt(1);
gmscales[1] = parseInt(805647);
gmscales[2] = parseInt(1067131);
gmscales[3] = parseInt(486057);
gmscales[4] = parseInt(231423);
gmscales[5] = parseInt(114111);
gmscales[6] = parseInt(56866);
gmscales[7] = parseInt(28407);
gmscales[8] = parseInt(14200);
gmscales[9] = parseInt(7099);
gmscales[10] = parseInt(3549);
gmscales[11] = parseInt(1774);
gmscales[12] = parseInt(887);
gmscales[13] = parseInt(443);
gmscales[14] = parseInt(221);
gmscales[15] = parseInt(110);
gmscales[16] = parseInt(55);
gmscales[17] = parseInt(27);
gmscales[18] = parseInt(13);
gmscales[19] = parseInt(6);

function my_getMousePosI(e) {
  var El=document.getElementById("divSlideBarIcon");
  var mapx=0, mapy=0, xx=0, yy=0;
  while(El.offsetParent) {
    mapx+=El.offsetLeft;
    mapy+=El.offsetTop;
    El=El.offsetParent;
  }
  if(ie) {
        xx = event.clientX+document.documentElement.scrollLeft-mapx-4;
        yy = event.clientY+document.documentElement.scrollTop-mapy-4;
  } 
  else { 
       if (!e) e=window.event;
       xx = e.pageX-mapx+2;
       yy = e.pageY-mapy+2;
  }
  zoomInOutSl(yy);
}

function zoomInOutSl(yPos){
	setSlider();
	//yPos = yPos - slideBarTop;

	var minRes = gmMap.getCurrentMapType().getMinimumResolution();
	var maxRes = gmMap.getCurrentMapType().getMaximumResolution();
	var help = maxRes - (maxRes - minRes);
	var zoomLevel = Math.round(yPos * (maxRes - help) / slidebarHeight + help)

	var newYPos = Math.round(zoomLevel * (slidebarHeight - sliderHeight) /(maxRes - help) + help +slideBarTop);
	//alert(slideBarTop+' '+slidebarHeight+' '+yPos+' '+divSliderIcon+' '+zoomLevel+' '+newYPos+' '+ sliderHeight);
	divSliderIcon.style.top = newYPos + "px";
	gmMap.setCenter(gmMap.getCenter(), zoomLevel);
	myHistoryAdd();
	setSlider();
}
function my_getElemPos(e) {
	// Ermittelt die absoluten Koordinaten des Objekts e (mkr)
  var elem = e,tagnme="",x=0,y=0;
	while(typeof(elem)=="object" && typeof(elem.tagName)!="undefined") {
		y+= elem.offsetTop;
		x+= elem.offsetLeft;
		tagnme = elem.tagName.toUpperCase();
		if(tagnme=="BODY" || tagnme=="HTML") elem = 0;
		if(typeof(elem)=="object") {
			if(typeof(elem.offsetParent)=="object")
				elem = elem.offsetParent;
		}
	}
	var position = new Object();
	position.x = x;
	position.y = y;
//alert(position.x+" "+position.y);
	return position;
}

function my_get_cookie(name) {
	var dcookie=document.cookie;
	var cname=name+"=";
	var clen=dcookie.length;
	var cbegin=0;
	while (cbegin<clen) {
		var vbegin=cbegin+cname.length;
		if (dcookie.substring(cbegin,vbegin)==cname) {
			var vend=dcookie.indexOf(";", vbegin);
			if (vend==-1) vend=clen;
			return unescape(dcookie.substring(vbegin, vend));
		}
		cbegin=dcookie.indexOf(" ", cbegin)+1;
		if (cbegin==0) break;
	}
	return null;
}

function gm_zoomIn(){
	if (GBrowserIsCompatible()) {
		gmMap.zoomIn();
		myHistoryAdd();
		setSlider();
		updateLayers();
		testZoom();
	}
}

function gm_zoomOut(){
	if (GBrowserIsCompatible()) {
		gmMap.zoomOut();
		myHistoryAdd();
		setSlider();
		updateLayers();
		testZoom();
	}
}

function testZoom(){
	try{
		outMessage("ZOOM"+gmMap.getZoom()+gmMap.getBounds());
		var dist = getHDistanceM(gmMap);
		var vsize = getHSize(gmMap, dist);
		outMessage("DDD"+dist +" "+vsize);
	}catch(e){}
}

function getHDistanceM(mymap){
	var bounds = ((mymap.getBounds().toString()).replace(/\)|\(/g, "")).split(",");
	var mymdl = (parseFloat(bounds[0]) + parseFloat(bounds[2])) / 2;
	var myMw = new GLatLng(parseFloat(mymdl),parseFloat(bounds[1]));
	var myMe = new GLatLng(parseFloat(mymdl),parseFloat(bounds[3]));
	return myMw.distanceFrom(myMe,6378137);
}

function getHSize(mymap, distance){
	return  parseInt(distance / (mymap.getSize().width * 2.54 / 96));
}

function zoomInOut(yPos){
	setSlider();
	yPos = yPos - slideBarTop;

	var minRes = gmMap.getCurrentMapType().getMinimumResolution();
	var maxRes = gmMap.getCurrentMapType().getMaximumResolution();
	var help = maxRes - (maxRes - minRes);
	var zoomLevel = Math.round(yPos * (maxRes - help) / slidebarHeight + help)

	var newYPos = Math.round(zoomLevel * (slidebarHeight - sliderHeight) /(maxRes - help) + help +slideBarTop);
	//alert(slideBarTop+' '+slidebarHeight+' '+yPos+' '+divSliderIcon+' '+zoomLevel+' '+newYPos+' '+ sliderHeight);
	divSliderIcon.style.top = newYPos + "px";
	gmMap.setCenter(gmMap.getCenter(), zoomLevel);
	myHistoryAdd();
	setSlider();
}


function gm_panDirection(dx, dy){
	//alert(dx+' '+dy);
	if (GBrowserIsCompatible()) {
		if(animated == true){
			gmMap.panDirection(dx,dy);
		}else{
			var xmin = gmMap.getBounds().getSouthWest().lng();
			var ymin = gmMap.getBounds().getSouthWest().lat();
			var xmax = gmMap.getBounds().getNorthEast().lng();
			var ymax = gmMap.getBounds().getNorthEast().lat();

			var xc = gmMap.getCenter().lng() - dx * gmMap.getSize().width * (xmax-xmin)/gmMap.getSize().width;
			var yc = gmMap.getCenter().lat() + dy * gmMap.getSize().height * (ymax-ymin)/gmMap.getSize().height;
			gmMap.setCenter(new GLatLng(yc, xc), gmMap.getZoom());
			myHistoryAdd();
			updateLayers();
		}
	}
}

function goHome(){
	var help = myHistory[0].split(",");
	gmMap.setCenter(new GLatLng(parseFloat(help[0]),parseFloat(help[1])), parseInt(help[2]));
	updateLayers();
	setSlider();
}

function goBack(){
	var num = myHistory.length;
	if(myHistory.length > 1){
		var help = myHistory[(num-2)].split(",");
		myHistory.pop();
		gmMap.setCenter(new GLatLng(parseFloat(help[0]),parseFloat(help[1])), parseInt(help[2]));
		updateLayers();
	}else{
		goHome();
	}
	setSlider();
}

function myHistoryAdd(){
	//var wert = (Math.round(gmMap.getCenter().lat()*10000))/10000+","+(Math.round(gmMap.getCenter().lng()*10000))/10000+","+gmMap.getZoom();
	//if(myHistory[(myHistory.length-1)] != wert)
	myHistory.push(gmMap.getCenter().lat()+','+gmMap.getCenter().lng()+','+gmMap.getZoom());
	outMessage("add "+myHistory.length);
}

function setHome(myLat, myLng, myZoom){
	myHistory[0] = myLat+','+myLng+','+myZoom;
}

/*function my_navi_zoomGM() {
	outMessage('navi zoom');
	if (zoom_mode==false) {
		//my_navi_measure_off();
		//my_navi_pan_off();
		document.getElementById("imgNaviZoom").src=toolImg[7].src;
		document.getElementById("imgNaviZoom").title=toolImgText[7];
		zoom_mode=true; 
		my_zoomBoxInitGM();
		//my_statistik("action=toolbox_zoomAn");
	} else {
		my_navi_zoom_off();
		//my_statistik("action=toolbox_zoomAus");
	}
}*/

function my_zoomBoxInitGM() {
	if(pan_mode == true)
		my_navi_panGM(my_getID("imgNaviPan"));
	my_getID("layerEventHandling").style.display = "inline";
	my_getID("layerEventHandling").style.visibility = "visible";

	my_getID("layerEventHandling").style.width = myMapSize[0]+"px";
	my_getID("layerEventHandling").style.height = myMapSize[1]+"px";
	my_getID("layerEventHandling").style.cursor = "crosshair";
	my_getID("layerEventHandling").onmousedown = my_zoomBoxStartGM;
	// outMessage(myMapSize[0]+' '+myMapSize[1]+' '+myStartXY[0]+' ' +myStartXY[1]+' '+my_getID("layerEventHandling").style.visibility+'-'+my_getID("layerEventHandling").style.width+'-'+my_getID("layerEventHandling").style.height+my_getID("layerEventHandling").style.top);
	// outMessage('position '+my_getID("GM2Map").style.top+' '+my_getID("GM2Map").style.left+document.getElementById('GM2Map').style.left);
	my_getID("layerEventHandling").onmousemove = my_zoomBoxRunGM;
	my_getID("layerEventHandling").onmouseup = my_zoomBoxStopGM;
}

function onnPanModus(){
	my_getID("layerEventHandling").style.visibility = "hidden";
}

function offPanModus(){
	my_getID("layerEventHandling").style.display = "inline";
	my_getID("layerEventHandling").style.visibility = "visible";
}

function my_zoomBoxStartGM(e) {
	myZoomBoxActive = true;
	my_getMousePos(e);
	//alert(myMouseXY[0]+", "+myMouseXY[1]);
	myStartXY[0] = myMouseXY[0];
	myStartXY[1] = myMouseXY[1];
	return false;
}

function my_zoomBoxRunGM(e) {
	if(myZoomBoxActive) {
		my_getMousePos(e);

		if(ie) { corr = 2; } else { corr = 0; }
		if(myStartXY[0] > myMouseXY[0]) {
			zbb[0] = myMouseXY[0]+1-corr; //left
			zbb[2] = myStartXY[0]+1-corr;
		} else {
			zbb[0] = myStartXY[0]-4+corr; //right
			zbb[2] = myMouseXY[0]-4+corr;
		}
		if(myStartXY[1] > myMouseXY[1]) {
			zbb[3] = myStartXY[1]+1-corr; //top
			zbb[1] = myMouseXY[1]+1-corr;
		} else {
			zbb[1] = myStartXY[1]-4+corr; //bottom
			zbb[3] = myMouseXY[1]-4+corr;
		}
		if((zbb[2]-zbb[0])>0 && (zbb[3]-zbb[1])>0 && zbb[0]>0 && zbb[1]>0 && zbb[2]<myMapSize[0] && zbb[3]<myMapSize[1]) {
			my_getID("layerZoomBox").style.borderWidth = "2px";
			my_getID("layerZoomBox").style.visibility = "visible";
			my_arrangeElement("layerZoomBox",zbb[0]+myMapPos[0],zbb[1]+myMapPos[1],zbb[2]-zbb[0],zbb[3]-zbb[1]);
		}
	}
	return false;
}

function my_zoomBoxStopGM(e) {
  //outMessage('###zoomBoxStopGM');
  if(myZoomBoxActive) {
		//outMessage('###myZoomBoxActive');
		myZoomBoxActive = false;
		my_getID("layerEventHandling").onmousedown = null;
		my_getID("layerEventHandling").onmousemove = null;
		my_getID("layerEventHandling").onmouseup = null;
		my_getID("layerEventHandling").style.visibility = "hidden";
		my_getID("layerZoomBox").style.visibility = "hidden";
		// latitute 0 to +-90: N=+ S=-
		// logitude 0 to +-180: E=+ W=-
		var pos1 = gmMap.fromContainerPixelToLatLng(new GPoint(zbb[0],zbb[1]));
		var pos2 = gmMap.fromContainerPixelToLatLng(new GPoint(zbb[2],zbb[3]));
		var rectObj = new GLatLngBounds(new GLatLng(pos2.y,pos1.x), new GLatLng(pos1.y,pos2.x));
		var newSc = gmMap.getBoundsZoomLevel(rectObj);
		var pointPos = new GPoint((zbb[2]-zbb[0])/2+zbb[0],(zbb[3]-zbb[1])/2+zbb[1]);
		var latLngPos = gmMap.fromContainerPixelToLatLng(pointPos); //center
		gmMap.setCenter(latLngPos,newSc);
		//alert(rectObj+" "+newSc+" "+latLngPos);
		zbb = new Array();
		my_getID("imgNaviZoom").src=toolImg[1].src;
	}
	my_eventLayer();
	updateLayers();
	myHistoryAdd();
	setSlider();
}

function my_getID(elName) {
	var theObj = document.getElementById(elName);
	return theObj;
}

function openPrintWindow(url, widthP, heightP){
	//alert(url);
	//PrintWindow = window.open(url, "myWMSClient");
	PrintWindow = window.open(url, "myWMSClient", "width="+(myMapSize[0]+widthP)+",height="+(myMapSize[1]+heightP));
	PrintWindow.focus();
}

function my_getMousePos(e) {
	var map = document.getElementById('GM2Map');
	var a = my_getElemPos(map);
	//alert(a.x+","+a.y);
	if(ie) {
		//myMouseXY[0] = event.clientX+document.documentElement.scrollLeft-myMapPos[0]-4;
		//myMouseXY[1] = event.clientY+document.documentElement.scrollTop-myMapPos[1]-4;
		myMouseXY[0] = event.clientX+document.documentElement.scrollLeft-a.x-4;
		myMouseXY[1] = event.clientY+document.documentElement.scrollTop-a.y-4;
	} else {
		if (!e) e=window.event;
		//myMouseXY[0] = e.pageX-myMapPos[0];
		//myMouseXY[1] = e.pageY-myMapPos[1];
		myMouseXY[0] = e.pageX-a.x;
		myMouseXY[1] = e.pageY-a.y;
	}
	outMessage(myMouseXY[0]+' '+myMouseXY[1]);
}

function my_arrangeElement(elName,left,top,width,height) {
	var t =typeof(elName);
	if(t == "string") { elName = new Object(document.getElementById(elName)); }
	// Gerstner: +"px"
	if(left != null) { elName.style.left = left+"px"; }
	if(top != null) { elName.style.top = top+"px"; }
	if(width) { elName.style.width = width+"px"; }
	if(height) { elName.style.height = height+"px"; }
}

function my_eventLayer(val) {
	// over maps, under measure, zoombox
	if(val == true) {
		myMapFrame = document.getElementById("layerEventHandling");
		myMapFrame.style.visibility = "visible";
	} else {
	//my_setInfo(msgList[9]);
	document.getElementById("layerEventHandling").style.visibility = "hidden";
	myMapFrame = document.getElementById("layerAll");
	// Gerstner: per default nicht pannen
	//my_panInit();
	}
}

function my_navi_panGM(myDiv) {
	//outMessage('in navi pan');
	if(pan_mode == false){
		pan_mode = true;
		myDiv.src=toolImg[8].src;
		gmMap.enableDragging();
	}else{
		pan_mode = false;
		myDiv.src=toolImg[2].src;
		gmMap.disableDragging();
	}
}

function my_navi_merk() {
	if (merk_open==true) { 
		my_merkbox_close(); 
		//my_statistik("action=toolbox_merklisteAus");
	} else {
		my_merkbox_open(); 
		//my_statistik("action=toolbox_merklisteAn");
	}
}

function my_merkbox_open() {
	merk_open=true;
	document.getElementById("divMerkBox").style.visibility = "visible";   
}

  function my_merkbox_close() {
    merk_open=false;
    document.getElementById("divMerkBox").style.visibility = "hidden";    
  }
  
  function my_search_Route(url){
    var myZielPLZ = document.getElementById("zielPLZ").value;
    var myZielOrt = document.getElementById("zielOrt").value;
    var myZielStrasse = document.getElementById("zielStrasse").value;
    var myZielRW = document.getElementById("zielRW").value;
    var myZielHW = document.getElementById("zielHW").value;
    
    var myStartPLZ = document.getElementById("startPLZ").value;
    var myStartOrt = document.getElementById("startOrt").value;
    var myStartStrasse = document.getElementById("startStrasse").value;
    var to = "";
    var from = "";

    if(myZielPLZ.length == 0 && myZielOrt.length == 0){
        if(myZielRW.length == 0 && myZielHW.length  == 0){
            alert('Die Ziel- Position ist nicht eingetragen.');
            return;
        }else{
            to += myZielHW+','+myZielRW;
        }

    }else{
        to += ',,'+myZielStrasse+','+myZielPLZ+','+myZielOrt+',,,DE';
    }
    
    if(myStartPLZ.length == 0 && myStartOrt.length == 0){
        alert('Die Start- Position ist nicht eingetragen.');
        return;
    }else{
        from += ',,'+myStartStrasse+','+myStartPLZ+','+myStartOrt+',,,DE';
    }
    
    url += "&from=" + encodeURI(from) + "&to=" + encodeURI(to) + "&locale=de";
    if(myCID)
        url += "&CID="+myCID;
    window.location.href = url;
  }
  
  function addRoute(){
        var myForm = '<table border="0" cellpadding="0" cellspacing="0"><tr><td><input type="text" id="from" name="from" value="" size="18" style="background-color:#ffffff; color: #000000; border-width: 1px; border-color:#999999; border-style:solid; font-size: 12px; cursor:text;"/></td>';
        myForm += '<td>&nbsp;</td><td><div style="background-color:'+buttontext_color+';"><img style="cursor: pointer;vertical-align:middle;" src="'+BerechnenButtonImg.src+'" onclick="parent.showRoute(document.getElementById(\'from\'))" title="Route berechnen"></div></td></tr></table>';
outMessage(myForm);        
return myForm;
    }

    function showRoute(myFrom){
      if(myFrom.value.length == 0){
        alert('Fehler!\nGeben Sie eine Startposition ein');
        myFrom.focus();
        return;
      }
      var mapwidth = 500;
      var mapheight = 800;
      var descrwidth = 300;
      var url = baseurl+"gmclient/route.jsp?from=" + encodeURI(myFrom.value) + "&to=" + encodeURI(getPointLat()) + "," + encodeURI(getPointLng()) + "&locale=de";
      url += "&mapwidth=" + mapwidth + "&mapheight=" + mapheight + "&descrwidth=" + descrwidth;
      outMessage(mybaseurl);
      outMessage(url);
      var ww = mapwidth+descrwidth+80;
      var wh = mapheight;
      RouteWindow = window.open(url, "GoogleMapsClientRoute", "width=300,height=400,scrollbars=yes,status=yes");
      //RouteWindow.resizeTo(ww, wh);
      RouteWindow.focus();
    }
    //var RouteWindow;
    function routeDrucken(){
      var mapwidth = 500;
      var mapheight = 800;
      var descrwidth = 300;
      var url = baseurl+"gmclient/route.jsp?from=" + encodeURI(routefrom) + "&to=" + encodeURI(routeto) +  "&locale=de";
      url += "&mapwidth=" + mapwidth + "&mapheight=" + mapheight + "&descrwidth=" + descrwidth;
      outMessage(mybaseurl);
      outMessage(url);
      RouteWindow = window.open(url, "GoogleMapsClientRoute", "width=960,height=800,scrollbars=yes,status=yes,menubar=yes,resizeable=yes");
      RouteWindow.focus();
    }

  function my_search_openGM() {
    outMessage(myInputOrt+myInputStrasse);
    var myInputOrt = document.getElementById("inputort").value;
    var myInputStrasse = document.getElementById("inputstrasse").value;
    if(myCheck(myInputStrasse) == false || myCheck(myInputOrt) == false){
        alert(unescape("Ihre Eingaben beinhalten unerlaubte Sonderzeichen.\nBitte %E4ndern Sie Ihre Anfrage!"));
    }else{
        outMessage(myInputOrt+myInputStrasse);
        outMessage("SucheGM?ort="+(getPreparedParameter(myInputOrt))+"&strasse="+(getPreparedParameter(myInputStrasse))+"&seite=1&SID="+SID+"&srsdata="+mysrsData+"&srsclient=4326");
        //document.getElementById("divSuchergebnis").style.vilsibility = "visible"; 
        // evtl. auskommentieren document.getElementById("divSuchInfo").style.display = "inline"; 
        //document.getElementById("Suchergebnis").style.display = "none";
        document.getElementById("ifSuchergebnis").src=mybaseurl+"SucheGM?ort="+(getPreparedParameter(myInputOrt))+"&strasse="+(getPreparedParameter(myInputStrasse))+"&seite=1&SID="+SID+"&srsdata="+mysrsData+"&srsclient=4326";
        document.getElementById("divSpMapContent").visibility = "hidden";
        document.getElementById("divTreeSelect").visibility = "hidden";
        //document.getElementById("divMapOpener").innerHTML="<img src='"+pfeilImg.src+"' title='"+menuImgText[1]+"'>";
        //document.getElementById("divTreeOpener").innerHTML="<img src='"+pfeilImg.src+"' title='"+menuImgText[3]+"'>";
    }
  }
  
  function my_center_on_coordGM(x,y,name,CID) {
outMessage("my_center_on_coordGM "+x+" "+y+" "+name+" "+CID);
      //document.getElementById("MerkSymbol").src = "MerkSymbol?action=addcircle&SID="+SID+"&xpos="+x+"&ypos="+y;
      //alert('my_center_on_coordGM');
      my_search_close();
      setResultPoint(x,y);
      gmMap.setCenter(new GLatLng(parseFloat(y),parseFloat(x)), gmMap.getZoom());
      //updateLayers();
      
      myHistoryAdd();
  }
  function my_search_show() { 
    outMessage('my_search_show');
    document.getElementById('divSuchergebnis').style.visibility='visible';
    //document.getElementById('ifSuchergebnis').style.visibility='visible';
    //alert('open '+document.getElementById("divSuchergebnis").style.vilsibility);
    document.getElementById("divSuchergebnis").style.display = "inline";
  }
  function my_search_close() {
    document.getElementById('divSuchergebnis').style.visibility='hidden';
    //document.getElementById('ifSuchergebnis').style.visibility='hidden';
  //  alert('close '+document.getElementById("divSuchergebnis").style.vilsibility);
    document.getElementById("divSuchergebnis").style.display = "none";
  }

// ------------------------------------------------------------------------------------------------------------------
//  - Bearbeiten von Such- Parametern:
//  - URI-Kodieren von Parameter
// ------------------------------------------------------------------------------------------------------------------
  function getPreparedParameter(myParam){
    var newParam = myCut(myParam,"%");
    newParam = myCut(newParam,"\"");
    newParam = myCut(newParam,"_");
    return encodeURIComponent(newParam);
  }
// ------------------------------------------------------------------------------------------------------------------
//  - Bearbeiten von Such- Parametern:
//  - Erzetzen von Sonderzeichen
// ------------------------------------------------------------------------------------------------------------------
  function myCut(toCut, spliter){
    var help = toCut.split(spliter);
    var cuted = "";
    for(var i = 0; i < help.length; i++) 
        cuted += help[i];
    return cuted;
  }
// ------------------------------------------------------------------------------------------------------------------
//  - Pruefen von Parametern auf unerlaubten Zeichen:
// ------------------------------------------------------------------------------------------------------------------
  function myCheck(toCheck){
    toCheck = escape(toCheck);
    toCheck = myCut(toCheck, "%E4");  // ae
    toCheck = myCut(toCheck, "%F6");  // oe
    toCheck = myCut(toCheck, "%FC");  // ue
    toCheck = myCut(toCheck, "%DF");  // ss
    toCheck = myCut(toCheck, "%C4");  // AE
    toCheck = myCut(toCheck, "%D6");  // OE
    toCheck = myCut(toCheck, "%DC");  // UE
    toCheck = myCut(toCheck, "%20");  // blank
    toCheck = myCut(toCheck, "%28");  // (
    toCheck = myCut(toCheck, "%29");  // )
    toCheck = myCut(toCheck, "%2C");  // ,
    toCheck = myCut(toCheck, "%27");  // '

    var muster = /^[a-zA-Z0-9]*[a-zA-Z0-9\.\-\+\/\s]*$/;
    var checked = muster.exec(toCheck);
    if(checked == null){
        return false;
    }else{
        return true;
    }
  }

  function showSpMapContents(myObject, divName){
    //alert(divName);
    if(document.getElementById(divName).style.visibility == "visible"){
        document.getElementById(divName).style.visibility = "hidden";
        myObject.srs = pfeilImg.src;
        myObject.title = menuImgText[0];
    }else{
        document.getElementById(divName).style.visibility = "visible";
        myObject.srs = pfeilImg2.src;
        myObject.title = menuImgText[1];
    }
  }

  function showOtherContents(myObject, divName){
    //alert(divName);
    if(document.getElementById(divName).style.visibility == "visible"){
        document.getElementById(divName).style.visibility = "hidden";
        myObject.srs = pfeilImg.src;
        myObject.title = menuImgText[2];
    }else{
        document.getElementById(divName).style.visibility = "visible";
        myObject.srs = pfeilImg2.src;
        myObject.title = menuImgText[3];
    }
  }


  /*
  function my_tree_open() {    
    tree_is_open=true;
    document.getElementById("divTreeSelect").style.visibility = "visible";
    document.getElementById("divTreeOpener").innerHTML="<img onclick='my_tree_close()' src='"+pfeilImg2.src+"' title='"+menuImgText[3]+"'>";
    my_maps_close();
//    my_statistik("action=karteninhalte_open");
  }


// ------------------------------------------------------------------------------------------------------------------
//   - Aufruf in functions.js
//   - schliesst das Drop-Down-Menue-Fenster Weitere Karteninhalte
//   - Aufruf des Statistik-Servlets zum Loggen
// ------------------------------------------------------------------------------------------------------------------
  function my_tree_close() {
    tree_is_open=false;
    document.getElementById("divTreeSelect").style.visibility = "hidden";
    document.getElementById("divTreeOpener").innerHTML="<img onclick='my_tree_open()' src='"+pfeilImg.src+"' title='"+menuImgText[2]+"'>";
//    my_statistik("action=karteninhalte_close");
  }


  function my_maps_open(myObject) {
    maps_is_open=true;
    document.getElementById("divMapSelect").style.visibility = "visible";
    //document.getElementById("divMapOpener").innerHTML="<img onclick='my_maps_close()' src='"+pfeilImg2.src+"' title='"+menuImgText[1]+"'>";
    my_tree_close();
  }
  function my_maps_close() {
    maps_is_open=false;
    document.getElementById("divMapSelect").style.visibility = "hidden";
    //document.getElementById("divMapOpener").innerHTML="<img onclick='my_maps_open()' src='"+pfeilImg.src+"' title='"+menuImgText[0]+"'>";
    //my_statistik("action=spezialkarten_close");
  }
*/

  function my_update_maplayers(val){
    if (val && val==true) symbolchange=true; else symbolchange=false;
    for (var  i = 0; i < myUsemap.length - 1; i++) {
      layers = d.getMaps(i, ", ", "", true);
      if (i==0) {
        symbollayerlist = layers[0];
        symbollayers = layers[0];
        symbollayers_usemap = layers[0];
        symboladhoc = layers[1];
        merklistelayer = "merkliste";
        merklisteadhoc = "DEFAULT|" + webgisDB + ".merkliste|SID!gleich!" + SID + "!and!visible!ungleich!0";
      }
      myUsemap[i][1]=layers[0]+(layers[2]?"&ADHOC="+layers[1]:"");
   }

    /*for (var i = 0; i < myWMS.length - 1; i++) {
      layers2 = d.getMaps(i, ", ", "", false);
//      if (layers2!=null && layers2[0]!=null && layers2[0]!="") tmplayers=layers2[0];
      myWMS[i][1]=layers2[0]+(layers2[2]?"&ADHOC="+layers2[1]:"");
      if (i==0) tmplayers=layers2[0];
    }*/
  }

  function my_subShow(name,show) {
  if (myLegende==false) return;
  obj= document.getElementById(name);
  if (!obj || !obj.getElementsByTagName) { return; }
  var mylis = obj.getElementsByTagName("li");
  if (!mylis) { return; }
  for(var i=0;i<mylis.length;i++) {
    if((mylis[i].style.display == "block" && show!=true) || show==false) {
      obj.previousSibling.style.backgroundImage = "url("+folderOpenImg.src+")";
      mylis[i].style.display = "none";
    } else {
      mylis[i].style.display = "block";
      obj.previousSibling.style.backgroundImage = "url("+folderCloseImg.src+")";
    }
  }
  return true;
}

  function updateLayers() {
    if (GBrowserIsCompatible()) {
        if(featureId){
            /*setKMLRequestFid("GMCLIENTSTYLE", "XML", "4326", featureId);
            outMessage(kmlRequest);
            handleXMLFid(kmlRequest,gmMap,true);*/
        }else{
            setKMLRequest("GMCLIENTSTYLE", "XML", "4326");
            outMessage(kmlRequest);
            handleXML(kmlRequest,gmMap,true);
        }
    }
  }

    function getKMLRequest() {
        return kmlRequest;
    }

    function setKMLRequest(myStyle, myOutputFormat, mySRS) {
        var mySouthWest = gmMap.getBounds().getSouthWest();
        var myNorthEast = gmMap.getBounds().getNorthEast();
        // parameter einfuegen
        kmlRequest = kmlUrl;
        kmlRequest += "&url=jwfs/GetKmlGMC";
        kmlRequest += "&STYLETYPE="+myStyle;
        kmlRequest += "&OUTPUTFORMAT="+myOutputFormat;
        kmlRequest += "&SRSNAME="+mySRS;
        kmlRequest += "&BBOX="+mySouthWest.lng()+"%2C"+mySouthWest.lat()+"%2C"+myNorthEast.lng()+"%2C"+myNorthEast.lat();
        kmlRequest += "&typeName=" + requestLayers;
        
    }

var featureId;
    function updateLayersFid(myid) {
        if (GBrowserIsCompatible()) {
            featureId = myid;
            setKMLRequestFid("GMCLIENTSTYLE", "XML", "4326", myid);
            outMessage(kmlRequest);
            handleXMLFid(kmlRequest,gmMap,true);
        }
    }
    function setKMLRequestFid(myStyle, myOutputFormat, mySRS, featureid) {
        //var mySouthWest = gmMap.getBounds().getSouthWest();
        //var myNorthEast = gmMap.getBounds().getNorthEast();
        // parameter einfuegen
        kmlRequest = kmlUrl;
        kmlRequest += "&url=jwfs/GetKmlGMC";
        kmlRequest += "&STYLETYPE="+myStyle;
        kmlRequest += "&OUTPUTFORMAT="+myOutputFormat;
        kmlRequest += "&SRSNAME="+mySRS;
        kmlRequest += "&featureId=" + featureid;
    }
//    function centerFid(myMap, pointC){
//        gmMap.setCenter(new GLatLng(pointC.lat(), pointC.lng()), gmMap.getZoom());
//    }
    function setMapCenter(myMap, pointC, zoom){
        gmMap.setCenter(new GLatLng(pointC.lat(), pointC.lng()), parseInt(zoom));
    }

      function my_multi_tooltip_open(titel,CID,layer,logo,kurztext) {
            var htmlstring="";
            info_titel=titel; info_CID=CID; info_layer=layer;
            eventID=3;
            tooltip_is_open=true;
            numlayers=0; laynum=0;
            htmlstring+="<table width='190px' rules='rows' frame='void' style='border-spacing: 0px'><colgroup><col width='100%'></colgroup>";
            for (i=0; i<layer.length; i++) {
               if (i==0 || d.mapcheck(layer[i])==true) { // ueberpruefen ob der entsprechende Layer angeklickt ist
                  //if (numlayers>0) htmlstring+="<hr align='center' width='100%' style='min-width: 200px; text-align: center'>";
                  htmlstring+="<tr><td nowrap height='24'>";
                  htmlstring+="<font class='tooltip_titel'>"+titel[i]+"</font><br>";
                  htmlstring+="</td></tr>";
                  numlayers++;
                  laynum=i; 
               }
            }
            htmlstring+="</table>";
            if (numlayers==1) return my_tooltip_open(titel[laynum],CID[laynum],logo[laynum],kurztext);
            tooltip=document.getElementById("divToolTipSmall");
            tooltip.style.paddingTop="0px";
            tooltip.style.paddingBottom="0px";
            tooltip.style.overflow="hidden";
            tooltip.innerHTML=htmlstring;
            tooltipwidth=200;
            tooltipheight=numlayers*12+(numlayers-1)*10+10; // geschaetzte Hoehe
            window.setTimeout("my_tooltip_show()", 400);
            return true;
      }

      function my_tooltip_close() {
        tooltip_is_open=false;
        document.getElementById("divToolTip").style.display="none";
        document.getElementById("divToolTipSmall").style.display="none";
        eventID=0;
      }

  function my_tooltip_open(titel,CID,logo,kurztext) {
    var htmlstring="";
    eventID=3;
    tooltip_is_open=true;
//    if (titel.length>1) htmlstring+="<font class='tooltip_titel'>"+titel+"</font><br>";
//    if (CID.length>1 && logo.length>1) htmlstring+="<img src='GetImg?CID="+CID+"&img="+logo+"' alt='' width='50' align='right' style='padding-left: 2px'></img>";
    if (kurztext.length>1) htmlstring+=" "+kurztext;

    if (kurztext.length>1) {
       tooltip=document.getElementById("divToolTip");
       tooltip.style.display="none";
       tooltipwidth=200;
       tooltipheight=50;
    }
    else {
       tooltip=document.getElementById("divToolTipSmall");
       tooltip.style.display="none";
       tooltip.style.paddingTop="5px";
       tooltip.style.paddingBottom="5px";
       tooltip.style.overflow="auto";
       tooltipwidth=titel.length*6; // geschaetzte Breite
       if (tooltipwidth>200) tooltipwidth=200;
       tooltipheight=20;
    }
    tooltip.innerHTML=htmlstring;
    window.setTimeout("my_tooltip_show()", 400);
    return true;
  }

  function my_tooltip_show() {
    if (tooltip_is_open==true) tooltip.style.display="inline";
    eventID=0;
  }

  

// Gerstner: ersetze layerMenu durch divInfoBox (4x)
function my_moveIFrame() {
  document.onmousedown = my_moveIFrameStart;
  document.onmousemove = my_moveIFrameRun;
  document.onmouseup = my_moveIFrameStop;
}

function my_moveIFrameStart(e) {
  my_getMousePos(e);
  myStartXY[0] = parseInt(document.getElementById("divInfoBox").style.left);
  myStartXY[1] = parseInt(document.getElementById("divInfoBox").style.top);
  myEndXY[0] = myMouseXY[0]-myStartXY[0];
  myEndXY[1] = myMouseXY[1]-myStartXY[1];
  return false;
}

function my_moveIFrameRun(e) {
  my_getMousePos(e);
  var tmp = new Array(myMouseXY[0]-myEndXY[0],myMouseXY[1]-myEndXY[1]);
  infowidth = parseInt(infobox.style.width);
  infoheight = parseInt(infobox.style.height);
// Gerstner: Check auf Verlassen des Gebiets
  if (tmp[0]+infowidth+2>myMapPos[0]+myMapSize[0]) tmp[0]=myMapPos[0]+myMapSize[0]-infowidth-2;
  else if (tmp[0]<myMapPos[0]+2) tmp[0]=myMapPos[0]+2;
  if (tmp[1]+infoheight+2>myMapPos[1]+myMapSize[1]) tmp[1]=myMapPos[1]+myMapSize[1]-infoheight-2;
  else if (tmp[1]<myMapPos[1]+2) tmp[1]=myMapPos[1]+2; 
// Gerstner: +px
  document.getElementById("divInfoBox").style.left = tmp[0]+"px";
  document.getElementById("divInfoBox").style.top = tmp[1]+"px";
}

function my_moveIFrameStop(e) {
  eventID=2;
  document.onmousedown = null;
  document.onmousemove = document_move;
  document.onmouseup = null;
//  my_setKeyhandler();
}

  function document_move(e) {
    if (eventID==3) { // Tooltip open
      my_getMousePos(e);
//      tooltipwidth = 200;  //parseInt(tooltip.style.width);
//      tooltipheight = 50; //parseInt(tooltip.style.height);
//      shiftx=10; shifty=10;
      if (myMouseXY[0]+tooltipwidth+2>myMapSize[0]-10) shiftx=-tooltipwidth-10-2; else shiftx=10;
//      if (myMouseXY[1]+tooltipheight+2>myMapSize[1]-10) shifty=-tooltipheight-10-2; else shifty=10;
      shifty=10;
      tooltip.style.left = (myMapPos[0]+myMouseXY[0]+shiftx)+"px";     
      tooltip.style.top = (myMapPos[1]+myMouseXY[1]+shifty)+"px";
    }
  }

  function my_merkliste_update() {
    document.getElementById("BoundingBox").src = mybaseurl+"url=mindwerk/BoundingBox&SID="+SID;
    //my_statistik("action=merkliste_update");
  }

  function my_merkliste_print() {
      PrintWindow = window.open("drucken.jsp?SID="+SID, "myWMSClient", "width="+(myMapSize[0]+40)+",height="+(myMapSize[1]+160));
      PrintWindow.focus();
  }

  function my_merkliste_print() {
    
    //if (pluginlist.indexOf("Acrobat Reader")==-1) my_printinfo_open();
/*    if (OneLayer==true) {
      myWMSPlot = my_assemble_print_wms(myWMS[0][0])+"&LAYERS="+wmslayers+wmsextra_layers;
      window.open("Print_Merkliste?SID="+SID+"&wms="+encodeURIComponent(myWMSPlot)+"&adhoc="+wmsadhoc,'PLOT','menubar=no,status=no,resizable');
      //document.getElementById("Print").src = "Print_Merkliste?CID="+CID+"&wms="+encodeURIComponent(myWMSPlot)+"&adhoc="+wmsadhoc;
    }
    else {
      myWMSPlot = my_assemble_print_wms(myWMS[0][0])+"&LAYERS="+tmplayers+wmsextra_layers;
      myWMSPlot2 = my_assemble_print_wms(myWMS[1][0]);
      window.open("Print_Merkliste?SID="+SID+"&wms="+encodeURIComponent(myWMSPlot)+"&wms2="+encodeURIComponent(myWMSPlot2),'PLOT','menubar=no,status=no,resizable');
      //document.getElementById("Print").src = "Print_Merkliste?SID="+SID+"&wms="+encodeURIComponent(myWMSPlot)+"&wms2="+encodeURIComponent(myWMSPlot2);
    }
*/  
  }

  function my_update_bbox(minx,miny,maxx,maxy) {
    document.getElementById("MerkListe").src = mybaseurl+"url=mindwerk/MerkListe&SID="+SID+"&action=display";
 /*   if (minx!=null && miny!=null & maxx!=null && maxy!=null) {
      myBBox[0]=minx;
      myBBox[1]=miny;
      myBBox[2]=maxx;
      myBBox[3]=maxy;
      my_getXYSc();
      //my_repaintXYSc();
    }
*/
  }

function my_multi_infobox_open() {
    if (myTourMode==true) return;
    var titel=info_titel; var CID=info_CID; var layer=info_layer; var table=info_table;
//    var htmlstring="<div id='divInfoBoxTag' onmousedown='my_moveIFrame()'>Auswahlfenster</div><div id='divInfoBoxClose'><img onclick='my_infobox_close()' src='"+InfoExitImg.src+"'></div><div id='divInfoBoxSelect'>";
    var htmlstring="";
    curCID=100;
    eventID=1;
    infobox_is_open=true;
    numlayers=0; laynum=0;
    //htmlstring+="<table width='100%' class='tabelle' rules='rows' frame='void'>";
    for (i=0; i<layer.length; i++) {
       if (i==0 || d.mapcheck(layer[i])==true) {
          if (numlayers>0) htmlstring+="<hr width='100%'>";
          //htmlstring+="<tr class='tr0'><td>";
          htmlstring+="<font class='tooltip_titel' style='cursor: pointer;' onclick='my_inner_infobox_open("+CID[i]+")'>"+titel[i]+"</font><br>";
          //htmlstring+="</td></tr>";
          numlayers++;
          laynum=i;
       }
    }
    alert(baseurl);
    //htmlstring+="</table>";
//    htmlstring+="</div>";
    if (numlayers==1) return my_infobox_open(CID[laynum],table);
//    document.getElementById("divInfoBoxSelect").style.overflow="auto";
    document.getElementById("InfoBox").style.visibility="hidden";
    document.getElementById("divInfoBoxSelect").innerHTML=htmlstring;
    document.getElementById("divInfoBoxSelect").style.visibility="visible";
    my_set_infobox_title("Auswahlfenster", false);
    document.getElementById("divInfoBox").style.visibility="visible";
    return true;
  }


// ------------------------------------------------------------------------------------------------------------------
//   - Aufruf in my_multi_infobox_open() (functions.js) 
//   - wird benoetigt, damit das Infobox-Fenster stehen bleibt
// ------------------------------------------------------------------------------------------------------------------
  function my_inner_infobox_open(CID,table) {
    my_infobox_open(CID,table);
    eventID=0;
    return false;
  }


// ------------------------------------------------------------------------------------------------------------------
//   - wird aufgerufen, wenn der Benutzer auf ein Icon in der Karte klickt
//   - Aufruf des Servlets InfoBox
//   - Aufruf des Statistik-Servlets zum Loggen
// ------------------------------------------------------------------------------------------------------------------
  function my_infobox_open(CID,table) {
    curCID=CID;
    eventID=1;
    infobox_is_open=true;
    document.getElementById("divInfoBox").style.overflow="hidden";

    // Fuer Editier-Modus (Eva: 16.April 2007)
    document.getElementById("divInfoBoxSelect").style.visibility="hidden";
    document.getElementById("InfoBox").style.visibility="hidden";
    document.getElementById("InfoBox").src=mybaseurl+"url=mindwerk/InfoBox&contenttype=html&CID="+CID+"&SID="+SID+"&Edit="+myEdit+(table!=null?"&Meta="+table:"");

    return true;
  }

// ------------------------------------------------------------------------------------------------------------------
//   - Aufruf in index.jsp, document_click() (functions.js) und my_multi_infobox_open() (functions.js)
//   - schliesst das Infobox-Fenster (Schliess-Button sowie beliebiger Klick in die Karte)
//   - Aufruf des Statistik-Servlets zum Loggen
// ------------------------------------------------------------------------------------------------------------------
  function my_infobox_close() {
    eventID=0;
    infobox_is_open=false;
    document.getElementById("divInfoBox").style.visibility = "hidden";
    document.getElementById("divInfoBoxSelect").style.visibility = "hidden";
    document.getElementById("InfoBox").style.visibility = "hidden";
    //my_statistik("CID="+curCID+"&action=infobox_close");
    return true;
  }


// ------------------------------------------------------------------------------------------------------------------
//   - Aufruf in my_multi_infobox_open() (functions.js) sowie in InfoBox.java
//   - setzt den Titel der Infobox auf Visitenkarte, Grundeintrag, etc.
// ------------------------------------------------------------------------------------------------------------------
  function my_set_infobox_title(title, show) {
    document.getElementById("divInfoBoxTag").innerHTML = title;
    if (show==true && infobox_is_open==true) document.getElementById("InfoBox").style.visibility="visible";
  }

  function my_add_to_merkliste(CID) {
    document.getElementById("MerkListe").src = mybaseurl+"url=mindwerk/MerkListe&SID="+SID+"&CID="+CID+"&action=add";
  }

  function my_statistik(stat) {

  }

// ------------------------------------------------------------------------------------------------------------------
//   - Aufruf in InfoBox.java
//   - oeffnet das Info-Fenster zur Merkliste
// ------------------------------------------------------------------------------------------------------------------
  function my_merkinfo_open() {
    if (merkinfo_show == true) document.getElementById("divMerkInfo").style.display = "inline";
  }


// ------------------------------------------------------------------------------------------------------------------
//   - Aufruf in InfoBox.java
//   - schliesst das Info-Fenster zur Merkliste
// ------------------------------------------------------------------------------------------------------------------
  function my_merkinfo_close() {
    document.getElementById("divMerkInfo").style.display = "none";
    return false;
  }
// ------------------------------------------------------------------------------------------------------------------
//   - Aufruf in Merkliste.java (Servlet) 
//   - Karte neu zeichnen mit rotem Merkfaehnchen
// ------------------------------------------------------------------------------------------------------------------
  function my_merkbox_action() {
    //my_merkbox_open();
    symbolchange=true;
    //my_repaintXYSc();
  }

  function my_infobox_print(CID,table) {
  //  if (pluginlist.indexOf("Acrobat Reader")==-1) my_printinfo_open();
 /*   if (OneLayer==true) {
      myWMSPlot = my_assemble_print_wms(myWMS[0][0])+"&LAYERS="+wmslayers+wmsextra_layers;
      window.open("Print_InfoBox?CID="+CID+"&wms0="+encodeURIComponent(myWMSPlot)+"&adhoc="+wmsadhoc,'PLOT','menubar=no,status=no,resizable');
      //document.getElementById("Print").src = "Print_InfoBox?CID="+CID+"&wms="+encodeURIComponent(myWMSPlot)+"&adhoc="+wmsadhoc+(table!=null?"&Meta="+table:"");
    }
    else {
      var plot="";
      var j=0;
      for (var i=0;i<myWMS.length;i++) {
        if (myWMS[i][5]==true && myWMS[i][1]!="") {
          var wms=my_assemble_print_wms(myWMS[i][0])+"&LAYERS="+myWMS[i][1];
          plot+="&wms"+j+"="+encodeURIComponent(wms);
          j=j+1;
        }
      }
      window.open("Print_InfoBox?CID="+CID+"&embed="+myPrintMode+plot+(table!=null?"&Meta="+table:""),'PLOT','menubar=no,status=no,resizable');
    }
    //my_statistik("CID="+CID+"&action=infobox_drucken");
*/
  }

    


var divToMove;
var minXToMove = 0;
var maxXToMove = 0;
var minYToMove = 0;
var maxYToMove = 0;

var posDel =  new Array(0,0);

    function my_moveSlider() {
        divToMove = document.getElementById("divSliderIcon");
        my_moveDiv(parseInt(document.getElementById("divSliderIcon").style.left), 
                 parseInt(document.getElementById("divSliderIcon").style.left), 
                 parseInt(document.getElementById("divSlideBarIcon").style.top), 
                 parseInt(document.getElementById("divSlideBarIcon").style.top) + slidebarHeight - sliderHeight);
    }

    function my_moveDiv(minX, maxX, minY, maxY) {
        outMessage(divToMove+' '+minX+' '+maxX+' '+minY+' '+maxY);
        //divToMove = myDivToMove;
        minXToMove = minX;
        maxXToMove = maxX;
        minYToMove = minY;
        maxYToMove = maxY;  
        document.onmousedown = my_moveDivStart;
        document.onmousemove = my_moveDivRun;
        document.onmouseup = my_moveDivStop;
    }

    function my_moveDivStart(e) {
        my_getMousePos(e);
        posDel[0] = myMouseXY[0] - parseInt(divToMove.style.left);
        posDel[1] = myMouseXY[1] - parseInt(divToMove.style.top);
        return false;
    }

    function getMyEndPos(pos, posMin, posMax){
        if(pos < posMin)
            return posMin;
        else if(pos > posMax)
            return posMax;
        else
            return pos;
    }

    function my_moveDivRun(e) {
        my_getMousePos(e);
        divToMove.style.left  = getMyEndPos(myMouseXY[0] - posDel[0], minXToMove, maxXToMove) + "px";
        divToMove.style.top   = getMyEndPos(myMouseXY[1] - posDel[1], minYToMove, maxYToMove) + "px";
    }

    function my_moveDivStop(e) {
        document.onmousedown = null;
        document.onmousemove = null;
        document.onmouseup = null;
        zoomInOut(parseInt(divToMove.style.top));
    }

    function routeBerechneLocal(){
        var myZielPLZ = document.getElementById("zielPLZ").value;
        var myZielOrt = document.getElementById("zielOrt").value;
        var myZielStrasse = document.getElementById("zielStrasse").value;
        var myZielRW = document.getElementById("zielRW").value;
        var myZielHW = document.getElementById("zielHW").value;

        var myStartPLZ = document.getElementById("startPLZ").value;
        var myStartOrt = document.getElementById("startOrt").value;
        var myStartStrasse = document.getElementById("startStrasse").value;
        var to = "";
        var from = "";

        if(myZielPLZ.length == 0 && myZielOrt.length == 0){
            if(myZielRW.length == 0 && myZielHW.length  == 0){
                alert('Die Ziel- Position ist nicht eingetragen.');
                return;
            }else{
                to += myZielHW+','+myZielRW;
            }

        }else{
            to += ',,'+myZielStrasse+','+myZielPLZ+','+myZielOrt+',,,DE';
        }

        if(myStartPLZ.length == 0 && myStartOrt.length == 0){
            alert('Die Start- Position ist nicht eingetragen.');
            return;
        }else{
            from += ',,'+myStartStrasse+','+myStartPLZ+','+myStartOrt+',,,DE';
        }

        url += "&from=" + encodeURI(from) + "&to=" + encodeURI(to) + "&locale=de";
        if(myCID)
            url += "&CID="+myCID;
        window.location.href = url;
    }
/*
var divToMove;
var divWidth = 0;
var divHeight = 0;
var divPos =  new Array(0,0);
var divPosDel =  new Array(0,0);

var minXToMove = 0;
var maxXToMove = 0;
var minYToMove = 0;
var maxYToMove = 0;

    function my_moveSlider() {
        my_moveDiv("divSliderIcon", parseInt(document.getElementById("divSliderIcon").style.left), 
                 parseInt(document.getElementById("divSliderIcon").style.left), 
                 parseInt(document.getElementById("divSlideBarIcon").style.top), 
                 parseInt(document.getElementById("divSlideBarIcon").style.top) + slidebarHeight - sliderHeight);
    }

    function my_moveDiv(myDivToMove, minX, maxX, minY, maxY) {
        outMessage(divToMove+' '+minX+' '+maxX+' '+minY+' '+maxY);
        //divToMove = myDivToMove;
        divToMove = document.getElementById(myDivToMove);
        divWidth = parseInt(divToMove.style.width);
        divHeight = parseInt(divToMove.style.height);
        minXToMove = minX;
        maxXToMove = maxX;
        minYToMove = minY;
        maxYToMove = maxY;  
        document.onmousedown = my_moveDivStart;
        document.onmousemove = my_moveDivRun;
        document.onmouseup = my_moveDivStop;
    }

    function my_moveDivStart(e) {
        my_getMousePos(e);
        divPos[0] = parseInt(divToMove.style.left);
        divPos[1] = parseInt(divToMove.style.top);
        divPosDel[0] = myMouseXY[0] - divPos[0];
        divPosDel[1] = myMouseXY[1] - divPos[1];
        return false;
    }

    function getMyEndPos(pos, posMin, posMax){
        if(pos < posMin)
            return posMin;
        else if(pos > posMax)
            return posMax;
        else
            return pos;
    }

    function my_moveDivRun(e) {
        my_getMousePos(e);
        if(divPos[0] >= myMouseXY[0])
            divPos[0] = getMyEndPos(myMouseXY[0] - divPosDel[0]-2, minXToMove, maxXToMove);
        else if((divPos[0] + divWidth) <= myMouseXY[0])
            divPos[0] = getMyEndPos(myMouseXY[0] - divPosDel[0]+2, minXToMove, maxXToMove);
        else
            divPos[0] = getMyEndPos(myMouseXY[0] - divPosDel[0], minXToMove, maxXToMove);
            
        if(divPos[1] >= myMouseXY[1])
            divPos[1] = getMyEndPos(myMouseXY[1] - divPosDel[1]-2, minXToMove, maxXToMove);
        else if((divPos[1] + divHeight) <= myMouseXY[0])
            divPos[1] = getMyEndPos(myMouseXY[1] - divPosDel[1]+2, minXToMove, maxXToMove);
        else
            divPos[1] = getMyEndPos(myMouseXY[1] - divPosDel[1], minYToMove, maxYToMove);

        divToMove.style.left = divPos[0] + "px";
        divToMove.style.top  = divPos[1] + "px";
    }

    function my_moveDivStop(e) {
        document.onmousedown = null;
        document.onmousemove = null;
        document.onmouseup = null;
    }
*/
