var liveSearchReq = false;
var t = null;
var liveSearchLast = "";
var bMove = false;
var sSubmit = false;

function liveSearchStart(getData) {
	alert(document.forms.searchform.strasse.value);
	if (document.forms.searchform.strasse.value=='' && document.forms.searchform.ort.value=='' && document.forms.searchform.plz.value=='')
	{
		tmp=true;
		alert('Shrawan');
	}
	else
	{
		tmp=getData;
		alert('Kiran');
	}

	if (t) {
		window.clearTimeout(t);
	}
	t = window.setTimeout("liveSearchDoSearch("+tmp+")",200);
}

function liveSearchDoSearch(getData) {
	alert('liveSearchDoSearch');
	if (typeof liveSearchRoot == "undefined") {
		liveSearchRoot = "/mymaps24";
		liveSearchRoot = "";
	}
	if (typeof liveSearchRootSubDir == "undefined") {
		liveSearchRootSubDir = "";
	}
	if (typeof liveSearchParams == "undefined") {
		liveSearchParams2 = "";
	} else {
		liveSearchParams2 = "&" + liveSearchParams;
	}

	if (liveSearchReq && liveSearchReq.readyState < 4) {
		liveSearchReq.abort();
	}

	sSubmit = false;

	loadDataDiv(getData);

	var sSearch = "";
	if (getData){
		sSearch += "&sType=data";
		sSearch += "&mType="+document.forms.searchform.mType.value+"";
		sSearch += "&latitude="+map.getCenter().lat()+"";
		sSearch += "&longitude="+map.getCenter().lng()+"";
		if (document.forms.searchform.mType.value==0 || document.forms.searchform.mType.value==1){
			if (document.forms.searchform.m0.checked) sSearch += "&m0=t";
			if (document.forms.searchform.m1.checked) sSearch += "&m1=t";
			if (document.forms.searchform.m4.checked) sSearch += "&m4=t";
			if (document.forms.searchform.m7.checked) sSearch += "&m7=t";
			if (document.forms.searchform.m8.checked) sSearch += "&m8=t";
			if (document.forms.searchform.m10.checked) sSearch += "&m10=t";
			sSearch += "&rx="+document.forms.searchform.rx.value+"";
			sSearch += "&ry="+document.forms.searchform.ry.value+"";
			sSearch += "&mx="+document.forms.searchform.mx.value+"";
			sSearch += "&my="+document.forms.searchform.my.value+"";
			sSearch += "&cx="+document.forms.searchform.cx.value+"";
			sSearch += "&cy="+document.forms.searchform.cy.value+"";
		}
	}else{
		sSearch += "&sType=center";
		sSearch += "&strasse="+document.forms.searchform.strasse.value+"";
		sSearch += "&ort="+document.forms.searchform.ort.value+"";
		sSearch += "&plz="+document.forms.searchform.plz.value+"";
	}
	var liveSearchReq = GXmlHttp.create();
	liveSearchReq.open("GET", liveSearchRoot + "/livesearch.php?" + sSearch + liveSearchParams2,true);
	//alert(liveSearchRoot + "/livesearch.php?" + sSearch + liveSearchParams2);
	liveSearchReq.onreadystatechange = function() {
											if (liveSearchReq.readyState == 4) {
												if (liveSearchReq.status == 200) {
													showMarker(liveSearchReq.responseXML);
												}
											}
											delete liveSearchReq
										};
	liveSearchReq.send(null);
	sSearch = null;
	oldCenter = map.getCenter();
}

function loadDataDiv(getData){
	var  sh = document.getElementById("rPanel");
	if (getData) text = 'Daten werden geladen.';
	else text = 'Karte wird zentriert.';
	sh.innerHTML = '<img src="http://www.mymaps24.de/images/loading.gif" border=0>&nbsp;'+text;
}

function showMarker(response){
	var xmlSettings = response.documentElement.getElementsByTagName("settings");
	var mType = xmlSettings[0].getAttribute("mType");
	var sType = xmlSettings[0].getAttribute("sType");
	if (sType=='error'){
		return 'Zu Ihren Angaben konnte leider nichts gefunden werden';
	}else if(sType=='center'){
		var xmlCenter = response.documentElement.getElementsByTagName("center");
		if (xmlCenter.length==1) {
			bMove=false;
			map.setCenter(new GLatLng(xmlCenter[0].getAttribute("lat"),xmlCenter[0].getAttribute("lng")),parseInt(xmlCenter[0].getAttribute("zoom")));
			if (bMove==false) liveSearchStart(true);
			return '';
		}else{
			return 'Fehler beim Ermitteln der Koordinaten!';
		}
	}else if(sType=='data'){
		map.clearOverlays();
		/*
		for (var row in gmarkers) {
			map.removeTLabel(gmarkers[row]);
		}*/
		gmarkers = new Array();
		gdata = new Array();
		getData(parseInt(mType),response.documentElement.getElementsByTagName("marker"));
	}
}


