// créer un marker
function create_marker(map, marker, html)
{
	GEvent.addListener(marker, 'click', function()
	{
		if(map.getInfoWindow().isHidden())
			marker.openInfoWindowHtml(html);
		else
			marker.closeInfoWindow();
	});
	return marker;
}

// charger le polygone à déployer sur la map
function load_poly(map, dept, zoom)
{
	var file = "../fichiers/gmp/"+dept+".gmp";
	GDownloadUrl(file, function(data, responseCode)
	{
		var logDiv = document.getElementById('logDiv');
		if((200==responseCode)&&(0!=data.length))
		{
			try
			{
				var iStart = 0;
				var arePoints = false;
				var polylineLevels = "";
				//File structure is [encoded Levels<br>encoded Polylines<br>...]
				do
				{
					var iEnd = data.indexOf("<br>",iStart);
					if( false == arePoints)
					{
						//Levels
						polylineLevels = data.substring(iStart,iEnd);
						arePoints = true;
					}
					else
					{
						//Points
						var polygon = new GPolygon.fromEncoded({
							polylines: [{color: "#CC0000", weight: 2, opacity:1.0,
							points: data.substring(iStart,iEnd),
							levels: polylineLevels,
							zoomFactor: 2, numLevels: 18}],
							fill: true, color:" #CC0000", opacity: 0.3, outline: true});
						map.addOverlay(polygon);
						arePoints = false;
					}
					newCenterPoint = polygon;
					iStart = iEnd + 4;//jump above '<br>' to the next polylines
				}while( data.length > iStart)
				map.setCenter(newCenterPoint.getBounds().getCenter(), zoom);
			}catch(e){
				logDiv.innerHTML = "Un problème pendant le chargement du fichier : " + file;
			}
		}else{
			logDiv.innerHTML = "Un problème pendant le chargement du fichier : " + file;
		}
	});
}
