$(document).ready(function() {
  	init();
});


/*GoogleMap*/
var map; //varianle der Karte
var res;//variable für datenArrays aus db
var mgr;
var tooltip

var initByLand=0;



var helpTxt = new Array();
helpTxt [0] = new Object();
helpTxt [1] = new Object();
	helpTxt[0]['street_not_found'] = "Zu Ihrer Auswahl konnten keine Stadorte gefunden werden.<br />Bitte ändern Sie Ihre Suchkriterien.";
	helpTxt[1]['street_not_found'] = "Your selection did not procede any result. Please optimize your request.";
	
	helpTxt[0]['backlink'] = "Zur&uuml;ck zur &Uuml;bersicht";
	helpTxt[1]['backlink'] = "Back to summary";
	helpTxt[0]['tel'] = "Telefon";
	helpTxt[1]['tel'] = "Phone";
	


function setFilter(){
	var filter='';
	var land = document.getElementById('select_coutry');	
	if(lang=='de'){
		if(land.selectedIndex != 0){
			filter += "&land="+encodeURIComponent(land[land.selectedIndex].value);
		}
	}else{
		if(land.selectedIndex != 0){
			filter += "&country="+encodeURIComponent(land[land.selectedIndex].value);
		}
	}
	var firma = document.getElementById('select_firm');
	if(firma.selectedIndex != 0){
		filter += "&firma="+encodeURIComponent(firma[firma.selectedIndex].value);
	}
	var stadt = document.getElementById('select_city');	
	if(stadt.selectedIndex != 0){
		filter += "&stadt="+encodeURIComponent(stadt[stadt.selectedIndex].value);
	}
	var plz = document.getElementById('select_zip');	
	if(plz.selectedIndex != 0){
		filter += "&plz="+plz[plz.selectedIndex].value;
	}
	
	
	

	getJSON(filter)
}



var res;
function getJSON(filter){
	
	var lat1 = map.getBounds().getSouthWest().lat() ;
	var lat2 = map.getBounds().getNorthEast().lat() ;
	var lng1 = map.getBounds().getSouthWest().lng() ;
	var lng2 = map.getBounds().getNorthEast().lng() ;

	var params = "&lat1="+lat1+"&lat2="+lat2+"&lng1="+lng1+"&lng2="+lng2;
	
	var temp = "/fileadmin/weitclickscripts/google_standortkarte.php?action=getJSON&langu="+lang+''+filter;
	
	$.get(temp, function(result){
		
		
		res = eval(result);
		updateMap();	
	});
}

var plz='xxxx';
var plz_lat='xxx';
var plz_lng='xxx';
var plz_count=1;
var land='xxxx';
var land_lat='xxx';
var land_lng='xxx';
var ort_lat='xxx';
var land_lng='xxx';
var land_count=1;
var ort='xxxx';
var ort_count=1;