function getData(maptyp,recordset) {
	switch (maptyp){
	case 0:
		for (var i=0;i<recordset.length;i++) {
			//var j = recordset[i].getAttribute("id");
			var j = i;
			gdata[j] = new Array();
			gdata[j]['id'] =recordset[i].getAttribute("id");
			gdata[j]['maptyp'] =maptyp;
			gdata[j]['zimmer'] =recordset[i].getAttribute("zimmer");
			gdata[j]['flaeche'] =recordset[i].getAttribute("flaeche");
			gdata[j]['kaltmiete'] =recordset[i].getAttribute("kaltmiete");
			gdata[j]['strasse'] =recordset[i].getAttribute("strasse");
			gdata[j]['hausnr'] =recordset[i].getAttribute("hausnr");
			gdata[j]['plz'] =recordset[i].getAttribute("plz");
			gdata[j]['ort'] =recordset[i].getAttribute("ort");
			gdata[j]['lat'] =recordset[i].getAttribute("lat");
			gdata[j]['lng'] =recordset[i].getAttribute("lng");
			gdata[j]['dist'] =recordset[i].getAttribute("dist");
			gdata[j]['heading'] =recordset[i].getAttribute("heading");
			gdata[j]['immotyp'] =recordset[i].getAttribute("immotyp");
			gdata[j]['link'] =recordset[i].getAttribute("link");
			gdata[j]['image'] =recordset[i].getAttribute("image");
		}
		break;
	case 1:
		for (var i=0;i<recordset.length;i++) {
			//var j = recordset[i].getAttribute("id");
			var j = i;
			gdata[j] = new Array();
			gdata[j]['id'] =recordset[i].getAttribute("id");
			gdata[j]['maptyp'] =maptyp;
			gdata[j]['lat'] =recordset[i].getAttribute("lat");
			gdata[j]['lng'] =recordset[i].getAttribute("lng");
			gdata[j]['plz'] =recordset[i].getAttribute("plz");
			gdata[j]['sum'] =recordset[i].getAttribute("sum");
			gdata[j]['immotyp'] =recordset[i].getAttribute("immotyp");
		}
		break;
	}

	var  sh = document.getElementById("rPanel");
	sh.innerHTML = '<img src="http://www.mymaps24.de/images/loading.gif" border=0>&nbsp; Hotspots werden gesetzt';

	t = window.setTimeout("plott("+maptyp+")", 100);
}

function plott(maptyp){
	if (t) clearTimeout(t);

	var bounds = new GLatLngBounds();
	for (var row in gdata) {
		switch (maptyp){
		case 1:
			/*
			var tt='';
			switch(parseInt(gdata[row]['immotyp'])){
			case 0:
				tt = 'Wohnung';
				break;
			case 1:
				tt = 'Haus';
				break;
			case 4:
				tt = 'Möblierte';
				break;
			case 7:
				tt = 'Büro';
				break;
			case 8:
				tt = 'Geschäftsraum';
				break;
			case 10:
				tt = 'Lager/Halle';
				break;
			}
			var content = '<div class="box fontS" style="padding:3px;width:120px">';
			content += '<b>'+tt+'</b><br><br>';
			content += '<b>PLZ:</b> '+gdata[row]['plz']+'<br>';
			content += '<b>Preis/m²:</b> '+gdata[row]['sum'].replace(/\./g,",") +' &euro;<br><br>';
			content += '</div>';

			var label = new TLabel();
			label.id = row;
			label.anchorLatLng = new GLatLng (gdata[row]['lat'],gdata[row]['lng']);
			label.anchorPoint = 'center';
			label.content = content;
			label.percentOpacity = 0;

			map.addTLabel(label);
			gmarkers[row] = label;
			break;*/
		case 0:
			gmarkers[row] = createMarker(new GLatLng(gdata[row]['lat'],gdata[row]['lng']),row,gdata[row]['immotyp']);
			map.addOverlay(gmarkers[row]);
			break;
		}
		bounds.extend(new GLatLng(gdata[row]['lat'],gdata[row]['lng']));
	}
	maxZoomOut = map.getBoundsZoomLevel(bounds);

	var  sh = document.getElementById("rPanel");
	sh.innerHTML = '<img src="http://www.mymaps24.de/images/loading.gif" border=0>&nbsp; Auflistung wird geschrieben';

	t = window.setTimeout("writeTable("+maptyp+")", 100);
}

