// Create a base icon for all of our markers that specifies the
// shadow, icon dimensions, etc.
var baseIcon = new GIcon();
baseIcon.shadow = "http://www.igeomatic.com/commun/software/googleEarth/icons/mm_20_shadow.png";
baseIcon.iconSize = new GSize(12, 20);
baseIcon.shadowSize = new GSize(22, 20);
baseIcon.iconAnchor = new GPoint(6, 20);
baseIcon.infoWindowAnchor = new GPoint(5, 1);
//baseIcon.infoShadowAnchor = new GPoint(5, 1);

//InfoWindowOptionsvar
var options = { maxWidth : 200, 
			selectedTab : 0,
			onOpenFn : tracerEvenementOnOpenFn,
			onCloseFn : tracerEvenementOnCloseFn};
			
function tracerEvenementOnOpenFn() {
	//alert("onOpenFn");
}

function tracerEvenementOnCloseFn() {
	//alert("onCloseFn");
}


function createMarker(point,town,country,attrib) {
	var myIcon = new GIcon(baseIcon);
	switch (attrib) {
		case 'pbe':
			myIcon.image = "http://www.igeomatic.com/commun/software/googleEarth/icons/mm_20_yellow.png";
    		// Set up our GMarkerOptions object
    		markerOptions = { icon:myIcon };		
			var marker = new GMarker(point, markerOptions);
   			break;
  		case 'jpg':
			myIcon.image = "http://www.igeomatic.com/commun/software/googleEarth/icons/mm_20_red.png";
    		markerOptions = { icon:myIcon };		
			var marker = new GMarker(point, markerOptions);
   			break;
  		case 'maz':
			myIcon.image = "http://www.igeomatic.com/commun/software/googleEarth/icons/mm_20_blue.png";
    		markerOptions = { icon:myIcon };		
			var marker = new GMarker(point, markerOptions);
   			break;			
		case 'all':
			myIcon.image = "http://www.igeomatic.com/commun/software/googleEarth/icons/mm_20_green.png";
    		markerOptions = { icon:myIcon };
			var marker = new GMarker(point, markerOptions);
			break;
  		default:
			myIcon.image = "http://www.igeomatic.com/commun/software/googleEarth/icons/mm_20_white.png";
			markerOptions = { icon:myIcon };
			var marker = new GMarker(point, markerOptions);
			break;
 	}
	//var html = 	"<b>" + town + "</b> <br/>" + country + "<br/>lon=" + point.x + "<br/>lat=" + point.y;
	//var html = '<div style="width: 200px;">' + '<table width="100%" border="1" align="left"><tr><td><strong>' + town +'</strong></td><td><strong>' + country + '</strong></td></tr><tr><td>lon: ' + point.x + '</td><td>lat: ' + point.y + '</td></tr></table></div>';
	GEvent.addListener(marker, "click", function() {
		//InfoWindowTabsvar
		var html1 = 	"<b>" + town + "</b><br/>" + country;
		var html2 = 	"<b>lon=" + point.x + "</b><br/><b>lat=" + point.y + "</b>";
		onglets = new Array();
		var onglet1 = new GInfoWindowTab ("site", html1);
		var onglet2 = new GInfoWindowTab ("coordonnees", html2);
		onglets[0] = onglet1;
		onglets[1] = onglet2; 
		//marker.openInfoWindowHtml(html);
		marker.openInfoWindowTabsHtml(onglets, options);

	});
	return marker;
}

function getMarks(url) { /* pass url during the call. */
	map.closeInfoWindow(); /* close any InfoWindows that happen to be open  */
	map.clearOverlays();
	GDownloadUrl(url, function(data) {
  		var xml = GXml.parse(data);
  		var markers = xml.documentElement.getElementsByTagName("marker");
  		for (var i = 0; i < markers.length; i++) {
			var attrib = markers[i].getAttribute("visite");  // data is string
			var town = markers[i].getAttribute("town");  // data is string
			var country = markers[i].getAttribute("country");  // data is string
			var lat = parseFloat(markers[i].getAttribute("lat"));  // data is string, we must convert it to float
			var lon = parseFloat(markers[i].getAttribute("lon"));   // data is string, we must convert it to float
			var point = new GLatLng(lat,lon);
			if (attrib != 'none') {
				var marker = createMarker(point,town,country,attrib);
				map.addOverlay(marker);
			}
		}
	});
}