var ck_lat='xxx';
var ck_lng='xxx';
var street_count = 1;
var idArr;
var markerArr =  new Array;;
function updateMap(){
	//aufraeumen bestehender Arrays
	for(var i=0; i<markerArr.length; i++){
		mgr.removeMarker(markerArr[i]);
		
	}
	markerArr.splice(0, markers.length);
	map.clearOverlays();
	var bounds = new GLatLngBounds();
	try{
		if(res.length > 0){
			//menues neu schreiben
			//stadt
			var citys = new Array;
			
			
			
			
			
			var temp =0;
			//map.clearOverlays();
			for(var i=0; i< res.length; i++){
			
					
				//alle Marker(nach geocodes)
				if(ck_lat !=  res[i]['lat'] && ck_lng !=  res[i]['len']){
					plz_count=0;
					idArr = '';
					for(var j=0; j<res.length; j++){
						if(res[j]['lat']==res[i]['lat'] && res[j]['len']==res[i]['len']){
							
							plz_count++;
							idArr += res[j]['uid']+"xxx";
						}	
					}
					temp++;
					var tempMarker = createMarker(res[i], i, plz_count, 'orange','exact',idArr)
					mgr.addMarker(tempMarker,10,17);
					bounds.extend(new GLatLng(tempMarker.getLatLng().lat(), tempMarker.getLatLng().lng() ));
				}
				ck_lat =  res[i]['lat']; ck_lng = res[i]['len'];
				
				//marker nach stadt		
				if(ort != res[i]['ort']){
				
					ort_count=0;
					idArr = '';
					for(var j=0; j<res.length; j++){
						if(res[j]['ort']==res[i]['ort']){
							ort_count++;
							idArr += res[j]['uid']+"xxx";
							
						}	
					}
					//mgr.addMarker(createMarker(res[i], i, plz_count),1,6);
					citys[citys.length]=res[i]['ort'];
					mgr.addMarker(createMarker(res[i], i, ort_count, 'blue','ort',idArr),6,9);
					
				}
				ort=res[i]['ort'];
				
				//marker nachland		
				if(land != res[i]['land']){
					land_count=0;
					idArr = '';
					for(var j=0; j<res.length; j++){
						if(res[j]['land']==res[i]['land']){
							land_count++;
							idArr += res[j]['uid']+"xxx";
						}	
					}
					mgr.addMarker(createMarker(res[i], i, land_count, 'blue', 'land',idArr),1,5);
					idArr='';
				}
				land=res[i]['land'];
				
			}
						
			var ZoomLvl=map.getBoundsZoomLevel(new GLatLngBounds( new GLatLng(bounds.getSouthWest().lat(), bounds.getSouthWest().lng() ),new GLatLng( bounds.getNorthEast().lat(), bounds.getNorthEast().lng() ) ));
			if(initByLand==1){
				mgr.refresh();
				//map.setCenter(new GLatLng( bounds.getCenter().lat(), bounds.getCenter().lng() ));
				if(document.getElementById('select_coutry')[document.getElementById('select_coutry').selectedIndex].value == 'Deutschland'  || document.getElementById('select_coutry')[document.getElementById('select_coutry').selectedIndex].value == 'Germany'    ){
					map.setCenter(new GLatLng( bounds.getCenter().lat(), bounds.getCenter().lng() ),6);
					//map.setZoom(6)
				}else{
					
					map.setCenter(new GLatLng( bounds.getCenter().lat(), bounds.getCenter().lng() ), ZoomLvl);
						//map.setZoom(ZoomLvl)
				}
			}
			initByLand=1;
		}else{
			
		}
		land='xxxx';
		ort='xxx';
		ck_lat='xxx';
		ck_lng='xxx';
		bounds="";
		//Menüs generieren
		//Städte
		var L = document.getElementById('select_coutry');	
		if(L.selectedIndex > 0){
			if(lang == 'de'){
				var tempLand = 'land='+encodeURIComponent(L[L.selectedIndex].value);
			}else{
				var tempLand = 'country='+encodeURIComponent(L[L.selectedIndex].value);
			}
		
		}else{
			var tempLand = '';
		}
	
		if(lang=='de'){
			var query = "/fileadmin/weitclickscripts/google_standortkarte.php?action=getJSON&langu="+lang+"&"+tempLand;
		}else{
			var query = "/fileadmin/weitclickscripts/google_standortkarte.php?action=getJSON&langu="+lang+"&"+tempLand;
		}
		
		if(document.getElementById('select_firm').selectedIndex  != '0'    ){
			query += "&firma=" + encodeURIComponent(document.getElementById('select_firm')[document.getElementById('select_firm').selectedIndex].value); 
		}
		if(document.getElementById('select_zip').selectedIndex  != '0' && !document.getElementById('select_zip').disabled     ){
			query+= "&plz="+encodeURIComponent(document.getElementById('select_zip')[document.getElementById('select_zip').selectedIndex].value);
		}
		query = query;
		$.get(query, function(result){
			
			if(result !='null'){
				updateCitySelection( eval(result) );
			}
		});
		//Menüs generieren
		//firmen
		
		L = document.getElementById('select_coutry');	
		if(lang=='de'){
			var query = "/fileadmin/weitclickscripts/google_standortkarte.php?action=getJSON&langu="+lang+"&"+tempLand;
		}else{
			var query = "/fileadmin/weitclickscripts/google_standortkarte.php?action=getJSON&langu="+lang+"&"+tempLand;
		}
		if(document.getElementById('select_city').selectedIndex  != '0'    ){
			query += "&stadt=" + encodeURIComponent(document.getElementById('select_city')[document.getElementById('select_city').selectedIndex].value); 
		}
		if(document.getElementById('select_zip').selectedIndex  != '0' && !document.getElementById('select_zip').disabled     ){
			query+= "&plz="+encodeURIComponent(document.getElementById('select_zip')[document.getElementById('select_zip').selectedIndex].value);
		}
		query = query;
		$.get(query, function(result){
			if(result !='null'){
				updateOfficeSelection( eval(result) );
			}
		});

		//PLZ einschränken
		var selCountry = document.getElementById('select_coutry')[document.getElementById('select_coutry').selectedIndex].value;
		if(selCountry == 'Deutschland' || selCountry == 'Germany'){
			L = document.getElementById('select_coutry');	
			if(lang=='de'){
				var query = "/fileadmin/weitclickscripts/google_standortkarte.php?action=getJSON&langu="+lang+"&land="+encodeURIComponent(L[L.selectedIndex].value);
			}else{
				var query = "/fileadmin/weitclickscripts/google_standortkarte.php?action=getJSON&langu="+lang+"&country="+encodeURIComponent(L[L.selectedIndex].value);
			}
			if(document.getElementById('select_city').selectedIndex  != '0'    ){
				query += "&stadt=" + encodeURIComponent(document.getElementById('select_city')[document.getElementById('select_city').selectedIndex].value); 
			}
			if(document.getElementById('select_firm').selectedIndex  != '0'    ){
				query += "&firma=" + encodeURIComponent(document.getElementById('select_firm')[document.getElementById('select_firm').selectedIndex].value); 
			}
			query = query;
			$.get(query, function(result){
				if(result!='null'){
					updatePLZSelection( eval(result) );
				}
			});
		}
	}catch(e){
		if(lang=='de'){
			showHelp(helpTxt [0]['street_not_found'])	;
		}else{
			showHelp(helpTxt [1]['street_not_found'])	;
		}
	}
}

