function carte_centrer()
{
	lat.value = lat.value=='' ? '46.890231573' : lat.value ;
	lng.value = lng.value=='' ? '1.669921875' : lng.value ;
	scale.value = scale.value=='' ? '5' : scale.value ;
	map.setCenter(new GLatLng(parseFloat(lat.value), parseFloat(lng.value)), parseInt(scale.value)) ;
}

function carte_enregistrer()
{
	var center = map.getCenter() ;
	lat.value = center.lat() ;
	lng.value = center.lng() ;
	scale.value = map.getZoom() ;
}

function carte_chercher()
{
	recherche = new Array() ;
	if(c_adresse.value != '') recherche.push(c_adresse.value) ;
	if(c_cp.value      != '') recherche.push(c_cp.value     ) ;
	if(c_ville.value   != '') recherche.push(c_ville.value  ) ;
	if(c_pays.value    != '') recherche.push(c_pays.value   ) ;
	if(recherche.length > 0) carte_chercher_do(recherche) ;
}

function carte_chercher_do(recherche)
{
	geocoder.getLatLng(recherche.join(', '), function(point)
		{
			if(!point)
			{
				if(recherche.length > 1)
				{
					recherche.unshift() ;
					carte_chercher_do(recherche) ;
				}
				else
				{
					alert('Impossible de trouver la localisation') ;
				}
			}
			else
			{
				map.setCenter(point, zooms[recherche.length-1]) ;
			}
		}
	) ;
}

function carte_init()
{
	if(!GBrowserIsCompatible())
		return ;
	map = new GMap2(document.getElementById('map')) ;
	geocoder = new GClientGeocoder();
	carte_centrer() ;
	map.addControl(new GSmallMapControl()) ;
	GEvent.addListener(map, "moveend", carte_enregistrer) ;
	map.enableDoubleClickZoom() ;
	map.enableContinuousZoom() ;
}

window.onunload = function()
	{
		GUnload() ;
	}


