// Les icones custom
var mapsIconPack = [];

imgExt = "png";
if (Ext.isIE6)
{
	imgExt = "gif";
}

// Maison - OK
mapsIconPack["M"] = [];
mapsIconPack["M"]["off"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/maison."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombremaison."+imgExt, iconAnchor: [15, 15], iconSize: [30, 30], shadowSize: [30, 30]});
mapsIconPack["M"]["on"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/maisoncercle."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombremaisoncercle."+imgExt, iconAnchor: [22, 22], iconSize: [44, 44], shadowSize: [44, 44]});

// Appartement - OK
mapsIconPack["A"] = [];
mapsIconPack["A"]["off"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/immeuble."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombreimmeuble."+imgExt, iconAnchor: [15, 15], iconSize: [30, 30], shadowSize: [30, 30]});
mapsIconPack["A"]["on"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/immeublecercle."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombreimmeublecercle."+imgExt, iconAnchor: [22, 22], iconSize: [44, 44], shadowSize: [44, 44]});

// Terrain - OK
mapsIconPack["T"] = [];
mapsIconPack["T"]["off"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/arbre."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombrearbre."+imgExt, iconAnchor: [20, 20], iconSize: [40, 40], shadowSize: [40, 40]});
mapsIconPack["T"]["on"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/arbrecercle."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombrearbrecercle."+imgExt, iconAnchor: [22, 22], iconSize: [44, 44], shadowSize: [44, 44]});

// Maison & Appartement - OK
mapsIconPack["MA"] = [];
mapsIconPack["MA"]["off"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/maisonimmeuble."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombremaisonimmeuble."+imgExt, iconAnchor: [20, 20], iconSize: [40, 40], shadowSize: [40, 40]});
mapsIconPack["MA"]["on"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/maisonimmeublecercle."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombremaisonimmeublecercle."+imgExt, iconAnchor: [22, 22], iconSize: [44, 44], shadowSize: [44, 44]});

// Maison &  Terrain - OK
mapsIconPack["MT"] = [];
mapsIconPack["MT"]["off"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/maisonterrain."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombremaisonterrain."+imgExt, iconAnchor: [20, 20], iconSize: [40, 40], shadowSize: [40, 40]});
mapsIconPack["MT"]["on"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/maisonterraincercle."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombremaisonterraincercle."+imgExt, iconAnchor: [22, 22], iconSize: [44, 44], shadowSize: [44, 44]});

// Terrain & Appartement - OK
mapsIconPack["TA"] = [];
mapsIconPack["TA"]["off"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/immeubleterrain."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombremaisonterrain."+imgExt, iconAnchor: [20, 20], iconSize: [40, 40], shadowSize: [40, 40]});
mapsIconPack["TA"]["on"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/immeubleterraincercle."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombremaisonterrain."+imgExt, iconAnchor: [22, 22], iconSize: [44, 44], shadowSize: [44, 44]});

// Maison & Appartement & Terrain - OK
mapsIconPack["MAT"] = [];
mapsIconPack["MAT"]["off"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/maisonimmeubleterrain."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombremaisonimmeubleterrain."+imgExt, iconAnchor: [20, 20], iconSize: [40, 40], shadowSize: [40, 40]});
mapsIconPack["MAT"]["on"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/maisonimmeubleterraincercle."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombremaisonimmeubleterraincercle."+imgExt, iconAnchor: [22, 22], iconSize: [44, 44], shadowSize: [44, 44]});

// Garage / Parking - OK
mapsIconPack["GP"] = [];
mapsIconPack["GP"]["off"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/garageparking."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombregarageparking."+imgExt, iconAnchor: [30, 30], iconSize: [30, 30], shadowSize: [30, 30]});
mapsIconPack["GP"]["on"] = createCustomIcon({image: c_chemin_img+"maps/"+imgExt+"/garageparkingcercle."+imgExt, shadow: c_chemin_img+"maps/"+imgExt+"/ombregarageparkingcercle."+imgExt, iconAnchor: [44, 44], iconSize: [44, 44], shadowSize: [44, 44]});

// Les markers
var markers = []; //  Index : Id prog

function createCustomIcon(oParam)
{
	var mapsIconPack = [];
	mapsIconPack = new GIcon(G_DEFAULT_ICON);
	mapsIconPack.image = oParam.image;
	mapsIconPack.printImage = oParam.image;
	//mapsIconPack.mozPrintImage = oParam.image;
	mapsIconPack.shadow = oParam.shadow;
	mapsIconPack.iconAnchor = new GPoint(oParam.iconAnchor[0], oParam.iconAnchor[1]);
	mapsIconPack.iconSize = new GSize(oParam.iconSize[0], oParam.iconSize[1]);
	mapsIconPack.shadowSize = new GSize(oParam.shadowSize[0], oParam.shadowSize[1]);
	
	return mapsIconPack;
}

function createMarker(point, icon, html, link, fctMouseOver, fctMouseOut, htmlOption) 
{
	isClicable = false;
	if(html || fctMouseOver || fctMouseOut || link)
	{
		isClicable = true;
	}
	
	// === create a marker with the requested icon ===
	var marker = new GMarker(point, {icon: icon, clickable: isClicable});
	
	// Listner pour le changement d'icon
	if (fctMouseOver)
	{
		GEvent.addListener(marker, "mouseover", function() 
		{
			eval(fctMouseOver);
		});
	}
	
	if(fctMouseOut)
	{
		GEvent.addListener(marker, "mouseout", function() 
		{
			eval(fctMouseOut);
		});
	}
	
	if (link)
	{
		GEvent.addListener(marker, "click", function() 
		{
			location.href = link;
		});
	}
	
	if (html)
	{
		marker.bindInfoWindowHtml(html, htmlOption); // identique a addListener "click" qui ouvre une fenetre
	}
	
	return marker;
}