function updateCitySelection(a_citys){
	var citys=new Array;
	for(var i=0; i<a_citys.length; i++){
		citys[citys.length]=a_citys[i]['ort'];
	}
	citys.sort();
	var city = '';
	var my_c = new Array;
	for(i=0; i<citys.length; i++){
		if(city != citys[i]){
			my_c[my_c.length] = citys[i];
			city=citys[i];
			
		}
	}
	
	var d = document
	var saveSelected = d.getElementById('select_city')[d.getElementById('select_city').selectedIndex].value
	
	document.getElementById( 'select_city' ).innerHTML ='';
	var sel = d.createElement('option');
	sel.setAttribute( 'value', 'Auswahl Stadt');
	if(lang=='de'){
		sel.innerHTML='Auswahl Stadt';
	}else{
		sel.innerHTML='Selection city';
	}
	
	document.getElementById( 'select_city' ).appendChild( sel );
	
	for( i = 0; i< my_c.length; i++){
		sel = d.createElement('option');
		sel.setAttribute( 'value', my_c[i]);
		
		if(saveSelected==my_c[i]){
			sel.setAttribute( 'selected', 'selected');
		}
		
		sel.innerHTML=my_c[i];
		document.getElementById( 'select_city' ).appendChild( sel );
	}
} 