function writeTable(maptyp){
	if (t) clearTimeout(t);

	var sTable = '<table class="sortable" id="listTbl">';

	switch (maptyp){
	case 0:
		sTable += '<tr><th></th><th>Entf.</th><th>Zimmer</th><th>Fl&auml;che</th><th>Kaltmiete</th><th>Addresse</th></tr>';
		var adc=1;
		for (var row in gdata) {
			var heading = gdata[row]['heading'];
			if (heading.length>0) sTable += '<tr><td colspan="8">'+heading+'</td></tr>';
			sTable += '<tr><td><a href="javascript:showInfo('+row+');"><img src="http://www.mymaps24.de/images/icon_s_'+0+'.gif" border="0"></a></td>';
			sTable += '<td>'+gdata[row]['dist'].replace(/\./g,",") + ' km&nbsp;&nbsp;&nbsp;</td>';
			sTable += '<td>'+gdata[row]['zimmer'].replace(/\./g,",") + '</td>';
			sTable += '<td>'+gdata[row]['flaeche'].replace(/\./g,",") + '</td>';
			sTable += '<td>'+gdata[row]['kaltmiete'].replace(/\./g,",") + ' &euro;</td>';
			sTable += '<td>'+gdata[row]['strasse']+' '+gdata[row]['hausnr']+'<br>'+gdata[row]['plz']+' '+gdata[row]['ort']+'</td><td width="100%">&nbsp;</td></tr>';
			/*
			if (adc==20){
				sTable += '<tr><td colspan=8 style="padding: 0px 0px 0px 25px;">';
				sTable += '<iframe src="adsense.html" width="234" height="60" name="adsense_box" scrolling="no" marginheight="0" marginwidth="0" frameborder="0"></iframe>';
				sTable += '</td></tr>';
				adc=1;
			}else adc++;
			*/
		}
		break;
	case 1:
		sTable += '<tr><th width="10%"></th><th width="30%"></th><th width="30%">PLZ</th><th width="30%">Preis/m²</th></tr>';
		var adc=1;
		for (var row in gdata) {
			tt='';
			switch(parseInt(gdata[row]['immotyp'])){
			case 0:
				tt = 'Wohnung';
				break;
			case 1:
				tt = 'Haus';
				break;
			case 4:
				tt = 'Möblierte';
				break;
			case 7:
				tt = 'Büro';
				break;
			case 8:
				tt = 'Geschäftsraum';
				break;
			case 10:
				tt = 'Lager/Halle';
				break;
			}
			sTable += '<tr><td><a href="javascript:showInfo('+row+');"><img src="http://www.mymaps24.de/images/icon_s_'+0+'.gif" border="0"></a>&nbsp;&nbsp;&nbsp;</td>';
			sTable += '<td>'+tt+'&nbsp;&nbsp;&nbsp;</td>';
			sTable += '<td>'+gdata[row]['plz']+'&nbsp;&nbsp;&nbsp;</td>';
			sTable += '<td>'+gdata[row]['sum'].replace(/\./g,",") +' &euro;&nbsp;&nbsp;&nbsp;</td></tr>';
			/*
			if (adc==20){
				sTable += '<tr><td colspan=8 style="padding: 0px 0px 0px 25px;">';
				sTable += '<iframe src="adsense.html" width="234" height="60" name="adsense_box" scrolling="no" marginheight="0" marginwidth="0" frameborder="0"></iframe>';
				sTable += '</td></tr>';
				adc=1;
			}else adc++;
			*/
		}
	}
	sTable += '</table>';

	var sh = document.getElementById("rPanel");
	sh.innerHTML = sTable;
	//sortables_init();
}

