// Chargement de l'API Google Map
google.load("maps", "2");
google.load("search", "1");


function showAddress(map, geocoder, address, nom, info) {
  geocoder.getLatLng(
    address,
    function(point)
    {
      if (!point) {alert(address + " not found");}
		  else
		  {
				var marker = new GMarker(point , {draggable : false, title : nom});
				map.addOverlay(marker);
				GEvent.addListener(
					marker, "click", 
					function() {
						marker.openInfoWindowHtml(info);
		      }
		    );
      }
   }
  );
}


function initialize(){
	var map = new google.maps.Map2(document.getElementById("map"));
	map.addControl(new GSmallMapControl()); // Contrôle de zoom
	map.addControl( new GMenuMapTypeControl()); // On ajoute un menu déroulant pour permettre à l'utilisateur de choisir le type de vue
	map.addControl(new GOverviewMapControl());
	geocoder = new GClientGeocoder();//création de l'objet geocoder (nécessaire pour la localisation des adresse)

	GDownloadUrl(
		"Controleur/js/donnees.xml",
		function(data)
		{
			var xml = GXml.parse(data);
			var markers = xml.documentElement.getElementsByTagName("marker");
			for (var i = 0; i < markers.length; i++) {
				var adresse = markers[i].getAttribute("adresse");
	      var nom = markers[i].getAttribute("nom");
	      var site = markers[i].getAttribute("site");
	      var contact = markers[i].getAttribute("contact");
	      var tel = markers[i].getAttribute("tel");
	      var info = "<h3>" + nom + "</h3>";
	      info += "<h5>" + adresse + "</h5>";
	       if(site != ""){
		      info += "Site : <a href='http://" + site + "'>" + site + "</a><br/>";
		    }
	      if(contact != ""){
		      info += "Mail : <a href='mailto:" + contact + "'>" + contact + "</a><br/>";
	      }
	      info += "Tel : " + tel;
				showAddress(map, geocoder, adresse, nom, info);
				//var point = new GPoint(lat,lng);
				/*var point = new GLatLng(lat,lng);
				var marker = new GMarker(point);
				var html = "<h3>" + nom + "</h3>" + "<h5>" + adresse + "</h5>Tel : " + tel;
				
	      //marker = creerMarker(lng,lat,info,details,img);
				map.addOverlay(marker);
				GEvent.addListener(marker, "click", function() {
					marker.openInfoWindowHtml(html); });
				delete marker;*/
			}
		}
	);
	
	map.setCenter(new GLatLng(47.4419, 2.1419), 5);//positionnement initial de la map (ici la france)
}

google.setOnLoadCallback(initialize);