function updatePLZSelection(plzs){
	var saveAkt = 'xxx';
	d=document;
	var name;
	var val;
	var args = new Array(0,0,0,0,0,0,0,0,0);
	for(var i=0; i<plzs.length; i++){
		args[Math.ceil(plzs[i]['plz']/10000)-1] = 1;
	}	
	saveAkt = document.getElementById('select_zip')[document.getElementById('select_zip').selectedIndex].value;
	document.getElementById( 'select_zip' ).innerHTML ='';
	var sel = d.createElement('option');
	sel.setAttribute( 'value', 'PLZ-Deutschland');
	if(lang=='de'){
		sel.innerHTML='PLZ-Deutschland';
	}else{
		sel.innerHTML='Postal code Germany';
	}
	document.getElementById( 'select_zip' ).appendChild( sel );
	
	
	
	for(i=0; i<10; i++){
		
		if(args[i]==1){
			
			switch(parseInt(i)){
				case 0:
					name="00001-09999"; val="00000";
				break;
				case 1:
					name="10000-19999"; val="10000";
				break;
				case 2:
					name="20000-29999"; val="20000";
				break;
				case 3:
					name="30000-39999"; val="30000";
				break;
				case 4:
					name="40000-49999"; val="40000";
				break;
				case 5:
					name="50000-59999"; val="50000";
				break;
				case 6:
					name="60000-69999"; val="60000";
				break;
				case 7:
					name="70000-79999"; val="70000";
				break;
				case 8:
					name="80000-89999"; val="80000";
				break;
				case 9:
					name="90000-99999"; val="90000";
				break;
			
				
				
				
			}
			sel = d.createElement('option');
			sel.setAttribute( 'value', val);
			
			sel.innerHTML=name;
			document.getElementById( 'select_zip' ).appendChild( sel );
			
			
		}
	}
	document.getElementById( 'select_zip' ).selectedIndex = ((saveAkt/10000)+1);

	
}





function updateOfficeSelection(a_offices){
	var offices=new Array;
	for(var i=0; i<a_offices.length; i++){
		offices[offices.length]=a_offices[i]['firma'];
	}

	offices.sort();
	var office = '';
	var my_o = new Array;
	for(i=0; i<offices.length; i++){
		if(office != offices[i]){
			my_o[my_o.length] = offices[i];
			office=offices[i];
			
		}
	}
	var d = document
	var saveSelected = d.getElementById('select_firm')[d.getElementById('select_firm').selectedIndex].value
	
	document.getElementById( 'select_firm' ).innerHTML ='';
	var sel = d.createElement('option');
	sel.setAttribute( 'value', 'Auswahl Stadt');
	
	if(lang=='de'){
		sel.innerHTML='Auswahl Firma';
	}else{
		sel.innerHTML='Selection office';
	}
	
	document.getElementById( 'select_firm' ).appendChild( sel );
	
	for( i = 0; i< my_o.length; i++){
		sel = d.createElement('option');
		sel.setAttribute( 'value', my_o[i]);
		
		if(saveSelected==my_o[i]){
			sel.setAttribute( 'selected', 'selected');
		}
		
		sel.innerHTML=my_o[i];
		document.getElementById( 'select_firm' ).appendChild( sel );
	}
} 
/*
function geoPoint(){
	address = 'germany, hamburg '+document.getElementById('streetName').value;			
	address.replace(/ /g,'+', address);
	gGeocoder = new GClientGeocoder();
	gGeocoder.getLatLng(address, function(newUserPoint){
		if(newUserPoint != null){
			map.panTo(newUserPoint);
		}else{
			showHelp('street_not_found');
		}
	});
}
*/

function clearSelects(){
	var firma = document.getElementById('select_firm');
	firma.selectedIndex = 0;
	var stadt = document.getElementById('select_city');	
	stadt.selectedIndex = 0;
	var plz = document.getElementById('select_zip');	
	plz.selectedIndex = 0;
}

