var map = null;
var centreurl = null; 
 
function aproximite (obj, query)
{	

/*	if (document.getElementById("chargementEnCours") != null)
           document.getElementById("chargementEnCours").style.display = "block";	
*/
	map.clearOverlays();

	//on prend toutes les cat selectionne
	var Scategories = "";
	var ActiverProx = false
	var Tcategories  = document.getElementsByName("cat");
	for (var i=0;i<Tcategories.length;i++)
	{
		if (Tcategories[i].checked == true)
		{
			ActiverProx = true;
			if (Scategories!="")
				Scategories = Scategories + ",";
				
			Scategories = Scategories + Tcategories[i].value;
		}
	}

	if (ActiverProx) 
		var param = "mode2=proxi&coord=" + centreurl + "&cat=" + Scategories + "&aprox=" + ActiverProx + "&" + query;
	else
	{
		if (Scategories == "")
			var param = "";
		else
			var param = query;
	}

	//document.write (param);
	
	//document.getElementById("requete").innerHTML = "http://crtpaca/fr//GetXMLGoogleMapV2.asp?" + param;	
	PositionnePoints (param, 2);
	
	//positonnement du point courant
    //map.addOverlay(createMarker(point, texte, picto));	
	

	
	
}
//function loadcarto(param, modecarto,DescriptifFlux,Photo1Flux) 
function loadcarto(param, modecarto) 
{
	if (GBrowserIsCompatible()) { 
	
		//document.getElementById("requete").innerHTML = "http://crtpaca/fr//GetXMLGoogleMapV2.asp?" + param;	
	
		if (document.getElementById("chargementEnCours") != null)
            document.getElementById("chargementEnCours").style.display = "block";	
							
		map = new GMap2(document.getElementById("map")); 		
		//map.addControl(new GScaleControl());	
	    map.enableDoubleClickZoom();
		map.enableContinuousZoom(); 			
		map.enableScrollWheelZoom();			
		//chargeMap = GEvent.addListener(map, "load", document.getElementById("chargementEnCours").style.display = "none");
		map.addMapType(G_PHYSICAL_MAP);
		
		PositionnePoints (param, 1, modecarto);
	}
}


function loadcartoPE (kml, centre, typec, nav, zoom)
{
	if (GBrowserIsCompatible()) { 
		map = new GMap2(document.getElementById("map")); 
		map.addControl(new GScaleControl());	

		if (nav=="1")
		{
		    map.enableDoubleClickZoom();
			map.enableContinuousZoom(); 	
			map.addControl(new GLargeMapControl());			
		}
		else
		{
			map.disableDoubleClickZoom();
			map.disableContinuousZoom();
			map.disableScrollWheelZoom();			
			map.disableDragging();						
		}
		
		//map.addControl(new GOverviewMapControl());		
		//map.addControl(new GMapTypeControl());
		
		var geoXml = new GGeoXml(kml);
		map.addOverlay(geoXml);  
		
		if (zoom=="") zoom = 11;
		//if (typec=="") typec = "G_NORMAL_MAP";
		typec = "G_PHYSICAL_MAP";

		var tp = centre.split(",")
		
		var pt = new GLatLng(parseFloat(tp[0]),parseFloat(tp[1]))

		map.setCenter(pt, eval(zoom), eval(typec)); 	
	}
}


//Recuperation des coordonnees et des infos
function PositionnePoints (param, setcenter, modecarto)
{	
	var urlxml = "GetXMLGoogleMapV2.asp?" + param; 
	
	
	
	GDownloadUrl(urlxml, function(data, responseCode) 
	{		
		var xml = GXml.parse(data); 
		if (setcenter==1)
		{
			var infos = xml.documentElement.getElementsByTagName("markers"); 
			var val_maptype = eval(xml.documentElement.getAttribute("maptype"));
			var val_GLargeMapControl = xml.documentElement.getAttribute("GLargeMapControl");
			var val_GMapTypeControl = xml.documentElement.getAttribute("GMapTypeControl");
			var val_GOverviewMapControl = xml.documentElement.getAttribute("GOverviewMapControl");
			var zoom = xml.documentElement.getAttribute("zoom");		
			if (val_GLargeMapControl=="1")
				map.addControl(new GLargeMapControl());		
			if (val_GMapTypeControl=="1")
				map.addControl(new GMapTypeControl());
			//if (val_GOverviewMapControl=="1")
			//    map.addControl(new GOverviewMapControl());	   						
		}	
		var bounds = new GLatLngBounds;
		var markers = xml.documentElement.getElementsByTagName("marker"); 

	//alert (markers.length)
		var mespoints = new Array(markers.length);			
		//if (markers.length==0 && modecarto != "approx")
			//$("map").hide();
		for (var i = 0; i < markers.length; i++) 
		  {			  	 		  	  
 			  picto = markers[i].getAttribute("picto");	 
			  texte = markers[i].textContent;	  			  
			  //Bug IE - il ne connait pas textContent
			  if (!texte)
			  {			  
				  texte = markers[i].xml;
				  texte = texte.replace("]]>", "");				
			  }
			  texte = "<div class=infosPoints>" + texte + "<br/></div>"
	  		  var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),  parseFloat(markers[i].getAttribute("lng")));
			  bounds.extend(point);		  
			  mespoints[i] = point;
			  if (i==0)
			  {
			  	 var pointcentre = point;
				 centreurl = point.toUrlValue();
			  }
			  //on charge la carte et centre si necessaire sur le premier point
			  if (i==0 && setcenter==1)
			  {
				  map.setCenter(point, parseInt(zoom), val_maptype);				  
			  }
			  //positonnement du point courant
			  map.addOverlay(createMarker(point, texte, picto));
		  }		 
		  //si plusieurs points - zoom auto et recentrage (que en mode liste ?)
		  if (markers.length>1 && setcenter!=2)
		  {			   		  
			  //on determine le zoom en fonction des points a afficher
			  var newzoom = map.getBoundsZoomLevel(bounds);		  
		  	  map.setZoom(newzoom); 
			  //on recentre par rapport a ces points que en mode liste !
			  var centre = bounds.getCenter();
			  map.setCenter(centre);
			  map.panTo(centre);
			  map.setMapType(G_PHYSICAL_MAP);
		  }  		 
		  
		// if (document.getElementById("chargementEnCours") != null)   document.getElementById("chargementEnCours").style.display = "none";			  
	}); 
}


// placement un point sur la carto + layer sur mouseover
function createMarker(point, texte, picto) 
{        
    // Create our "tiny" marker icon
    var icon = new GIcon();
	if (picto=="") 
	    icon.image = "/upload/pictos/3.gif";
	else
	    icon.image = "/upload/pictos/" + picto;	
	icon.iconSize = new GSize(26, 26);
	icon.shadowSize = new GSize(22, 20);
	icon.iconAnchor = new GPoint(6, 20);
	icon.infoWindowAnchor = new GPoint(5, 1);
    //icon.shadow = "/design/mm_20_shadow.png";
    var marker = new GMarker(point, icon);
    GEvent.addListener(marker, "mouseover", function() {marker.openInfoWindowHtml(texte); });  
    return marker;
}  