function getInfo(index){
	switch (gdata[index]['maptyp']){
	case 0:
		var tt='';
		switch(parseInt(gdata[index]['immotyp'])){
		case 0:
			tt = 'Wohnung zur Miete';
			break;
		case 1:
			tt = 'Haus zur Miete';
			break;
		case 4:
			tt = 'Möblierte Wohnung zur Miete';
			break;
		case 7:
			tt = 'Büro zur Miete';
			break;
		case 8:
			tt = 'Geschäftsraum zur Miete';
			break;
		case 10:
			tt = 'Lager/Halle zur Miete';
			break;
		}
		var heading = gdata[index]['heading'];
		var link = gdata[index]['link'];

		var detail = '<table width="250"><tr><td>';
		detail += '<div class="box fontS" style="padding:3px;">';
		detail += '<table><tr><td>';
		if (gdata[index]['image'].length>0){
			detail += '<img src="'+gdata[index]['image']+'" border="0">';
		}
		detail += '</td><td>';
		detail += tt+'<br>';
		detail += '<b>'+heading+'</b><br><br>';
		detail += ''+gdata[index]['zimmer'].replace(/\./g,",") + ' Zimmer, '+gdata[index]['flaeche'].replace(/\./g,",") + ' m²<br>'+gdata[index]['kaltmiete'].replace(/\./g,",") + ' &euro; Kaltmiete<br><br>'+gdata[index]['strasse']+' '+gdata[index]['hausnr']+'<br>'+gdata[index]['plz']+' '+gdata[index]['ort']+'<br>';
		detail += '<br>';
		detail += '<a href="javascript:zoom('+gdata[index]['lat']+','+gdata[index]['lng']+',15);">Zoom</a>';
		if (link.length>0) detail += '&nbsp;&nbsp;&nbsp;<a href="http://'+link+'" target="_blank">Link</a>';
		detail += '&nbsp;&nbsp;&nbsp;<a href="http://www.mymaps24.de/dPop.php?id='+gdata[index]['maptyp']+'_'+gdata[index]['id']+'" onclick="dPop(this.href);return false;" target="_blank">Details</a>';
		detail += '</td></tr></table>';
		detail += '</div>';
		detail += '</td></tr></table>';
		break;
	case 1:
		var tt='';
		switch(parseInt(gdata[index]['immotyp'])){
		case 0:
			tt = 'Wohnung';
			break;
		case 1:
			tt = 'Haus';
			break;
		case 4:
			tt = 'Möblierte';
			break;
		case 7:
			tt = 'Büro';
			break;
		case 8:
			tt = 'Geschäftsraum';
			break;
		case 10:
			tt = 'Lager/Halle';
			break;
		}
		var detail = '<div class="box fontS" style="padding:3px;width:250px;">';
		detail += '<b>'+tt+'</b><br><br>';
		detail += '<b>PLZ:</b> '+gdata[index]['plz']+'<br>';
		detail += '<b>Preis/m²:</b> '+gdata[index]['sum'].replace(/\./g,",") +' &euro;<br><br>';
		detail += '</div>';
		break;
	}
	return detail;
}

function showOrte(){
	
	
	var newpoints = new Array();

	var icon0=new GIcon();
	icon0.image = "imgs/marker_google1.png";
	//icon0.shadow = "imgs/mail_shadow.png";

	icon0.iconSize = new GSize(20, 34);
	icon0.shadowSize = new GSize(37, 34);
	icon0.iconAnchor = new GPoint(9, 34);
	icon0.infoWindowAnchor = new GPoint(9, 2);
	icon0.infoShadowAnchor = new GPoint(18, 25);
	
		newpoints[0]=new Array(-6.272377967834473,53.361078572692,icon0,'St. Peters Square','<div id="popup"><strong>St. Peters Square</strong><br><i>Opposite Phibsborough Shopping Center</i>,<br> Dublin 7.<br>P: 01 860 3144<br> F: 01 860 3145<br> E: info@cosmedics.ie</div>');
		


		
	for(var i = 0; i < newpoints.length; i++) {
	
		var point = new GPoint(newpoints[i][0],newpoints[i][1]);
	
		//Add overlay to map 
		var popuphtml = newpoints[i][4] ;
		var marker = createMarkerP(point,newpoints[i][2],popuphtml);
		map.addOverlay(marker);
		
	}
	
}

function showImage()
{
var stadt = new Array();

	
	//stadt[1] = new Array();
	//stadt[1]['icon'] = 'sample_files/Dublin.gif'; //Ireland
	//stadt[13]['lat'] = 53.33989334728329;
	//stadt[13]['lng'] = -6.282806396484375;
	//stadt[1]['lat'] = 53.34522266586594;
	//stadt[1]['lng'] = -6.2052154541015625;
	//stadt[1]['lat']=53.32431151982718;
	//stadt[1]['lng'] = -5.69091796875;
	
	for (var index in stadt) {
			
		var icon = new GIcon();
		icon.image = stadt[index]['icon'];
		icon.iconSize = new GSize(55, 34);
		icon.iconAnchor = new GPoint(27, 17);
		gmarkers[index] = createMarkerS(new GLatLng(stadt[index]['lat'],stadt[index]['lng']),index,icon);
	  	map.addOverlay(gmarkers[index]);
	}
}