function checkPLZ(){
	var elem = document.getElementById('select_coutry');
	
	if(elem[elem.selectedIndex].value == 'Deutschland' || elem[elem.selectedIndex].value == 'Germany'){
		document.getElementById('select_zip').disabled=false;
	}else{
		document.getElementById('select_zip').selectedIndex = 0;
		document.getElementById('select_zip').disabled=true;
		
	}
	
}

var markers = new Array();

function createMarker(myRes, index, number, color, accuracy,ids){
	var icon= new GIcon();	//neues icon erzeugen
	
	
		icon.image = "/fileadmin/design/images/google_weltweit/marker_"+color+"_"+ number+".png";	
	
		
	
	
	//icon.shadow = "http://labs.google.com/ridefinder/images/mm_20_shadow.png";
	//icon.shadowSize = new GSize(14, 23);
	icon.iconSize = new GSize(31, 35);	
	icon.iconAnchor = new GPoint(0, 35);
	icon.infoWindowAnchor = new GPoint(26, 5);		
	
	switch(accuracy){
		case 'exact':
			var point = new GLatLng(myRes['len'],myRes['lat'] );
			var base="exact"
		break;
		case 'ort':
		
			var point = new GLatLng(myRes['len_city'],myRes['lat_city'] );
			var base="ort"
		break;
		case 'land':
			var point = new GLatLng(myRes['len_country'],myRes['lat_country'] );
			var base="land"
		break;
		default: alert( 'accuracy');
		break;
	}
	
	//var point = new GLatLng(myRes['len'],myRes['lat'] );
	var marker = new GMarker(point, icon);
		GEvent.addListener(marker, "click", function() {
			var markerHtml =createMarkerHTML(myRes['land'],ids,myRes['land'], base);
			if(markerHtml !=0){
				tooltip = marker.openInfoWindowHtml(createMarkerHTML(myRes['land'],ids,myRes['land'], base) );	
			}
		});
		//marker.bindInfoWindowHtml( createMarkerHTML(index) );
		//markers[markers.length] = marker;
		  markerArr[markerArr.length]=marker;
		return marker;
		//map.addOverlay(markers[markers.length-1]);
}
var myBase;

function createMarkerHTML(str, ids, land, base){
	
	myBase = base;
	var pos;
	var myIds = ids.split('xxx');
	
	myIds.pop();//leeres Feld am ende leeren
	
	if(myIds.length <= 1){
		
		for(var i=0; i<res.length; i++){
			if(myIds[0] == res[i]['uid']){
				zoomToSingle(res[i]['uid'], ids , 'nobacklink')
			}
		}
		return 0;
	}
	
	for(var i=0; i<res.length; i++){
		if(res[i]['land'] == land){
			var country = res[i]['country'];
			break;
		}
	
	}
	
	
	
	//eventuell alternative ob in DB-Vorhanden abfragen
	imagePath="./fileadmin/design/images/google_hamburg/dummy_standort.jpg";
	
	var html = '';
		html +=	'<div class="marker_container"  >';
			if(base == 'land'){
				if(lang == 'de'){
					html += 	"<b>"+myIds.length+" Standorte in "+ land +"</b>";
				}else{
					html += 	"<b>"+myIds.length+" locations in "+ country +"</b>";
				}
			}else{
				var city_location = 'xxx'
				for(var i=0;i<myIds.length; i++){
					for(var j=0; j<res.length; j++){
						if(res[j]['uid'] == myIds[i]){
								city_location = res[j]['ort'];
								break;			
						}
					}
				}
				
				
				
				if(lang == 'de'){
					html += 	"<b>"+myIds.length+" Standorte in "+ city_location +"</b>";
				}else{
					html += 	"<b>"+myIds.length+" locations in "+ city_location +"</b>";
				}
			}
			html+="<div class='tooltip_scroll'>";
			for(var i=0;i<myIds.length; i++){
				for(var j=0; j<res.length; j++){
					if(res[j]['uid'] == myIds[i]){
						html+="<div class='tooltip_topic' onclick=\"zoomToSingle("+res[j]['uid']+",'"+ ids +"')\">";
							if(lang == 'de'){
								html+="<b>Niederlassung "+res[j]['ort']    +"</b><br />";
							}else{
								if(res[j]['ort_en'] != 0 && res[j]['ort_en'] != ""){
									html+="<b>Location "+res[j]['ort_en']    +"</b><br />";
								}else{
									html+="<b>Location "+res[j]['ort']    +"</b><br />";
								}
							}
							html+="<span>"+res[j]['firma']  +"</b>";
						html+="</div >";
						pos=j;
					}
				}
			}
			html+="</div >";
			html+="<a href='#' class='tooltip_zoomIn' onclick=\"zoomTooltip('"+res[pos]['len_country']+"', '"+res[pos]['lat_country']+"','"+res[pos]['len_city']+"','"+res[pos]['lat_city']+"'); this.blur(); return false;\">Zoom</a>"; 
		html += '</div>';
	return html;
}

