if (frame_document('MapFrame')){
	var dom_ziel = 'parent.';
}
else {
	var dom_ziel = '';
}
//alert("programmiermeldung1");
var anzahl = 0;
var left_array =  new Array();
var top_array = new Array();
var left2_array = new Array();
var top2_array = new Array();
var myX_array = new Array();
var myY_array = new Array();
var myX2_array = new Array();
var myY2_array = new Array();
var geo_id_array = new Array();
var ausrichtung_array = new Array();
var infotext_array = new Array();
var text_array = new Array();
var symbol_name_array = new Array();
var symbol_width_array = new Array();
var symbol_height_array = new Array();
var info_x=0;
var info_y=0;
function build_result(my_leftOffset,my_topOffset,printen,midx,midy){
	var temp_str ="";	
	var reslay = frame_document('ResultFrame').getElementById("resultlayers");
	if (reslay){
		var resultlayers = reslay.value;
		var resultlayersliste = resultlayers.split(String.fromCharCode(167));
		if (resultlayersliste[0]){
			var k = 0;
		}
		else {
			var k = 1;
		}
		for (var j=k; j < resultlayersliste.length; ++j){
			var layerparameter = resultlayersliste[j].split("*");
			var layer_longname = layerparameter[0];
			//layer_longname  = layer_longname.replace(/String.fromCharCode(167)/,"");
			var symbol_name = layerparameter[1];
			var symbol_width = parseInt(layerparameter[2]);
			var symbol_height = parseInt(layerparameter[3]);
			if (symbol_width == '' || symbol_width == '0'){
				symbol_width = 0;
				symbol_height = 0;
				var symbolbreite = 'no';
			}
			else {
				var symbolbreite = 'yes';
			}
			var symbol_factor_x = Number(layerparameter[4]);
			var symbol_factor_y = Number(layerparameter[5]);
			var symbol_offset_x = Number(layerparameter[6]);
			var symbol_offset_y = Number(layerparameter[7]);
			var symbol_einheit = Number(layerparameter[8]);
			var mouseover = 1;
			if (printen){
				mouseover = 0;
			}
			if (layerparameter[9]){
				mouseover =parseInt(layerparameter[9]);
			}
			if (symbol_einheit == 1){
				symbol_width = symbol_width/pixelmeter;
				symbol_height = symbol_height/pixelmeter;
			}
			anzahl = frame_document('ResultFrame').getElementById('comment_'+layer_longname).value;
			var result = frame_document('ResultFrame').getElementById(layer_longname).value;
			var markereintrag = frame_document('ResultFrame').getElementById('marker_koord_'+layer_longname).value;
			//alert("softwaretest:"+result);
			if (anzahl > 500 ){
				var Check = confirm("In Ihrem Kartenausschnitt liegen "+ anzahl +" Objekte.\n Sollen diese wirklich gezeichnet werden?");
			}
			else {
				var Check = true;
			}
			if (layer_longname == "Kindergarteneinrichtungen"){
				if(frame_document('ResultFrame').getElementById('kigan_anzahl') ){
					var kigan_anzahl = frame_document('ResultFrame').getElementById('kigan_anzahl').value;
					var kigan_zaehler = frame_document('ResultFrame').getElementById('kigan_zaehler').value;
					if(kigan_anzahl == 0 ){
						var label = "Keine Einrichtung entspricht Ihrer Umkreissuche.";
					}
					if (kigan_zaehler == 1){
						var label = kigan_zaehler+"&nbsp;von&nbsp;"+kigan_anzahl+"&nbsp;Objekten&nbsp;Ihrer&nbsp;Umkreissuche&nbsp;wird&nbsp;gezeigt";
					}
					if (kigan_anzahl > 1){
						var label = kigan_zaehler+"&nbsp;von&nbsp;"+kigan_anzahl+"&nbsp;Objekten&nbsp;Ihrer&nbsp;Umkreissuche&nbsp;werden&nbsp;gezeigt";
					}
					document.getElementById('label_div').innerHTML = label;
					document.getElementById('label').value = "Umkreissuche";
				}
			}
			if(Check == true){
				if (markereintrag && printen != 9){
					marker_koord = frame_document('ResultFrame').getElementById('marker_koord_'+layer_longname).value;
					var marker_real = markereintrag.split(",");
					var marker_pix = makeRealWorld2mapPos(marker_real[0],marker_real[1]);
					temp_str = temp_str + "<img  style=\'position:absolute; left:"+(marker_pix[0]-18)+"px; top:"+(marker_pix[1]-18)+"px;z-index:9\'  src=\'../../mapbender/images/marker_quad_rot.gif\' width=\'36\' height=\'36\'>";
				}

				var sets = result.split(String.fromCharCode(167));
				var themahash =  layer_longname.split("µ");
				var thema =  themahash[0];
				left_array =  new Array();
				top_array = new Array();
				left2_array = new Array();
				top2_array = new Array();
				myX_array = new Array();
				myY_array = new Array();
				myX2_array = new Array();
				myY2_array = new Array();
				geo_id_array = new Array();
				ausrichtung_array = new Array();
				infotext_array = new Array();
				text_array = new Array();
				symbol_name_array = new Array();
				symbol_width_array = new Array();
				symbol_height_array = new Array();
				farbwert_array = new Array();
				farbparams_array = new Array();
				distanz_array = new Array();
				rechtswert_array = new Array();
				hochwert_array = new Array();
				multi_symbol_width_array= new Array();
				multi_symbol_height_array= new Array();
				multi_symbol_highest_array= new Array();
				bildaufruf_array = new Array();
				rgb_array= new Array();
				for (var i=1; i < sets.length; ++i){
					var name = thema + i;
					var werte = sets[i].split("&");
					werte[0] = werte[0].replace(/xxx/g,"\/");
					var beschreibung_array = werte[0].split("µ");
					if (symbol_name.search(/text/)> -1){
						if (beschreibung_array[1]){  //es gibt text, der nicht in der Karte kommen soll sondern nur beim mouseover
							text_array[i] = beschreibung_array[0];
							infotext_array[i] = beschreibung_array[0] + beschreibung_array[1];
							infotext_array[i] = infotext_array[i].replace(/ /,"&nbsp;");
						}
						else {
							text_array[i] = werte[0];
							infotext_array[i] = werte[0];
						}
					}
					else {
						if (beschreibung_array[1]){  
							bildaufruf_array[i] = beschreibung_array[1];
							bildaufruf_array[i] = bildaufruf_array[i].replace(/xxx/g,"\/");
							infotext_array[i] = beschreibung_array[0];
							infotext_array[i] = infotext_array[i].replace(/ /,"&nbsp;");
						}
						else {
							infotext_array[i] = werte[0];
							infotext_array[i] = infotext_array[i].replace(/µ/,"&nbsp;");
						}					
					}
					left_array[i] = parseInt(werte[1]) + parseInt(my_leftOffset) +5; 
					top_array[i] = parseInt(werte[2]) + parseInt(my_topOffset) +5;
					geo_id_array[i] = werte[5];
					ausrichtung_array[i] = werte[6];
					if (werte[3] != ""){
						if (symbol_name.search(/div/)> -1){
							farbwert_array[i] = werte[3];
						}
						symbol_name_array[i] = symbol_name.replace(/&/,werte[3]);
					}
					else {
						symbol_name_array[i] = symbol_name;
					}
					if (symbolbreite == 'no'){
						if (werte[7] != ""){
							symbol_width=1;
							symbol_height=1;						
						}
						else {
							symbol_width=20;
							symbol_height=20;
						}
					}
					symbol_width_array[i] = symbol_width * symbol_factor_x;
					symbol_height_array[i] = symbol_height * symbol_factor_y;
					if (werte[4] != ""){
						symbol_width_array[i] = symbol_width_array[i] * parseInt(werte[4]);
						symbol_height_array[i] = symbol_height_array[i] * parseInt(werte[4]);
					}
					if (werte[7] != ""){
						if (werte[7].search(/µ/)> -1){
							multi_symbol_width_array[i] = werte[7];
							var multi_width_werte = werte[7].split("µ");
							var breitest =0;
							for (var e=0; e < multi_width_werte.length; ++e){
								if (multi_width_werte[e] > breitest){
									breitest = parseFloat(multi_width_werte[e]);
								}
							}
							werte[7] = breitest;
						}
						symbol_width_array[i] = symbol_width_array[i] * parseInt(werte[7]);
					}
					if (werte[8] != ""){
						if (werte[8].search(/µ/)> -1){
							multi_symbol_height_array[i] = werte[8];
						}
						else {
							symbol_height_array[i] = symbol_height_array[i] * parseInt(werte[8]);
						}
					}
					if (werte[9] != ""){
						rechtswert_array[i] = werte[9];
						hochwert_array[i] = werte[10];
					}
					if (printen == 9 && midx){
						distanz_array[i]= Math.round(Math.sqrt(Math.pow((parseInt(werte[9])-midx),2) + Math.pow((parseInt(werte[10])-midy),2)));
					}
					if (parseInt(symbol_width_array[i]) <= '100'){
						symbol_name_array[i] = symbol_name_array[i].replace(/µµ/,'_100');
					}
					if (parseInt(symbol_width_array[i]) <= '200' && parseInt(symbol_width_array[i]) > '100'){
						symbol_name_array[i] = symbol_name_array[i].replace(/µµ/,'_200');
					}
					if (parseInt(symbol_width_array[i]) <= '300' && parseInt(symbol_width_array[i]) > '200'){
						symbol_name_array[i] = symbol_name_array[i].replace(/µµ/,'_300');
					}
					if (parseInt(symbol_width_array[i]) > '300'){
						symbol_name_array[i] = symbol_name_array[i].replace(/µµ/,'_500');
					}
					var verschub_width = symbol_width_array[i]/2;
					var verschub_height = symbol_height_array[i]/2;	
					if (symbol_name_array[i].search(/text/)> -1 && layer_longname.search(/Bodenrichtwert/)== -1){
						verschub_width = 0;
					}
					if (ausrichtung_array[i] == 1){
						verschub_width = symbol_width_array[i];
						verschub_height = symbol_height_array[i];	
					}
					if (ausrichtung_array[i] == 2){
						verschub_width = symbol_width_array[i]/2;
						verschub_height = symbol_height_array[i];	
						if (symbol_name_array[i].search(/text/)> -1 && layer_longname.search(/Bodenrichtwert/)== -1){
							verschub_width = 0;
						}		
					}
					if (ausrichtung_array[i] == 3){
						verschub_width = 0;
						verschub_height = symbol_height_array[i];
						if (symbol_name_array[i].search(/text/)> -1 && layer_longname.search(/Bodenrichtwert/)== -1){
							verschub_width = (symbol_width_array[i])*-1;
						}						
					}
					if (ausrichtung_array[i] == 4){
						verschub_width = 0;
						verschub_height = symbol_height_array[i]/2;	
						if (symbol_name_array[i].search(/text/)> -1 && layer_longname.search(/Bodenrichtwert/)== -1){
							verschub_width = (symbol_width_array[i])*-1;
						}
					}
					if (ausrichtung_array[i] == 5){
						verschub_width = 0;
						verschub_height = 0;	
						if (symbol_name_array[i].search(/text/)> -1 && layer_longname.search(/Bodenrichtwert/)== -1){
							verschub_width = (symbol_width_array[i])*-1;
							verschub_height = (symbol_height_array[i])*-1;
						}
					}
					if (ausrichtung_array[i] == 6){
						verschub_width = symbol_width_array[i]/2;
						verschub_height = 0;	
						if (symbol_name_array[i].search(/text/)> -1 && layer_longname.search(/Bodenrichtwert/)== -1){
							verschub_width = 0;
							verschub_height = (symbol_height_array[i])*-1;
						}
					}
					if (ausrichtung_array[i] == 7){
						verschub_width = symbol_width_array[i];
						verschub_height = 0;	
						if (symbol_name_array[i].search(/text/)> -1 && layer_longname.search(/Bodenrichtwert/)== -1){
							verschub_height = (symbol_height_array[i])*-1;
						}
					}
					if (ausrichtung_array[i] == 8){
						verschub_width = symbol_width_array[i];
						verschub_height = symbol_height_array[i]/2;	
					}
					myX_array[i] = parseInt(werte[1])+1 + symbol_offset_x - verschub_width;
					myY_array[i] = parseInt(werte[2])+1 + symbol_offset_y - verschub_height;
					myX2_array[i] = parseInt(werte[1])+1 + symbol_offset_x ;
					myY2_array[i] = parseInt(werte[2])+1 + symbol_offset_y ;
				}   //nun sind alle arrays gefüllt.
				var ab = 0;
				var zaehler = 0;
				var geo_id_sammel = '';
				var infotext_sammel = '';
				var text_sammel = '';
				if (printen == 9){
					if (midx){
						reihenfolge_array = new Array();
						var index=1;
						for (var j=1; j < infotext_array.length; ++j){
							var vergleich = 50000000;
							for (var i=1; i < infotext_array.length; ++i){	
								if (distanz_array[i] <= vergleich){
									var zielobjekt = i;
									vergleich=distanz_array[i];
								}
							}
							distanz_array[zielobjekt]=distanz_array[zielobjekt] + 50000000;
							reihenfolge_array[index]=zielobjekt;
							index++;
						}
					}
					if (!amount){
						amount=infotext_array.length;
					}
					if (amount > infotext_array.length){
						amount=infotext_array.length;
					}
					for (var i=1; i < amount; ++i){
						if (midx){
							var nummer = reihenfolge_array[i];
						}
						else {
							var nummer = i;
						}
						var aufruf='../../mapbender/daten/db_meta.pl?Standard=10&selLayer='+thema+'&GeoID='+geo_id_array[nummer];
						merkliste_hinzufuegen(geo_id_array[nummer],rechtswert_array[nummer], hochwert_array[nummer], infotext_array[nummer]+' in '+ (distanz_array[nummer]-50000000)+' m', aufruf);
					}
				}
				else {
					for (var i=1; i < infotext_array.length; ++i){	
						if (left_array[i] > parseInt(left_array[i+1] -10) && left_array[i] < parseInt(left_array[i+1] + 10) && top_array[i] > parseInt(top_array[i+1] -10) && top_array[i] < parseInt(top_array[i+1] +10) ){ 
						//nächste Koordinate liegt im gleichen Bereich
							if (ab == 0){   //erster Kettenpunkt
								ab = i;
								geo_id_sammel = geo_id_array[i] + 'µ';
								infotext_sammel = infotext_array[i] + '<BR>';
								text_sammel = text_array[i] + '<BR>';
							}
							else {
								if (left_array[i] > parseInt(left_array[ab] - 10) && left_array[ab] < parseInt(left_array[ab] + 10) && top_array[i] > parseInt(top_array[ab] - 210) && top_array[i] < parseInt(top_array[ab] +10) ){ 
								//erste kettenkoordinate liegt im gleichen Bereich
									//if (geo_id_array[i] != geo_id_array[i-1]){        //wegen eigentümer umgestellt auf infotextgleichheit
									if (geo_id_array[i] != geo_id_array[i-1] || infotext_array[i] != infotext_array[i-1]){
										geo_id_sammel = geo_id_sammel + geo_id_array[i] + 'µ';
										infotext_sammel = infotext_sammel + infotext_array[i] + '<BR>';
										text_sammel = text_sammel + text_array[i] + '<BR>';	
									}
								}
							}
							zaehler = zaehler + 1;
						}
						else {  //nächste Koordinate liegt nicht mehr im gleichen Bereich oder lag nie im Bereich
							if (ab > 0){  //Zusammenstellen der bisherigen Wiederholungstexte
								if (left_array[i] > parseInt(left_array[ab] -10) && left_array[ab] < parseInt(left_array[ab] + 10) && top_array[i] > parseInt(top_array[ab] -10) && top_array[i] < parseInt(top_array[ab] +10) ){ 
								//erste kettenkoordinate liegt im gleichen Bereich
									//if (geo_id_array[i] != geo_id_array[i-1]){ //wegen eigentümer umgestellt auf infotextgleichheit
									if (geo_id_array[i] != geo_id_array[i-1] || infotext_array[i] != infotext_array[i-1]){
										geo_id_sammel = geo_id_sammel + geo_id_array[i] + 'µ';
										infotext_sammel = infotext_sammel + infotext_array[i] + '<BR>';
										text_sammel = text_sammel + text_array[i] + '<BR>';	
									}
								}
								for (var k=ab; k < i; ++k){
									if (parseInt(left_array[k]) == parseInt(left_array[i]) && parseInt(top_array[k]) == parseInt(top_array[i]) ){ 
										infotext_array[k] = '';
										geo_id_array[k] = '';
										text_array[k] = '';
									}
									else {
										infotext_array[k] = infotext_sammel;
										geo_id_array[k] = geo_id_sammel;
										text_array[k] = text_sammel;									
									}
								}
								infotext_array[i] = infotext_sammel;
								geo_id_array[i] = geo_id_sammel;
								text_array[i] = text_sammel;
								if (parseInt(i-ab) > 4){
									text_array[i] = 'diverse';
								}
								ab = 0;
							}
						}
					}
					for (var i=1; i < infotext_array.length; ++i){	
						var symbol_name_hash = symbol_name_array[i].split("µ");
						if (symbol_width_array[i] > 0){
							var imagesizetag = "width=\'"+symbol_width_array[i]+"\' height=\'"+symbol_height_array[i]+"\'";
						}
						else {
							symbol_width_array[i] = 0;
							symbol_height_array[i] = 0;
							var imagesizetag = "";
						}
						var myleft = parseInt(myX2_array[i]) + parseInt(my_leftOffset); 
						var mytop = parseInt(myY2_array[i]) + parseInt(my_topOffset);
						if (symbol_name_hash[0] == 'text'){
							temp_str = temp_str + "<div  style=\'position:absolute; left:"+myX_array[i]+"px; top:"+myY_array[i]+"px;z-index:20;\' class=\'"+symbol_name_hash[1]+"\'";
							if (mouseover == 1){
								temp_str = temp_str + "  onMouseover=\'"+dom_ziel+"infozeigen("+myleft+","+mytop+",35,\""+thema+"\",\""+infotext_array[i]+"\",\""+geo_id_array[i]+"\",\"10\",\"10\")\' onMouseout=\'"+dom_ziel+"infohide()\' onMouseup =\'"+dom_ziel+"start_dataquery()\'";
							}
							text_array[i] = text_array[i].replace(/\s/g,'&nbsp;');
							text_array[i] = text_array[i].replace(/\-/g,'&minus;');
							temp_str = temp_str + ">"+text_array[i]+"</div>";
						}
						else {
							if (symbol_name.search(/div/)> -1){
								if (farbwert_array[i] != ""){
									var id = farbwert_array[i];
									if (symbol_name_hash[2] == 'zufall'){
										if (!rgb_array[id]){
											fill_rgbarray();
										}
										farbwert =  rgb_array[id];
									}
									else{
										farbwert = symbol_name_hash[1];
									}
								}
								if(multi_symbol_height_array[i]){
									var symbol_param_array = symbol_name.split("µ");
									var multi_height_werte = multi_symbol_height_array[i].split("µ");
									var my_highest = 0;
									for (var e=0; e < multi_height_werte.length; ++e){
										if (multi_height_werte[e] > my_highest){
											my_highest = multi_height_werte[e];
										}
									}
									for (var e=0; e < multi_height_werte.length; ++e){
										var sym_paras = symbol_param_array[e+1].split("w");
										if (sym_paras[3]){
											if (parseFloat(multi_height_werte[e]) > sym_paras[3]){
												multi_height_werte[e] = sym_paras[3];
											}
											if (my_highest > sym_paras[3]){
												my_highest = sym_paras[3];
											}
										}
										temp_str = temp_str + "<div   style=\'position:absolute;cursor:pointer;left:"+(myX2_array[i]+parseFloat(sym_paras[1]))+"px; top:"+(myY2_array[i] - parseFloat(multi_height_werte[e])) +"px;z-index:"+(20 + parseInt(e))+";font-size:0px;background-color:#"+sym_paras[0]+";height:"+parseFloat(multi_height_werte[e])+"px;width:"+parseFloat(sym_paras[2])+"px;\'";
										if (mouseover == 1){
											temp_str = temp_str + "  onMouseover=\'"+dom_ziel+"infozeigen("+myleft+","+mytop+",35,\""+thema+"\",\""+infotext_array[i]+"\",\""+geo_id_array[i]+"\",\"10\",\""+parseInt(my_highest)+"\")\' onMouseout=\'"+dom_ziel+"infohide()\' onMouseup =\'"+dom_ziel+"start_dataquery()\'";
										}
										temp_str = temp_str + "></div>";
									}
								}
								else {
									temp_str = temp_str + "<div   style=\'position:absolute;cursor:pointer;left:"+parseInt(myX_array[i])+"px; top:"+parseInt(myY_array[i])+"px;z-index:20;font-size:0px;background-color:#"+farbwert+";height:"+symbol_height_array[i]+"px;width:"+symbol_width_array[i]+"px;\'";
									if (mouseover == 1){
										temp_str = temp_str + "  onMouseover=\'"+dom_ziel+"infozeigen("+myleft+","+mytop+",35,\""+thema+"\",\""+infotext_array[i]+"\",\""+geo_id_array[i]+"\",\"10\",\"10\",\""+bildaufruf_array[i]+"\")\' onMouseout=\'"+dom_ziel+"infohide()\' onMouseup =\'"+dom_ziel+"start_dataquery()\'";
									}
									temp_str = temp_str + "></div>";
								}
							}
							else {
								temp_str = temp_str + "<img  style=\'position:absolute;cursor:pointer;left:"+myX_array[i]+"px; top:"+myY_array[i]+"px;z-index:10\' "+imagesizetag+" src=\'../../mapbender/images/"+symbol_name_array[i]+"\'";
								if (mouseover == 1){
									temp_str = temp_str + "  onMouseover=\'"+dom_ziel+"infozeigen("+myleft+","+mytop+",35,\""+thema+"\",\""+infotext_array[i]+"\",\""+geo_id_array[i]+"\","+symbol_width_array[i]+","+symbol_height_array[i]+",\""+bildaufruf_array[i]+"\")\' onMouseout=\'"+dom_ziel+"infohide()\' onMouseup =\'"+dom_ziel+"start_dataquery()\' ";
								}
								temp_str = temp_str + ">";
							}
						}
					}
				}
			}
		}
	}
	else {
		//alert("kein result");
	}
	if (frame_document('InfoFrame')){
		if (frame_document('InfoFrame').getElementById('werte')){
			if (frame_document('InfoFrame').getElementById('werte').value && frame_document('MapFrame')){
				var objektstring =frame_document('InfoFrame').getElementById('werte').value;
				var sets = objektstring.split(String.fromCharCode(167));
				for (var i=1; i < sets.length; ++i){
					var werte = sets[i].split("&");
					var dies_thema =  werte[1];
					var name = thema + i;
					var posx =  werte[2];
					var posy =  werte[3];
					var pos = makeRealWorld2mapPos(posx, posy);
					var myX = parseInt(pos[0]) - 6;
					var myY = parseInt(pos[1]) - 6;
					var myleft = parseInt(pos[0]) + parseInt(leftOffset); 
					var mytop = parseInt(pos[1]) + parseInt(topOffset);
					var infotext =  werte[4];
					var mycolor =  werte[5];
					//if (dies_thema == 'Meine Daten'){
					//	if (meine_daten_zeigen == 'on'){
							if (pos[1] > 0 && pos[0] > 0 && myleft < map_ru_left && mytop < map_ru_top){
								temp_str = temp_str + "<img  style='position:absolute; left:"+myX+"px; top:"+myY+"px;z-index:521' src='../../mapbender/images/marker_"+mycolor+".gif' onMouseover=\'"+dom_ziel+"infozeigen("+myleft+","+mytop+",35,\""+dies_thema+"\",\""+infotext+"\",\""+geo_id+"\",10,10)\' onMouseout=\'"+dom_ziel+"infohide()\'>";
							}
					//	}
					/*}
					else {
						if (pos[1] > 0 && pos[0] > 0 && myleft < maxX && mytop < maxY){
							temp_str = temp_str + "<img  style='position:absolute; left:"+myX+"px; top:"+myY+"px;z-index:21' src='../images/marker_"+mycolor+".gif' onMouseover=\'top.infozeigen("+myleft+","+mytop+",35,\""+dies_thema+"\",\""+infotext+"\",\""+geo_id+"\")\' onMouseout=\'top.infohide()\'>";
						}
					}
					*/
				}
			}
		}
	}
	return temp_str;
}
function fill_rgbarray(){
	var k = 1;
	var rr_array = new Array('00', 'FF', '33', 'CC', '66', '99');
	var gg_array = new Array('99', '66', 'CC', '33', 'FF', '00');
	var bb_array = new Array('FF', '00', 'CC', '33', '99', '66');
	var rgb_array = new Array();
	var versatz_spalte_rr = 0;
	var versatz_spalte_gg = 0;
	var versatz_spalte_bb = 0;
	for (i = 1; i < 7; i++) {	
		//for (j = 16; j < 0; j=j-1) {		
		for (p = 1; p < 7; p++) {	
			for (l = 1; l < 7; l++) {
				var rr= l+versatz_spalte_rr;
				var gg= l+versatz_spalte_gg;
				if (rr> 6){
					rr=rr % 6;
					if (rr = 0) {
						rr=6;
					}
				}
				if (gg> 6){
					gg=gg % 6;
					if (gg = 0) {
						gg=6;
					}
				}
				rgb_array[k]=rr_array[rr]+''+gg_array[gg] +''+ bb_array[i+versatz_spalte_bb];
				k++;
			}
			versatz_spalte_gg = versatz_spalte_gg+1;
		}
		versatz_spalte_rr = versatz_spalte_rr+1;
	}
}
function PaintResults(){
	frame_document("MapFrame").getElementById("resultlayer").style.width = 0;
	frame_document("MapFrame").getElementById("resultlayer").style.height =0;
	var temp_str = build_result(leftOffset,topOffset,0);
	//alert('Test'+temp_str);
	writeTag("MapFrame","resultlayer",temp_str);
	arrangeElement("MapFrame","resultlayer", leftOffset, topOffset);
	frame_document("MapFrame").getElementById("resultlayer").style.width = width;
	frame_document("MapFrame").getElementById("resultlayer").style.height = height;
	frame_document("MapFrame").getElementById("resultlayer").style.clip = "rect(0 "+width+" "+height +" 0)";
	if (bedingungen){
		var text = bedingungen.replace(/hochkomma/,'\'');
		text = bedingungen.replace(/joker/,'\%');
		text = bedingungen.replace(/gatter/,'\#');
		text = bedingungen.replace(/\\n/,'\§');
		text = "Folgende Bedingungen beeinflussen die Kartendarstellung:\\\n"+text;
		var bedingungsbeschriftung = kartenlegendenbeschriftung_muss + ' Treffer: ' + anzahl +' <span style="color:red;cursor:pointer" onmousedown="alert(\''+text+'\')">Kartendarstellung unter Bedingung</span>';
		if (interface_id != 6){
			writeTag('MapFrame', 'kartenlegende', bedingungsbeschriftung);
		}
		if (bedingungen){
			var themenbedingung_array = new Array();
			themenbedingung_array = bedingungen.split('µ');
			for (var i=0; i < themenbedingung_array.length; ++i){
				var bedingungen_array = new Array();
				bedingungen_array = themenbedingung_array[i].split('§');
				var img_filter = new Image(); 
				img_filter.src = "../../mapbender/images/" + interface_id + "/filter_on.gif";
				if (frame_document('MapFrame') && bedingungen_array[0]){
					frame_document('MapFrame').getElementById('filter_'+ bedingungen_array[0]).src = img_filter.src;
				}
			}
		}
	}
	else {
		var bedingungsbeschriftung = kartenlegendenbeschriftung_muss + ' ' + 'keine Bedingungen  Treffer: ' + anzahl + ' Zeichen: ' + temp_str.length;
		if (interface_id != 6){
			writeTag('MapFrame', 'kartenlegende', bedingungsbeschriftung);
		}
	}
	if (karte2_paintobjekte == 'on'){
		var karte2_left = parseInt(parent.MapFrame.document.getElementById('mapimage2').style.left);
		var karte2_top = parseInt(parent.MapFrame.document.getElementById('mapimage2').style.top);
		var temp_str2 = build_result(parseInt(karte2_left),parseInt(karte2_top));
		writeTag("MapFrame","resultlayer2",temp_str2);	
		arrangeElement("MapFrame","resultlayer2", parseInt(karte2_left), parseInt(karte2_top));
		frame_document("MapFrame").getElementById("resultlayer2").style.width = width+"px";
		frame_document("MapFrame").getElementById("resultlayer2").style.height = height+"px";
		frame_document("MapFrame").getElementById("resultlayer2").style.clip = "rect(0 "+width+" "+height +" 0)";			
	}
}
function infozeigen(x,y,h,input_thema,infotext,input_geo_id,symbolbreite,symbolhoehe,bildaufruf) {
	no_performMapClick = 1;
	if (symbolbreite < 5){
		symbolbreite = 15;
	}
	if (symbolhoehe < 5){
		symbolhoehe = 15;
	}
	if (frame_document('MapFrame')){
		top.last_x = x;
		top.last_y = y;
	}
	geo_id = "";
	geo1_id = "";
	geo2_id = "";
	geo3_id = "";
	geo_id = input_geo_id;
	infotext_aktuell = infotext;
	thema = input_thema;
	InfoFrame.document.getElementById("thema").firstChild.data = thema;
	var grenze = 10;
	infotext = infotext.replace(/<br>/,"<BR>");
	var infotext_sets = infotext.split("<BR>");
	var infotext_length = 0;
	var ueberlauf = 0;
	var infoHTML = "";
	for (var i=0; i <= infotext_sets.length; ++i){
		if (i < grenze){
			if (infotext_sets[i]){
				if (i > 0){
					infoHTML = infoHTML+"<BR>";
				}
				infoHTML = infoHTML+infotext_sets[i];
				if (infotext_sets[i].length > infotext_length){		
					infotext_length = infotext_sets[i].length;
				}
				h=h+13;
			}
		}
		else {
			ueberlauf = 1;
		}
	}
	if (ueberlauf == 1){
		infoHTML = infoHTML+"<BR>und weitere...";
	}
	//infoHTML = infoHTML+" "+ parseInt(symbolhoehe) ;
	h = h +1;
	var infobreite = parseInt((infotext_length * 6.7) + 1);
	if (infobreite < 200 ){
		infobreite = 200;
	}
	var themabreite = parseInt((thema.length * 6.7) + 1);
	if (themabreite < 200 ){
		themabreite = 200;
	}
	var breite=0;
	if (infobreite > themabreite){
		breite = infobreite;
	}
	else{
		breite = themabreite;
	}
	if (breite <= 230){
		breite = 235;
	}
	//alert(themabreite + " " + infobreite + " " + breite + " " + infotext_length);
	InfoFrame.document.getElementById("info").innerHTML=infoHTML;
	InfoFrame.document.getElementById("info").style.width=infobreite+"px";
	InfoFrame.document.getElementById("thema").style.width=themabreite+"px";
	if (frame_document('MapFrame')){
	}
	else {
		map_left = parseInt(document.getElementById("Karte").style.left);
		map_top = parseInt(document.getElementById("Karte").style.top);
		map_ru_left = map_left + parseInt(document.getElementById('Karte').style.width) + 0;
		map_ru_top = map_top + parseInt(document.getElementById('Karte').style.height) + 0;
		map_frame_left =  0;
		map_frame_top =  0;	
	}
	var myleft = (map_frame_left +  x + parseInt(symbolbreite) + 10);
	var mytop = (map_frame_top + y + parseInt(symbolhoehe) + 12 );
	var rechtekante = myleft + breite;
	if (rechtekante > map_ru_left){
		var myleft = map_ru_left - breite - 10;
		if (myleft < map_left){
			myleft = map_left;
		}
	}
	var unten = mytop + h;
	if (unten > map_ru_top){
		var mytop = (map_frame_top + y - parseInt(symbolhoehe) - h - 10);
		if (mytop < map_top){
			mytop = map_top;
		}
	}
	var mybreite = 300;
	var myhoehe = 300;
	var input_geo_id_array = input_geo_id.split("µ");
	input_geo_id = input_geo_id_array[0]; 
	switch(thema) {
		case 'Vermessungsrisse':
			var bild = 'http://geodaten.bonn.bonn.de/rissarchiv/jpg/'+infotext+'.jpg';		
		break;
		case "Hotels":
			var bild = '../../daten/images/points of interest/'+input_geo_id+'_1.jpg';		
		break;
		case "Fotos Tourismus":
			var bild = '../../daten/images/photographien/'+input_geo_id+'_1.jpg';		
		break;
		case "Spielplatz":
			var bild = '../../daten/images/spielplaetze/'+input_geo_id+'_1.jpg';		
		break;
		/*case "Kindergarteneinrichtungen":
			var bild = 'http://kigan.bonn.de/kigan/showKinderGartenBild.do?id='+input_geo_id;		
			var mybreite = 200;
			var myhoehe = 200;
		break;
		*/
		default:
			if (bildaufruf != 'undefined'){
				var bild = bildaufruf;	
			}
			else {
				var bild = '../../daten/images/'+thema+'/'+input_geo_id+'_1.jpg';	
				bild = bild.replace(/ bearbeiten/g,"");
				bild = bild.replace(/_admin/g,"");
				bild = bild.replace(/ä/g,"ae");
				bild = bild.replace(/ö/g,"oe");
				bild = bild.replace(/ü/g,"ue");
			}
		break;
	}
	infofenster_offen = 1;
	thumbnail_vorladen(bild,mybreite,myhoehe,myleft,mytop,h,x,y);
	document.getElementById('InfoFrame').style.left = myleft+"px";
	document.getElementById('InfoFrame').style.top = mytop+"px";
	document.getElementById('InfoFrame').style.height = h+"px";
	document.getElementById('InfoFrame').style.width = (breite +5)+"px";
	if (frame_document('MapFrame')){
		kartenbildevent("onMouseOut","infohide");
		frame_document("MapFrame").getElementById("resultlayer").onmousedown=null;
	}
	else {
		info_x=x-(parseInt(symbolbreite)/2);info_y=y-(parseInt(symbolhoehe)/2);
		kartenbildevent("onmousedown","start_dataquery");
		//document.getElementById("resultlayer").onmousedown = start_dataquery;
	}
}
var img_thumbnail = new Image();
function thumbnail_vorladen(bild,breite,hoehe,infoleft,infotop,infoh,x,y){
	window.status = "vorladen";
	if (infofenster_offen > 0 && parseInt(document.getElementById('divthumbnail').style.left) < 0){
		document.getElementById('divthumbnail').style.left = '-10000000px';
		if (document.getElementById('thumbnail').src != bild){
			img_thumbnail.src = bild;
			document.getElementById('thumbnail').src = img_thumbnail.src;
		}
		var befehl = "thumbnail('"+breite+"','"+hoehe+"','"+infoleft+"','"+infotop+"','"+ infoh + "','" + x + "','"+ y +"')";
		window.setTimeout(befehl,700);
	}
}
function thumbnail(breite,hoehe,infoleft,infotop,infoh,x,y){
	window.status = "Thumbnail";
	if (document.getElementById('thumbnail') && img_thumbnail.width > 28 && infofenster_offen > 0){
		var ursprung_width = img_thumbnail.width;
		var ursprung_height = img_thumbnail.height;
		var verhaeltnis = ursprung_width/ursprung_height;
		if (ursprung_width > ursprung_height){
			zielbreite = breite;
			zielhoehe = breite/verhaeltnis;
		}
		else {
			zielhoehe = hoehe;
			zielbreite = verhaeltnis * hoehe;	
		}
		if (zielbreite > breite){
			var zubreit = zielbreite - breite;
			zielbreite = breite;
			zielhoehe = zielhoehe - (zubreit/verhaeltnis);
		}
		if (zielhoehe > hoehe){
			var zuhoch = zielhoehe - hoehe;
			zielhoehe = hoehe;
			zielbreite = zielbreite - (zuhoch * verhaeltnis); 
		}	
		var unten = (infotop + infoh + 10 + zielhoehe);
		if (infotop  < (parseInt(y)  + parseInt(map_frame_top)) ){
			y=infotop - parseInt(map_frame_top);
		}
		var symbolkartenobenabstand = (y  - map_top + map_frame_top - 10);
		var infokartenuntenabstand = (map_ru_top - infotop - infoh - 10);
		var bild_top = map_top;
		var bild_left = infoleft;
		if (unten > map_ru_top){
			if (symbolkartenobenabstand > infokartenuntenabstand){
				if (zielhoehe > symbolkartenobenabstand){
					neue_zielhoehe = symbolkartenobenabstand;
					zielbreite = zielbreite * neue_zielhoehe/zielhoehe;
					zielhoehe = neue_zielhoehe;
				}
				else {
					bild_top = (parseInt(y)  + parseInt(map_frame_top) - parseInt(zielhoehe) - 10);
				}
			}
			else {
				bild_top = (parseInt(infotop) + parseInt(infoh) + 10);
				if (zielhoehe > infokartenuntenabstand){
					neue_zielhoehe = infokartenuntenabstand;
					zielbreite = zielbreite * neue_zielhoehe/zielhoehe;
					zielhoehe = neue_zielhoehe;
				}
			}
		}
		var rechtekante = parseInt(parseInt(bild_left) + parseInt(zielbreite));
		if (rechtekante > (map_ru_left - 5)){
			bild_left = (map_ru_left - zielbreite - 5);
		}
		//window.status = 'bildleft='+ bild_left + 'bild-top=' + bild_top + 'y=' + y + 'map_top=' + map_top + 'map_frame_top=' + map_frame_top + 'zielhoehe=' + zielhoehe;
		document.getElementById('divthumbnail').style.left = bild_left+"px";
		document.getElementById('divthumbnail').style.top = bild_top +"px";
		document.getElementById('thumbnail').style.width = zielbreite+"px";
		document.getElementById('thumbnail').style.height = zielhoehe+"px";
		document.getElementById('divthumbnail').style.width = zielbreite+"px";
		document.getElementById('divthumbnail').style.height = zielhoehe+"px";
		document.getElementById('divthumbnail').style.z_index = "20000";
	}
}
function infohide(){
	no_performMapClick = 0;
	if (selectareainaction == 0){  //...........erster Punkt des selaerea noch nicht geclickt............
		document.getElementById('InfoFrame').style.left = '-3000px';
		document.getElementById('InfoFrame').style.height = '50px';
		document.getElementById('InfoFrame').style.width = '50px';
		infofenster_offen = 0;
		document.getElementById('divthumbnail').style.left = '-30000000px';
		if (frame_document('MapFrame')){
			frame_document('MapFrame').onmousedown = null;	
			frame_document('MapFrame').onmousemove = null;
			//kartenbildevent("onClick","top.eventmapper(event)");
			arrangeBorder();	
			var myfunction =  frame_document('MapFrame').toolbarForm.param_1.value;
			if (myfunction == 'img_selectArea'){
				end_x = "";
				end_y = "";
				frame_document("MapFrame").getElementById("resultlayer").onmousedown=start_selectArea;
			}
		}
		else {
			kartenbildevent("onmousedown","mousedown_an");
		}
	}
}
function start_dataquery(e){
	//alert("test1"+e);
	//alert("Datenabfrage");
	markmappos(info_x,info_y,"quell_marker");
	var hier_geo_id = "'"+geo_id+"'";
	var hier_infotext_aktuell = infotext_aktuell
	if (hier_geo_id.search(/µ/)> -1){
		if (hier_geo_id.substr(hier_geo_id.length-2,1) == 'µ'){
			hier_geo_id = hier_geo_id.substr(1, hier_geo_id.length-3);
		}
		hier_geo_id = hier_geo_id.substr(0, 60);
		hier_infotext_aktuell = infotext_aktuell.substr(0,100);
	}
	else{
		hier_geo_id = geo_id;
	}
	var weiter = "ja";
	if (frame_document('MapFrame')){
	    if (frame_document('MapFrame').toolbarForm.param_1.value == "img_dbpush" || frame_document('MapFrame').toolbarForm.param_1.value == "img_strapsen") {   //verschieben von Objekten
			weiter = "nein";
			top.dbpush_geo_id= geo_id;
			top.dbpush_thema = thema;
			if (frame_document('MapFrame').toolbarForm.param_1.value == "img_strapsen"){
				alert("Zum Verschneiden der Hausnummer "+geo_id+ " klicken Sie bitte hinter das entsprechende Straßensegment in die Karte");
			}
			else {
				alert("Clicken Sie in die Karte zum Verschieben des Objektes "+geo_id+ " des Themas " + thema);
			}
		}
		else {
			if (frame_document('MapFrame').toolbarForm.param_1.value == "img_Punkte" && parent.LegendcontainFrame.document.getElementById('hauptkreuzungen')) {
				var weiter = "nein";
				parent.LegendcontainFrame.document.getElementById('hauptkreuzungen').value = parent.LegendcontainFrame.document.getElementById('hauptkreuzungen').value +geo_id+'µ';
			}
		}
	}
	if (weiter == "ja"){
		if (frame_document('MapFrame')){
			var myleft = parseInt(top.MapFrame.document.getElementById('e').style.left)+parseInt(top.document.getElementById("MapFrame").style.left)+20;
			var mytop = parseInt(top.MapFrame.document.getElementById('e').style.top)+parseInt(top.document.getElementById("MapFrame").style.top);
			//kartenbildevent("onmousedown","null");
		}
		else {
			//onmousedown = null;
			kartenbildevent("onmousedown","mousedown_an");
		}
		if (thema=='Amt 66 Verkehr' || thema=='Amt 68' || thema=='SGB' || thema=='Amt 66 Wasser' || thema=='Amt 66 Aufbauten' || thema=='Amt 23' || thema=='Amt 33' || thema=='Amt 37' || thema=='Amt 41'  || thema=='Amt 50'  || thema=='Amt 51'  || thema=='Amt 52'){
				var geo_id_array = geo_id.split("µ");
				my_geo_id= geo_id_array[0];
				var carisma_aufruf = "http://geodaten.bonn.de/mapbender/dhtml/nkf_liegenschaften_abarbeiten_feature.php?aufruf=nkf_liegenschaften_abarbeiten_feature.php&button=1&langname="+thema+"&User="+user+"&Pass="+password+"&geo_id="+my_geo_id+"&sid="+sid;
				//var aufruf = "../daten/db.pl?selLayer="+thema+"&Standard=10&GeoID="+geo_id+"&Geo1ID="+geo1_id+"&Geo2ID="+geo2_id+"&Geo3ID="+geo3_id;
				var aufruf = "../daten/db_meta.pl?selLayer="+thema+"&Standard=10&GeoID="+geo_id+"&Geo1ID="+geo1_id+"&Geo2ID="+geo2_id+"&Geo3ID="+geo3_id;
		}
		if (thema=='Vergleich Nutzungen ALB ALK' ){
				var geo_id_array = geo_id.split("µ");
				my_geo_id= geo_id_array[0];
				var carisma_aufruf = "http://geodaten.bonn.de/mapbender/dhtml/nkf_liegenschaften_abarbeiten_feature.php?aufruf=nkf_liegenschaften_abarbeiten_feature.php&button=1&was_abarbeiten=alb&langname="+thema+"&geo_id="+my_geo_id+"&sid="+sid;
				var aufruf = "../daten/db.pl?selLayer="+thema+"&Standard=10&GeoID="+geo_id+"&Geo1ID="+geo1_id+"&Geo2ID="+geo2_id+"&Geo3ID="+geo3_id;
			
		}
		if (thema=='Abgleich Straßen mit Liegenschaften' || thema=='Abgleich NKF Flächen' || thema=='Abgleich NKF Segmente' ){
				var geo_id_array = geo_id.split("µ");
				my_geo_id= geo_id_array[0];
				var carisma_aufruf = "http://geodaten.bonn.de/mapbender/dhtml/nkf_liegenschaften_abarbeiten_feature.php?aufruf=nkf_liegenschaften_abarbeiten_feature.php&button=1&was_abarbeiten=strassen&langname="+thema+"&geo_id="+my_geo_id+"&sid="+sid;
				var aufruf = "../daten/db.pl?selLayer="+thema+"&Standard=10&GeoID="+geo_id+"&Geo1ID="+geo1_id+"&Geo2ID="+geo2_id+"&Geo3ID="+geo3_id;
			
		}
		
		if (thema=='Altstandorte' && user=='schramm'){
				var geo_id_array = geo_id.split("µ");
				my_geo_id= geo_id_array[0];
				var aufruf_jsf = "http://10.81.1.245:8084/UISatJSF/db.jsf?layer="+thema+"&GeoID="+my_geo_id+"&sid="+sid;
			
		}
		
		switch(thema) {
			case 'Spielplätze NKFtest':
				var aufruf = "http://stadtplan.bonn.de/mapbender/daten/db.pl?selLayer="+thema+"&Standard=10&User="+user+"&Pass="+password+"&GeoID="+geo_id+"&Geo1ID="+geo1_id+"&Geo2ID="+geo2_id+"&Geo3ID="+geo3_id+"&infotext="+infotext_aktuell;
			break;
			case 'Spielplätzetest':
				var aufruf = "http://stadtplan.bonn.de/mapbender/daten/db.pl?selLayer="+thema+"&Standard=10&User="+user+"&Pass="+password+"&GeoID="+geo_id+"&Geo1ID="+geo1_id+"&Geo2ID="+geo2_id+"&Geo3ID="+geo3_id+"&infotext="+infotext_aktuell;
			break;
			case "Haltestellen" :
				if (interface_id != 6 && interface_id != 0){
					var aufruf="../../mapbender/dhtml/wait.pl?link=fahrplan.pl&GeoID="+geo_id+"&art=1&busundbahn_width="+width+"&backcolor="+top.backcolor+"&tbcolor="+top.tbcolor+"&feldcolor="+top.feldcolor+"&textcolor="+top.textcolor+"&interface_id="+top.interface_id;
					top.LegendcontainFrame.location.href = aufruf;
					einschweben('document.getElementById("LegendcontainFrame")',myleft,mytop,2000,2000,map_mitte_left,map_mitte_top);
				}
				else {
					if (interface_id == 0){
						var aufruf="../../mapbender/dhtml/fahrplan.pl?GeoID="+geo_id+"&art=1";
					}
					else {
						var aufruf="../../mapbender/dhtml/wait.pl?link=fahrplan.pl&GeoID="+geo_id+"&art=1&busundbahn_width="+width+"&backcolor="+top.backcolor+"&tbcolor="+top.tbcolor+"&feldcolor="+top.feldcolor+"&textcolor="+top.textcolor+"&interface_id="+top.interface_id;
						top.InhaltFrame.location.href = aufruf;
					}
				}
			break;
			case "Straßenbahn Haltestellen" :
				if (interface_id != 6 && interface_id != 0){
					var aufruf="../../mapbender/dhtml/wait.pl?link=fahrplan.pl&GeoID="+geo_id+"&art=1&busundbahn_width="+width+"&backcolor="+top.backcolor+"&tbcolor="+top.tbcolor+"&feldcolor="+top.feldcolor+"&textcolor="+top.textcolor+"&interface_id="+top.interface_id;
					top.LegendcontainFrame.location.href = aufruf;
					einschweben('document.getElementById("LegendcontainFrame")',myleft,mytop,2000,2000,map_mitte_left,map_mitte_top);
				}
				else {
					if (interface_id == 0){
						var aufruf="../../mapbender/dhtml/fahrplan.pl?GeoID="+geo_id+"&art=1";
					}
					else {
						var aufruf="../../mapbender/dhtml/wait.pl?link=fahrplan.pl&GeoID="+geo_id+"&art=1&busundbahn_width="+width+"&backcolor="+top.backcolor+"&tbcolor="+top.tbcolor+"&feldcolor="+top.feldcolor+"&textcolor="+top.textcolor+"&interface_id="+top.interface_id;
						top.InhaltFrame.location.href = aufruf;
					}
				}
			break;
			case "Bus Haltestellen" :
				if (interface_id != 6 && interface_id != 0){
					var aufruf="../../mapbender/dhtml/wait.pl?link=fahrplan.pl&GeoID="+geo_id+"&art=1&busundbahn_width="+width+"&backcolor="+top.backcolor+"&tbcolor="+top.tbcolor+"&feldcolor="+top.feldcolor+"&textcolor="+top.textcolor+"&interface_id="+top.interface_id;
					top.LegendcontainFrame.location.href = aufruf;
					einschweben('document.getElementById("LegendcontainFrame")',myleft,mytop,2000,2000,map_mitte_left,map_mitte_top);
				}
				else {
					if (interface_id == 0){
						var aufruf="../../mapbender/dhtml/fahrplan.pl?GeoID="+geo_id+"&art=1";
					}
					else {
						var aufruf="../../mapbender/dhtml/wait.pl?link=fahrplan.pl&GeoID="+geo_id+"&art=1&busundbahn_width="+width+"&backcolor="+top.backcolor+"&tbcolor="+top.tbcolor+"&feldcolor="+top.feldcolor+"&textcolor="+top.textcolor+"&interface_id="+top.interface_id;
						top.InhaltFrame.location.href = aufruf;
					}
				}
			break;
			case "Haltestellen rak" :
				var aufruf="../../mapbender/dhtml/wait.pl?link=fahrplan.pl&GeoID="+geo_id+"&art=1&busundbahn_width="+width+"&backcolor="+top.backcolor+"&tbcolor="+top.tbcolor+"&feldcolor="+top.feldcolor+"&textcolor="+top.textcolor+"&interface_id="+top.interface_id;
				if (interface_id != 6){
					top.LegendcontainFrame.location.href = aufruf;
					einschweben('document.getElementById("LegendcontainFrame")',myleft,mytop,2000,2000,map_mitte_left,map_mitte_top);
				}
				else {
					top.InhaltFrame.location.href = aufruf;
				}
			break;
			case 'Haltestellen_arbeitsstand'://...........schramm für Herrn Schneider 180407
				var aufruf="../../mapbender/dhtml/wait.pl?link=fahrplan.pl&GeoID="+geo_id+"&art=1&busundbahn_width="+width+"&backcolor="+top.backcolor+"&tbcolor="+top.tbcolor+"&feldcolor="+top.feldcolor+"&textcolor="+top.textcolor+"&interface_id="+top.interface_id;
				if (interface_id != 6 ){
					top.LegendcontainFrame.location.href = aufruf;
					einschweben('document.getElementById("LegendcontainFrame")',myleft,mytop,2000,2000,map_mitte_left,map_mitte_top);
				}
				else {
					top.InhaltFrame.location.href = aufruf;
				}
			break;
			
			case 'Liniennetz 2008 digi' :
				if (frame_document('LegendcontainFrame').getElementById("nach_halte")&& frame_document('LegendcontainFrame').getElementById("nach_halte").value == ""				){
					frame_document('LegendcontainFrame').getElementById("nach_halte").value=geo_id;

				}
				else{
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Liniennetz 2008&User="+user+"&Pass="+password+"&input=1&von_halte="+geo_id;
				}
			break;
			case 'Haltestellenmaste':
				var aufruf = "../../mapbender/daten/swb.pl?selLayer=Haltestellen&Standard=10&User="+user+"&Pass="+password+"&GeoID="+geo_id;
			break;
			case "Haltestellenlagepläne":
				//var aufruf = "http:////"+geo_id+".pdf?";
				var aufruf = "../../mapbender/images/haltestellenlageplaene/"+geo_id+".pdf?";
				QueryWindow = window.open(aufruf, "Query", "width=1000px,height=1000,left=300,top=300,resizable=yes,scrollbars=yes,menubar=no,status=no");
				QueryWindow.focus();
			break;
			case 'Fahrplanfahrzeuge':
				var aufruf = "http://intra.swb.bonn.de/swb_bus_und_bahn/fahrtafeln/Fahrtafeln_Bus/"+geo_id+".pdf";
				QueryWindow = window.open(aufruf, "Query", "width=1000px,height=800,left=0,top=100,resizable=yes,scrollbars=yes,menubar=no,status=no");
				QueryWindow.focus();	
			break;
			case 'Baum Kontrolle Straßen':
				if (top.aufruftyp == "Kontrollaufruf"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baumkontrolle&baumnummer="+geo_id+"&infotext="+infotext_aktuell+"&kartensuchen=1";
				}
				if (top.aufruftyp == "Kontrolleingabe"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baumkontrolle&baumnummer="+geo_id+"&Geo2ID="+geo_id+"&infotext="+infotext_aktuell+"&input=1";
				}
				if (top.aufruftyp == "Kontrollaendern"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baumkontrolle&baumnummer="+geo_id+"&suchen=1&sql_bedingung=datum istgleich now()::date";
				}
				if (top.aufruftyp == "Pflegeaufruf"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baumpflege&baumnummer="+geo_id+"&Geo2ID="+geo_id+"&infotext="+infotext_aktuell+"&kartensuchen=1";
				}
				if (top.aufruftyp == "Pflegeeingabe"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baum Pflege&baumnummer="+geo_id+"&Geo2ID="+geo_id+"&infotext="+infotext_aktuell+"&input=1";
				}
				if (top.aufruftyp == "Baumdaten"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Bäume&GeoID="+geo_id+"&infotext="+infotext_aktuell;
				}
			break;
			case 'Baum Kontrolle übrige':
				if (top.aufruftyp == "Kontrollaufruf"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baumkontrolle&baumnummer="+geo_id+"&infotext="+infotext_aktuell+"&kartensuchen=1";
				}
				if (top.aufruftyp == "Kontrolleingabe"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baumkontrolle&baumnummer="+geo_id+"&Geo2ID="+geo_id+"&infotext="+infotext_aktuell+"&input=1";
				}
				if (top.aufruftyp == "Kontrollaendern"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baumkontrolle&baumnummer="+geo_id+"&suchen=1&sql_bedingung=datum istgleich now()::date";
				}
				if (top.aufruftyp == "Pflegeaufruf"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baumpflege&baumnummer="+geo_id+"&Geo2ID="+geo_id+"&infotext="+infotext_aktuell+"&kartensuchen=1";
				}
				if (top.aufruftyp == "Pflegeeingabe"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baum Pflege&baumnummer="+geo_id+"&Geo2ID="+geo_id+"&infotext="+infotext_aktuell+"&input=1";
				}
				if (top.aufruftyp == "Baumdaten"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Bäume&GeoID="+geo_id+"&infotext="+infotext_aktuell;
				}
			break;
			case 'Baum schnell':
				if (top.aufruftyp == "Kontrollaufruf"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baumkontrolle&baumnummer="+geo_id+"&infotext="+infotext_aktuell+"&kartensuchen=1";
				}
				if (top.aufruftyp == "Kontrolleingabe"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baumkontrolle&baumnummer="+geo_id+"&Geo2ID="+geo_id+"&infotext="+infotext_aktuell+"&input=1";
				}
				if (top.aufruftyp == "Kontrollaendern"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baumkontrolle&baumnummer="+geo_id+"&suchen=1&sql_bedingung=datum istgleich now()::date";
				}
				if (top.aufruftyp == "Pflegeaufruf"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baumpflege&baumnummer="+geo_id+"&Geo2ID="+geo_id+"&infotext="+infotext_aktuell+"&kartensuchen=1";
				}
				if (top.aufruftyp == "Pflegeeingabe"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Baum Pflege&baumnummer="+geo_id+"&Geo2ID="+geo_id+"&infotext="+infotext_aktuell+"&input=1";
				}
				if (top.aufruftyp == "Baumdaten"){
					var aufruf = "../../mapbender/daten/db_meta.pl?selLayer=Bäume&GeoID="+geo_id+"&infotext="+infotext_aktuell;
				}
			break;
			case 'Lagefestpunkte':
				var aufruf = "../../mapbender/dhtml/ap.pl?GeoID="+geo_id+"&sid="+sid+"&antrag="+top.InhaltFrame.antrag;
			break;
			case 'Grenzpunkte':
				if (top.meinserver == 'geodaten.bonn.de'){
					var aufruf = "../daten/db.pl?selLayer="+thema+"&Standard=10&GeoID="+hier_geo_id+"&Geo1ID="+geo1_id+"&Geo2ID="+geo2_id+"&Geo3ID="+geo3_id;
				}
				else {
					var aufruf = "";
				}
			break;	
			case 'Gebäudepunkte':
				if (top.meinserver == 'geodaten.bonn.de'){
					var aufruf = "../daten/db.pl?selLayer="+thema+"&Standard=10&GeoID="+hier_geo_id+"&Geo1ID="+geo1_id+"&Geo2ID="+geo2_id+"&Geo3ID="+geo3_id;
				}
				else {
					var aufruf = "";
				}
			break;			
			case 'GPS Stützpunkte':
				var aufruf = "../../mapbender/dhtml/ap.pl?GeoID="+geo_id+"&sid="+sid;
			break;
			case 'Lagefestpunkte bearbeiten':
				var aufruf = "http://stadtplan.bonn.de/mapbender/daten/db.pl?selLayer="+thema+"&User="+user+"&Pass="+password+"&GeoID="+geo_id+"&Geo1ID="+geo1_id+"&Geo2ID="+geo2_id+"&Geo3ID="+geo3_id+"&infotext="+infotext_aktuell;
			break;
			case 'Höhenfestpunkte':
				var aufruf = "../../mapbender/dhtml/nivp.pl?GeoID="+geo_id+"&sid="+sid+"&antrag="+top.InhaltFrame.antrag;
			break;
			case 'Kindergarteneinrichtungen':
				var aufruf = "http://www3.bonn.de/kigan/steckbrief.html?kitaId="+geo_id;
				//var aufruf = "http://kigan.bonn.de/kigan/kinderGartenDetail.do?id="+geo_id;
			break;
			case 'Kindergarteneinrichtungen_admin':
				var aufruf = "http://www3.bonn.de/kigan/kinderGartenDetail.do?id="+geo_id;
				//alert("Wurde von KIGAN geöffnet:"+top.opener);
			break;
			case 'Vermessungsrisse-test':
				var aufruf = "http://uis_intra_1.bonn.de/websd/bin/standard/DB.pl?selLayer=Vermessungsrisse&GeoID="+geo_id+"&User="+user+"&Pass="+password;
				if (objektsammeln != 'on'){
					var aufruf_viewer = "http://uis_intra_1.bonn.de/websd/bin/standard/power/viewer.pl?image=/rissarchiv/jpg/"+geo_id+".jpg&width=700&top=0&left=0&frame=all";
					QueryWindow = window.open(aufruf_viewer, "Query", "width=1000px,height=1000,left=300,top=300,resizable=yes,scrollbars=yes,menubar=no,status=no");
					QueryWindow.focus();
				}
			break;
			case 'LSA mit ÖPNV-Vorrang':
				var Ergebnis = frame_document('MapFrame').reisezeit.src.search(/reisezeit_on.+/);
				if(Ergebnis > 0){
					if (reisezeit_von){
						reisezeit_nach = geo_id;
						alert('Von LSA ' + reisezeit_von + ' nach ' + reisezeit_nach); 
						var aufruf = "../daten/wait.pl?link=../daten/reisezeit.pl&reisezeit_von=" + reisezeit_von + "&reisezeit_nach="+reisezeit_nach;
						reisezeit_von = '';
						reisezeit_nach = '';
					}
					else {
						reisezeit_von = geo_id;
						alert('Von LSA '+geo_id); 
					}
				}
			break;
			case 'Hotels':
				var geo_id_array = geo_id.split("µ");
				my_geo_id= geo_id_array[0];
				var carisma_aufruf = "../daten/carisma.pl?backcolor="+top.backcolor+"&geoid="+my_geo_id;
				var aufruf = "../daten/db.pl?selLayer="+thema+"&Standard=10&Standard=10&GeoID="+geo_id+"&Geo1ID="+geo1_id+"&Geo2ID="+geo2_id+"&Geo3ID="+geo3_id;
			break;
			case 'Lärmaktionsplan Anregungen geben':
				if (top.user == 'kurth' ||  top.user == 'wagnerj'){
					var aufruf = "../../cms/cms.pl?Amt=UIS&Thema=Umweltschutz&Subthema=Umgebungslärm&Subsubthema=Lärmaktionsplanung&Subsubsubthema=Eingabe Anregungen intern&act=1&Drucken=1&infotext=" + hier_infotext_aktuell+"&achsen_id="+geo_id+"&sid="+sid;
				}
				else {
					var aufruf = "../../cms/cms.pl?Amt=Stadtplan&Thema=Umweltschutz&Subthema=Lärm&Subsubthema=Bürgerbeteiligung&Subsubsubthema=Eingabe Anregungen beendet&act=1&Drucken=1&infotext=" + hier_infotext_aktuell+"&achsen_id="+geo_id;
				}
			break;
			case 'Masterplan Anregungen':
				if (hier_geo_id.search(/µ/) > -1){
					backcolor="c6d6e5";
					var aufruf = "../daten/db_meta.pl?selLayer="+thema+"&Standard=10&interface_id=99&GeoID="+hier_geo_id;
				}
				else {
					var aufruf = "../../cms/cms.pl?Amt=Stadtplan&Thema=Planen-Bauen&Subthema=Masterplan%20Innere%20Stadt&Subsubthema=B%FCrgerbeteiligung&Subsubsubthema=Einzelbeitrag&act=1&geoid="+hier_geo_id;
				}
			break;
			default:
				if (user && password){
					var aufruf = "../daten/db.pl?selLayer="+thema+"_admin&GeoID="+hier_geo_id+"&Geo1ID="+geo1_id+"&Geo2ID="+geo2_id+"&Geo3ID="+geo3_id;
				}
				else{
					var aufruf = "../daten/db.pl?selLayer="+thema+"&Standard=10&GeoID="+hier_geo_id+"&Geo1ID="+geo1_id+"&Geo2ID="+geo2_id+"&Geo3ID="+geo3_id;
				}
				if (thema=='Altstandorte' && top.user=='schramm'){
					var aufruf = aufruf_jsf
					//alert('aufruf:'+aufruf);
				}
			break;
		}
		if (aufruf){
			if (thema != 'Kindergarteneinrichtungen'){
				aufruf = aufruf + '&interface_id='+interface_id+ '&infotext=' + hier_infotext_aktuell;
			}
			if (thema != 'Kindergarteneinrichtungen'&& interface_id != 0){
				aufruf = aufruf + '&backcolor='+top.backcolor+'&textcolor='+top.textcolor;
			}
			if (thema != 'Kindergarteneinrichtungen'&& interface_id == 0){
				aufruf = aufruf + '&backcolor='+backcolor+'&textcolor='+textcolor+'&tbcolor='+backcolor;
			}
			if (typeof meta!='undefined'){
				if (meta == "post"){
					aufruf = aufruf+"&meta=post";
					aufruf = aufruf.replace(/db.pl/g, "db_meta.pl");
					var userstring = ('/&User='+user+'/gi');
					var passstring = ('/&Pass='+password+'/gi');
					var userstring = '&User='+user;
					var passstring = '&Pass='+password;	
					var leer = "";					
					aufruf = aufruf.replace(userstring, leer);
					aufruf = aufruf.replace(passstring, leer);
					
				}
				if (meta == 'neu'){
					var getestet = 0;
					var gefunden = 0;
					for(var i=0; i<kartenpool_layer_longnames.length; i++){
						if (kartenpool_layer_longnames[i] == thema){
							gefunden = 1;
							if (kartenpool_layer_getestet[i] == 1){
								getestet = 1;
							}
						}
					}
					if (gefunden == 0){  //alle Themen, die nicht mouseover oder deegree haben
						getestet = 1;
					}
					if (getestet == 1){
						aufruf = aufruf.replace(/db.pl/g, "db_meta.pl");
					}
					else {
						aufruf = aufruf+"&User="+user+"&Pass="+password;
					}
				}
				if (meta == 'neu'){
					aufruf = aufruf+"&User="+user+"&Pass="+password;
				}
			}
			else {
				var getestet = 0;
				var gefunden = 0;
				for(var i=0; i<kartenpool_layer_longnames.length; i++){
					if (kartenpool_layer_longnames[i] == thema){
						gefunden = 1;
						if (kartenpool_layer_getestet[i] == 1){
							getestet = 1;
						}
					}
				}
				if (gefunden == 0){  //alle Themen, die nicht mouseover oder deegree haben
					getestet = 1;
				}
				if (getestet == 1){
					aufruf = aufruf.replace(/db.pl/g, "db_meta.pl");
				}
				else {
					aufruf = aufruf+"&User="+user+"&Pass="+password;
				}			
			}
			if (getestet == 0){
				getestet=2;
			}
			aufruf = aufruf+'&session_db='+sid;
			aufruf = aufruf+'&layer_getestet='+getestet;
			aufruf = aufruf.replace(/db.pl/g, "db_meta.pl");
			//alert(aufruf);
			if (frame_document('MapFrame')){
				var neues_fenster = 0;
				if ((interface_id == 6  || interface_id == 10 || interface_id == 22) && !user ){
					neues_fenster = 1;
				}
				if (aufruf && thema != 'Haltestellen'  && thema != 'Haltestellenlagepläne' && neues_fenster == 0){
					if ((thema == 'Netztopologiekreuzungen' ||  thema == 'Netztopologiehauptkreuzungen' ) && frame_document('LegendcontainFrame').getElementById('hauptkreuzungen')){
						if (objektsammeln == 'on'){
							var array_geo_id = geo_id.split("µ");
							if(array_geo_id[1]){
								alert('Es wurden mehrere Treffer gefunden.\n\nZoomen Sie näher heran und \n identifizieren Sie die gewünschte einzelne Hauptkreuzung\n'+geo_id);
							}
							else {
								parent.LegendcontainFrame.document.getElementById('hauptkreuzungen').value = parent.LegendcontainFrame.document.getElementById('hauptkreuzungen').value +geo_id+'µ'; 
							}
						}
					}
					else {
						aufruf= aufruf+"&backcolor="+backcolor+"&tbcolor="+tbcolor+"&textcolor="+textcolor+"&Bedingungentext="+top.bedingungen;
						if (objektsammler && objektsammeln == 'on'){
							if(thema == 'Vermessungsrisse'){
								top.put_riss(infotext_aktuell);
							}
							else {
								objektsammler = objektsammler + geo_id +'µ';
								frame_document('LegendcontainFrame').getElementById('objektsammler').value = objektsammler;
								var htmlinhalt = frame_document('LegendcontainFrame').getElementById('objektsammler_clickies').innerHTML;
								frame_document('LegendcontainFrame').getElementById('objektsammler_clickies').innerHTML = geo_id+'<input type=checkbox name='+geo_id+'_check checked onClick=\"switch_objektsammler(\''+geo_id+'\')\";>'+ htmlinhalt;
							}
						}
						else {
							var zielframe = top.LegendcontainFrame;
							if (objektsammeln == 'on'){
								if(thema == 'Vermessungsrisse'){
									objektsammler = infotext_aktuell +'µ';
									aufruf = "../../mapbender/dhtml/risssammler.pl?backcolor="+backcolor+"&objektsammler="+objektsammler; 
									zielframe = top.FiltercontainFrame;
								}
								else {
									objektsammler = geo_id+'µ';
									aufruf = aufruf +"&objektsammler="+objektsammler; 
								}
							}
							zielframe.location.href= aufruf;
							var von_x = parseInt(top.document.getElementById("InfoFrame").style.left);
							var von_y = parseInt(top.document.getElementById("InfoFrame").style.top);
							var myleft = map_under_left;
							var mytop = map_under_top;
							var my_breite = 1200;
							var my_hoehe = 6000;
							if (user == "roetzheimlipsky" || user == "schaeferb"  || user == "staehler") {
									var myleft = 1550;
									var mytop = 150;
							}
							if (carisma_aufruf){
								top.CarismaFrame.location.href= carisma_aufruf;
								var carisma_left = parseInt(map_ru_left + 10);
								var carisma_top = parseInt(map_top - 10);
								carisma_breite = 985;
								carisma_hoehe = 480;
								positionFrame("CarismaFrame",carisma_left,carisma_top,carisma_breite,carisma_hoehe);
							}
							einschweben('document.getElementById("LegendcontainFrame")',myleft,mytop,my_breite,my_hoehe,von_x,von_y);
						}
					}
				}
			}
			if ((interface_id == 6 || interface_id == 10 || interface_id == 22 )&& thema != 'Haltestellen' && neues_fenster == 1){
				QueryWindow = window.open(aufruf, "Query", "width=700px,height=600,left=850,top=600,resizable=yes,scrollbars=yes,menubar=no,status=no");
				QueryWindow.focus();	
			}
			else {
				if ((interface_id == 0)){
					if (thema == 'Kindergarteneinrichtungen'){
						top.self.location.href  = aufruf+"&"+querystring;
					}
					else {
						if (thema == 'Masterplan Anregungen'){
							top.frame_document('InhaltFrame').location.href=aufruf;
						}
						else {
							var dataframe = "";
							try {
								if (parent.document.getElementById("dataFrame")){
									throw "richtig";
								}
							} 
							catch (e) {
								 if (e == "richtig") {
									if(!document.all?1:0){
										if (parent.document.getElementById("dataFrame")){
											var dataframe = parent.document.getElementById("dataFrame").contentDocument;
										}
									}
									else {
										if (parent.document.getElementById("dataFrame")){
											var dataframe = eval("parent.dataFrame.document");
										}
									}
								}
							}
							if(dataframe){
								if (thema == 'Baum Kontrolle Straßen' || thema == 'Baum Kontrolle übrige' || thema == 'Baum schnell'){
									aufruf=aufruf.replace(/&backcolor=C6D6E5/g,'&backcolor=ffffff');
									aufruf=aufruf.replace(/&tbcolor=C6D6E5/g,'&tbcolor=ffffff');
									//dataframe.body.style.left='+2000px';
								}
								if (parent.bonn){
									aufruf=aufruf.replace(/&backcolor=C6D6E5/g,'&backcolor=ffffff');
									aufruf=aufruf.replace(/&tbcolor=C6D6E5/g,'&tbcolor=ffffff');									
								}
								dataframe.location.href = aufruf;
							}
							else {
								//alert("Fenster wird geöffnet");
								QueryWindow = window.open(aufruf, "Query", "width=700px,height=850px,left=300px,top=150px,resizable=yes,scrollbars=yes,menubar=no,status=no");
								QueryWindow.focus();
							}
						}
					}
				}
			}
		}
	}
}

