var map;
var Gicone=[];
var gmarkers = [];
var Gvisible = [];
var tour_en_cours=false;
var categ_tour;
var point_tour=0;
var timer;
var debut_tour;


var baseIcon_g = new GIcon();
	baseIcon_g.iconSize = new GSize(27, 27);
	baseIcon_g.iconAnchor = new GPoint(0, 0);
	baseIcon_g.infoWindowAnchor = new GPoint(12, 12);
var baseIcon_m = new GIcon();
	baseIcon_m.iconSize = new GSize(20, 20);
	baseIcon_m.iconAnchor = new GPoint(0, 0);
	baseIcon_m.infoWindowAnchor = new GPoint(0, 0);
var baseIcon_p = new GIcon();
	baseIcon_p.iconSize = new GSize(16, 16);
	baseIcon_p.iconAnchor = new GPoint(0, 0);
	baseIcon_p.infoWindowAnchor = new GPoint(0, 0);


Gicone["346_g"] = new GIcon(baseIcon_g, "http://www.landes-tourisme.info/interfacejmi/1_loisirs.png");
Gicone["346_m"] = new GIcon(baseIcon_m, "http://www.landes-tourisme.info/interfacejmi/1_loisirs.png");
Gicone["346_p"] = new GIcon(baseIcon_p, "http://www.landes-tourisme.info/interfacejmi/1_loisirs.png");
Gicone["401_g"] = new GIcon(baseIcon_g, "http://www.landes-tourisme.info/interfacejmi/1_commerce.png");
Gicone["401_m"] = new GIcon(baseIcon_m, "http://www.landes-tourisme.info/interfacejmi/1_commerce.png");
Gicone["401_p"] = new GIcon(baseIcon_p, "http://www.landes-tourisme.info/interfacejmi/1_commerce.png");
Gicone["547_g"] = new GIcon(baseIcon_g, "http://www.landes-tourisme.info/interfacejmi/1_heberge.png");
Gicone["547_m"] = new GIcon(baseIcon_m, "http://www.landes-tourisme.info/interfacejmi/1_heberge.png");
Gicone["547_p"] = new GIcon(baseIcon_p, "http://www.landes-tourisme.info/interfacejmi/1_heberge.png");
Gicone["mairie_g"] = new GIcon(baseIcon_g, "http://www.landes-tourisme.info/interfacejmi/1_mairie.png");
Gicone["mairie_m"] = new GIcon(baseIcon_m, "http://www.landes-tourisme.info/interfacejmi/1_mairie.png");
Gicone["mairie_p"] = new GIcon(baseIcon_p, "http://www.landes-tourisme.info/interfacejmi/1_mairie.png");


function init() {
  if (GBrowserIsCompatible()) {
    map = new GMap2(document.getElementById("map"));
    map.addControl(new GSmallMapControl());
	  map.addControl(new GMapTypeControl());
	  map.enableDoubleClickZoom();
  }
}

function createMarker(point, texte, icone) {
	 var marker = new GMarker(point,Gicone[icone]);
	 map.addOverlay(marker);
	 GEvent.addListener(marker, "mouseover", function() {
	   marker.openInfoWindowHtml(texte);
	 });
}

function createMarker2(point,html,icone,name,category,rub) {
  var marker = new GMarker(point,Gicone[icone]);
  marker.icone = Gicone[icone];
  marker.point = point;
  marker.rub = rub;
  marker.mycategory = category;
  marker.id = name;
  marker.html = html;
  GEvent.addListener(marker, "mouseover", function() {
    marker.openInfoWindowHtml(html);
  });
  gmarkers.push(marker);
  Gvisible[category]=true;
	 map.addOverlay(marker);
}

function show(category) {
 map.closeInfoWindow();
	for (var i=0; i<gmarkers.length; i++) {
			if (gmarkers[i].mycategory == category) {
					gmarkers[i].show();
			}
		}
}
function voir(rub) {
 map.closeInfoWindow();
	for (var i=0; i<gmarkers.length; i++) {
			if (gmarkers[i].rub == rub) {
					gmarkers[i].show();
			}
		}
}
function masquer(rub) {
 map.closeInfoWindow();
	for (var i=0; i<gmarkers.length; i++) {
			if (gmarkers[i].rub == rub) {
					gmarkers[i].hide();
			}
		}
}
function aff_rub() {
 var les_check = document.getElementsByName("check");
	for (var i=0; i<les_check.length; i++) {
			if (les_check[i].checked  == true) {
					voir(les_check[i].value);
			} else {
					masquer(les_check[i].value);
   }
		}
}
function check(rub) {
 var les_check = document.getElementsByName("check");
	for (var i=0; i<les_check.length; i++) {
	 if (les_check[i].value==rub) les_check[i].checked = (les_check[i].checked==true) ? false : true;
	}
	aff_rub();
}
function coche(rub,sens) {
 var les_check = document.getElementsByName("check");
	for (var i=0; i<les_check.length; i++) {
	 if (les_check[i].id==rub) les_check[i].checked = sens;
	}
	aff_rub();
}
function localiser(num_point,zoom) {
		for (var i=0; i<gmarkers.length; i++) {
			if (gmarkers[i].id == num_point) {
    if (Gvisible[gmarkers[i].mycategory]==false) aff(gmarkers[i].mycategory);
					gmarkers[i].openInfoWindowHtml(gmarkers[i].html);
					if (zoom) {
       map.setZoom(zoom);
       map.panTo(gmarkers[i].point);
     }
			}
		}
}

function hide(category) {
  map.closeInfoWindow();
  for (var i=0; i<gmarkers.length; i++) {
    if (gmarkers[i].mycategory == category) {
      gmarkers[i].hide();
    }
  }
}
function aff(categ) {
  if (Gvisible[categ]==true) {
    Gvisible[categ]=false;
    hide(categ);
  } else {
    Gvisible[categ]=true;
    show(categ);
  }
}
function tour(categorie,debut) {
 if (tour_en_cours==true) {
    window.clearTimeout(timer);
    tour_en_cours=false;
    categ_tour='';
 } else {
   if (Gvisible[categorie]==false) aff(categorie);
   categ_tour=categorie;
   tour_en_cours=true;
   point_tour=debut;
   debut_tour=debut;
   tourne();
 }
}

function tourne() {
	for (var i=0; i<gmarkers.length; i++) {
    if (gmarkers[i].mycategory == categ_tour) {
     if (gmarkers[i].id==point_tour) {
     map.setCenter(gmarkers[i].point,15);
      gmarkers[i].openInfoWindowHtml(gmarkers[i].html);
      z=i+1;
      if (gmarkers[z]!=undefined) {
        if (gmarkers[z].mycategory == categ_tour) {
         point_tour=point_tour+1;
        } else {
         point_tour=debut_tour;
        }
      } else {
       point_tour=debut_tour;
      }
      break;
     }
    }
	}
timer=window.setTimeout("tourne()",4000);
}
function visibilite_plus(thingId,id)
{
	var targetElement;
	targetElement = document.getElementById(thingId) ;
	if (targetElement.style.display == "none")
		{
			targetElement.style.display = "block" ;
		} else {
			targetElement.style.display = "none" ;
			coche(id,false);
		}
}