function zoomTooltip(len_coun, lat_coun, len_cit, lat_cit){
	if(myBase=='land'){
		
		map.setCenter(new GLatLng(len_coun, lat_coun),  6);
	}else if(myBase == 'ort' ){
		map.setCenter(new GLatLng(len_cit,lat_cit),  10);
	}
	
}

//DetailTooltip erstellen
function zoomToSingle(myId,back,backlink){
	for(var j=0; j<res.length; j++){
		if(res[j]['uid'] == myId){
			pos=j;
		}
	}
	
	var img;
	var img_size;
	//standard logo nach Land auswählen
	switch(res[pos]['land']){
		case 'Deutschland': img = 'stroeerlogo_right.gif'; img_size=35; break;
		case 'Türkei': img = 'stroeer_tuerkei.gif'; img_size=34; break;
		case 'Polen': img = 'stroeerlogo_right_01.gif'; img_size=34; break;
		case 'Großbritannien': img = 'blowup_right.gif'; img_size=40; break;
		case 'Frankreich': img = 'blowup_right_01.gif'; img_size=41; break;
		case 'Niederlande': img = 'blowup_right_01.gif'; img_size=41; break;
		case 'Spanien': img = 'blowup_right_01.gif'; img_size=41; break;
		case 'Ukraine': img = 'kontakt_ukraine.gif'; img_size=20; break;
		case 'Malaysia': img = 'stroeer_malaysia.gif';  img_size=25; break;
		case 'Vereinigte Arabische Emirate': img = 'stroeer_concept.gif'; img_size=23; break;
		case 'Ukraine': img = 'kontakt_ukraine.gif'; img_size=20; break;
		case 'Belgien': img = 'blowup_right_01.gif'; img_size=41; break;
		case 'defualt': img = 'none'; break;
		
	}
	
	//überschreiben Standart falls spezifisches logo vorhanden
	if(res[pos]['firmen_logo'] != 0 && res[pos]['firmen_logo'] != ""){
		img = res[pos]['firmen_logo'];
		img_size=35;
	}
	
	
	
	
	var iwPoint = new GLatLng(res[pos]['len'],res[pos]['lat']); 
		
	
	var html = '';
		html +=	'<div class="marker_container"  >';
			if(img!='none'){
				html += "<img src='/fileadmin/design/images/google_weltweit/logos/" + img + "' alt='Firmenlogo " + res[pos]['land'] + "' height='"+img_size+"' />";			
			}
			html+="<div class='tooltip_scroll_no'>";
			var pos;
			for(var j=0; j<res.length; j++){
				if(res[j]['uid'] == myId){
					pos=j;
						html+="<b>"+res[pos]['firma']    +"</b><br />";
						html+="<span>"+res[pos]['zusatz1']  +"</span><br />";
						if(lang == "de"){
							html+="<span>"+res[pos]['strasse']  +" "+res[pos]['hausnr']+" . "+res[pos]['plz']+" "+res[pos]['ort']         +"</span><br />";
						}else{	
							if(res[pos]['ort_en'] != 0 && res[pos]['ort_en'] != ""){
								html+="<span>"+res[pos]['strasse']  +" "+res[pos]['hausnr']+" . "+res[pos]['plz']+" "+res[pos]['ort_en']         +"</span><br />";
							}else{
								html+="<span>"+res[pos]['strasse']  +" "+res[pos]['hausnr']+" . "+res[pos]['plz']+" "+res[pos]['ort']         +"</span><br />";
							}
						}	
						if(res[pos]['telefon'] != ''){
							if(lang=='de'){
								html+="<span>"+helpTxt [0]['tel']+ " " +res[pos]['telefon']  +"</span><br />";
							}else{
								html+="<span>"+helpTxt [1]['tel']+ " " +res[pos]['telefon']  +"</span><br />";
							}
						}
						if(res[pos]['fax'] != ''){
							html+="<span>Fax "+res[pos]['fax']  +"</span><br />";
						}
					
					
				}
			}
			
			html+="</div >";
			if(lang=='de'){
				if(backlink != 'nobacklink'){
					html+="<a href=\"#\" onclick=\"ttOpener('','"+back+"','"+res[pos]['land']+"',"+pos+" ); return false;\" class='link_arrow'>"+helpTxt[0]['backlink']+"</a>";
				}else{
					html+="<a href=\"#\" onclick=\"ttBack('','"+back+"','"+res[pos]['land']+"',"+pos+" ); return false;\" class='link_arrow'>"+helpTxt [0]['backlink']+"</a>";
				}
			}else{
				if(backlink != 'nobacklink'){
					html+="<a href=\"#\" onclick=\"ttOpener('','"+back+"','"+res[pos]['land']+"',"+pos+" ); return false;\" class='link_arrow'>"+helpTxt [1]['backlink']+"</a>";
				}else{
					html+="<a href=\"#\" onclick=\"ttBack('','"+back+"','"+res[pos]['land']+"',"+pos+" ); return false;\" class='link_arrow'>"+helpTxt [1]['backlink']+"</a>";
				}
				
			}
			html+="<a href=\"javascript:zoomIn("+res[pos]['len']+","+res[pos]['lat']+")\" class='zoom_in'>Zoom</a>";
			html += "<div style='clear: both; line-height: 0px; font-size: 0px;'></div>";
		html += '</div>';
		
		tooltip=map.openInfoWindowHtml(iwPoint,html,{pixelOffset:new GSize(26,-26) });
		map.setCenter(iwPoint,  14);
		
	return html;
}

