var myTimerInfosTowns;

function GetDistance(Lat1,Long1,Lat2,Long2)
{
 Lat1 = Lat1 * Math.PI / 180;
 Long1 = Long1 * Math.PI / 180;
 Lat2 = Lat2 * Math.PI / 180;
 Long2 = Long2 * Math.PI / 180;
 
 return 6366 * Math.acos((Math.cos(Lat1) * Math.cos(Lat2) * Math.cos(Long1-Long2)) + (Math.sin(Lat1) * Math.sin(Lat2)));
}

function findPos(obj) {
  var originalobj = obj;
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop, originalobj.offsetWidth, originalobj.offsetHeight];
}

function KeepInfosTown() {
 clearTimeout(myTimerInfosTowns);
}

function ShowInfosTowns(ville, stars, str, desc, pos, townid) {
 clearTimeout(myTimerInfosTowns);

 var PosX = pos[0] + (pos[2]/2) - 136;
 
 if(PosX < 260) {
  PosX = 260;
 }
 else {
  if(PosX > 675) {
	 PosX = 675;
	}
 }
 
 var PosBG = pos[0] + (pos[2]/2) - PosX - 3;

 document.getElementById('infostown').style.display = 'block';
 if(desc== '')
 {
 document.getElementById('infostown').innerHTML = "<div id=\"containerinfostown\"><div class=\"contentinfostown\"><h6>" + ville.replace(/-/g, '-<span style=\'width:0px;font-size: 0px;\'> </span>') + "&nbsp;" + stars + "</h6><p><strong>Localisation</strong> : " + str + "</p></div></div>";
 }
 else
 {
 document.getElementById('infostown').innerHTML = "<div id=\"containerinfostown\"><div class=\"contentinfostown\"><h6>" + ville.replace(/-/g, '-<span style=\'width:0px;font-size: 0px;\'> </span>') + "&nbsp;" + stars + "</h6><p><strong>Localisation</strong> : " + str + "<p class=\"desc\">" + desc + "</p></p></div></div>";
 
 }
 
 document.getElementById('infostown').style.top = (pos[1] + pos[3]) + 'px';
 document.getElementById('infostown').style.left = PosX + 'px';
 document.getElementById('containerinfostown').style.backgroundPosition = PosBG + 'px ' + 0 + 'px';
}



function UnShowInfosTownWithDelay(townid) {
 myTimerInfosTowns = setTimeout(" UnShowInfosTown();", 10);
}


function UnShowInfosTown() {
 document.getElementById('infostown').style.display = 'none';
 document.getElementById('infostown').style.innerHTML = '';
}

function AjaxListTowns(latitude, longitude)
{
 
 var url = '/AjaxSearchTownLatLong.aspx';
 var pars = 'long=' + latitude + '&lat=' + longitude;
 
 document.getElementById('ajaxsearchlatlong').innerHTML = '<img id="ajaxsearchlatlongloader" style="margin-left:125px;" src="/i/ajax-loader.gif" alt="Recherche de réponses" width="16" height="16" /><div id="ajaxsearchlatlongresults" style="display: none;"></div>';
 document.getElementById('ajaxsearchlatlong').style.display = 'block';
 document.getElementById('ajaxsearchlatlongresults').style.display = 'none';
 document.getElementById('ajaxsearchlatlongresults').style.display = 'none';
 
  var myAjax = new Ajax.Request(
			url, 
			{
				method: 'get', 
				parameters: pars,
				onSuccess: CompleteSearchTownLatLong
			});	
}

function CompleteSearchTownLatLong(originalRequest) {

 
 var SearchResult = originalRequest.responseText.replace('<root><![CDATA[','').replace(']]></root>', '').replace('<?xml version="1.0"?>','');
 document.getElementById('ajaxsearchlatlongloader').style.display = 'none';
 document.getElementById('ajaxsearchlatlongresults').innerHTML = SearchResult;
 document.getElementById('ajaxsearchlatlongresults').style.display = 'block';
 
 

}