function zoomIn(len, lat){
	
	map.setCenter(new GLatLng(len,lat), 17);	
}



function ttOpener(msg, back, land, pos){
	
	switch(myBase){
		case 'exact':
			zoomTo=14;
			var geoPrefix="";
		break;
		case 'ort':
			zoomTo=7;
			var geoPrefix="_city";
		break;
		case 'land':
			zoomTo=4;
			var geoPrefix="_country";
		break;
		default: alert( 'zoomTo:Default');
		break;
	}
	map.setCenter(iwPoint,  zoomTo);
	var iwPoint = new GLatLng(res[pos]['len'+geoPrefix],res[pos]['lat'+geoPrefix]); 
	tooltip = map.openInfoWindowHtml(iwPoint,createMarkerHTML('',back,land,myBase),{pixelOffset:new GSize(26,-26) } );
	
	
	
}

function ttBack(msg, back, land, pos){
	switch(myBase){
		case 'exact':
			zoomTo=14;
			var geoPrefix="";
		break;
		case 'ort':
			zoomTo=7;
			var geoPrefix="_city";
		break;
		case 'land':
			zoomTo=4;
			var geoPrefix="_country";
		break;
		default: alert( 'zoomTo:Default');
		break;
	}
	map.setCenter(iwPoint,  zoomTo);
	var iwPoint = new GLatLng(res[pos]['len'+geoPrefix],res[pos]['lat'+geoPrefix]); 
	map.closeInfoWindow();
	
	
	
}

function showCentral(){
	var icon= new GIcon();	//neues icon erzeugen
	
	
	icon.image = "/fileadmin/design/images/google_weltweit/marker_orange_1.png";	
	icon.iconSize = new GSize(31, 35);	
	icon.iconAnchor = new GPoint(0, 35);
	//icon.iconAnchor = new GPoint(26, 05);
	icon.infoWindowAnchor = new GPoint(5, 1);	
	//marker.bindInfoWindowHtml( createMarkerHTML(index) );
	//markers[markers.length] = marker;
	 
	
	var img;
	img = 'stroeerlogo_right.gif'; 
	var iwPoint = new GLatLng(50.860499,6.998913); 
	
	var centralMarker = new GMarker(iwPoint,icon);
	map.addOverlay(centralMarker);	
	
	var html = '';
		html +=	'<div class="marker_container"  >';
			
				html += "<img src='/fileadmin/design/images/google_weltweit/logos/stroeerlogo_right.gif' alt=''    />";			
			
			html+="<div class='tooltip_scroll_no'>";
			var pos;
				if(lang=="de"){
					html+="<b>Ströer Out-of-Home Media AG</b><br />";
					html+="<span>Konzernzentrale</span><br />";
					html+="<span>Ströer Allee 1 . 50999 Köln</span><br />";
					html+="<span>Telefon 02236.96 45-0</span><br />";
					html+="<span>Fax 02236.96 45-299</span><br />";
				}else{
					html+="<b>Ströer Out-of-Home Media AG</b><br />";
					html+="<span>Corporate headquater</span><br />";
					html+="<span>Ströer Allee 1 . 50999 Cologne</span><br />";
					html+="<span>Phone +49 (0) 2236.96 45-0</span><br />";
					html+="<span>Fax +49 (0) 2236.96 45-299</span><br />";
				}
			html+="</div >";
			//html+="<a href=\"javascript:zoomIn("+res[pos]['len']+","+res[pos]['lat']+")\" class='zoom_in'>Herranzoomen</a>";
		html += '</div>';
		
		zentralTT = map.openInfoWindowHtml(iwPoint,html,{onCloseFn:function(){
			map.removeOverlay(centralMarker);
		},pixelOffset:new GSize(26,-26) });
		map.setCenter(iwPoint,  14);
		
		
	
}
	
	
	
	
	
	
	
	
	




/*
function openInfoWindow(pos){
	iwPoint = new GLatLng(markers[pos].getLatLng().y, markers[pos].getLatLng().x ); 
	iw = map.openInfoWindowHtml(iwPoint, createMarkerHTML(pos) );
	var iwPoint = new GLatLng(res[pos]['len'],res[pos]['lat']); 
	tooltip=map.openInfoWindowHtml(iwPoint,html);
	map.setCenter(iwPoint,  14);
}
*/

function panToStreet(){
	address = 'germany, hamburg '+document.getElementById('streetName').value;			
	address.replace(/ /g,'+', address);
	gGeocoder = new GClientGeocoder();
	gGeocoder.getLatLng(address, function(newUserPoint){
		if(newUserPoint != null){
			map.panTo(newUserPoint);
		}else{
			showHelp('street_not_found');
		}
	});
}


function showHelp(text){
	$('#help').show('fast');
	document.getElementById('helpText').innerHTML=helpTxt[0][text];
}


function closeHelp(){
	$('#help').hide('fast');
}


function showHelp(text){
	$('#help').show('fast');
	document.getElementById('helpText').innerHTML=text;
}


function closeHelp(){
	$('#help').hide('fast');
}

