var isIE = (navigator.appName == 'Microsoft Internet Explorer');
var CarteEnCours = "MaJ";
var carteOpacite = 100;
var xoffset = 0;
var yoffset = 0;
var t;
var jl_chenille = 0;
var jl_chenille_type = 0;
var jl_chenille_3 = 0;
var jl_chemins1 = "95,78,91,77,2,59,62,80,76,14,50,35,22,29,56,44,85,17,33,40,64,65,9,66,11,34,30,84,13,83,6,4,5,73,74,1,39,25,90,68,67,57,54,55,8,2,60,27,61,53,49,79,16,24,47,32,31,82,81,12,48,7,26,38,69,71,21,70,88,52,51,60,95,78,28,72,37,86,87,24,46,15,63,42,71,21,89,45,41,36,23,63,3,58,18,36,87,19,63,3,18,36,23,3,0";
var jl_chemins2 = "3,23,36,18,3,63,19,87,36,18,58,3,63,23,36,41,45,89,21,71,42,63,15,46,24,87,86,37,72,28,78,95,60,51,52,88,70,21,71,69,38,26,7,48,12,81,82,31,32,47,24,16,79,49,53,61,27,60,2,8,55,54,57,67,68,90,25,39,1,74,73,5,4,6,83,13,84,30,34,11,66,9,65,64,40,33,17,85,44,56,29,22,35,50,14,76,80,62,59,2,77,91,78,95,0";
var jl_chenille_dept1 = jl_chemins1.split(",");
var jl_chenille_dept2 = jl_chemins2.split(",");
var toucheAdmin = "";
//
function jlcgw_ini_aire(a){
 if(a == 1){
  clearTimeout(t);
  document.getElementById('aire').style.display='none'; 
 };
 if(window.InnerWidth){
  var leftOffset = parseInt((window.innerWidth - 582) / 2);
  xoffset = leftOffset + parseInt(document.getElementById('ImgMap').offsetLeft);
  yoffset = parseInt(document.getElementById('ImgMap').offsetTop);
 } else if(document.body) {
   if(isIE) {
    var leftOffset = parseInt((document.body.clientWidth - 582) / 2);
    xoffset = leftOffset + parseInt(document.getElementById('ImgMap').offsetLeft)-130;
    yoffset = parseInt(document.getElementById('ImgMap').offsetTop)+150;
   } else {
    //var leftOffset = parseInt((document.body.clientWidth-582) / 2);
    var leftOffset = 5;
    xoffset = leftOffset + parseInt(document.getElementById('ImgMap').offsetLeft);//-176;
    yoffset = parseInt(document.getElementById('ImgMap').offsetTop)+10;
    if(navigator.userAgent.indexOf('Firefox/') >0){
      if(navigator.userAgent.substr(navigator.userAgent.indexOf('Firefox/')+8,3) < 3.5){
        xoffset -= 0;
      };
    };
   };
 } else if(document.documentElement) {
  var leftOffset = parseInt((document.documentElement.clientWidth - 582) / 2);
  xoffset = leftOffset + parseInt(document.getElementById('ImgMap').offsetLeft)-130;
  yoffset = parseInt(document.getElementById('ImgMap').offsetTop)+195;
 };
 jlcgw_chge_aire();
 document.getElementById('aire').style.display='inline';
}
//
function jlcgw_setOpacite(testObj,value) {
	// value de 0 à 100
	testObj.style.opacity = value/100;
	testObj.style.filter = 'alpha(opacity='+value+')';
}
//
function jlcgw_fadeOut(testObj,jl_delay){
	// delay en ms
	if(typeof jlcgw_fadeOut.opacite == 'undefined'){
		jlcgw_fadeOut.opacite = -1;
	};
	// opacite <0 uniquement si set avant appel = donc début
	if(jlcgw_fadeOut.opacite < 0){
		jlcgw_fadeOut.opacite = 100;
		jlcgw_fadeOut.delai = jl_delay;
		jlcgw_fadeOut.testObj = testObj;
	};
	jlcgw_fadeOut.opacite -= 1;
	if(jlcgw_fadeOut.opacite >= 20) {
		jlcgw_setOpacite(jlcgw_fadeOut.testObj,jlcgw_fadeOut.opacite);
		ft=setTimeout("jlcgw_fadeOut()",jlcgw_fadeOut.delai);
	} else {
		jlcgw_fadeOut.opacite = 20;
		jlcgw_fadeOut.testObj.src = "mapcgwd.php?t="+jlcgw_fadeOut.carte;
		jlcgw_fadeIn.opacite = 101;
		jlcgw_fadeIn.carte = jlcgw_fadeOut.carte;
		jlcgw_fadeIn(jlcgw_fadeOut.testObj,jlcgw_fadeOut.delai);
	};
}
//
function jlcgw_fadeIn(testObj,jl_delay){
	// delay en ms
	if(typeof jlcgw_fadeIn.opacite == 'undefined'){
		jlcgw_fadeIn.opacite = 101;
	};
	// opacite >100 uniquement si set avant appel = donc début
	if(jlcgw_fadeIn.opacite > 100){
		jlcgw_fadeIn.opacite = 20;
		jlcgw_fadeIn.delai = jl_delay;
		jlcgw_fadeIn.testObj = testObj;
	};
	jlcgw_fadeIn.opacite += 1;
	if(jlcgw_fadeIn.opacite <= 100) {
		jlcgw_setOpacite(jlcgw_fadeIn.testObj,jlcgw_fadeIn.opacite);
		ft=setTimeout("jlcgw_fadeIn()",jlcgw_fadeIn.delai);
	} else {
		jlcgw_fadeIn.opacite = 100;
		switch(jlcgw_fadeIn.carte){
		case 'Listes':
			var title = 'des généalogistes.';
			var annonce = '<b>Cette carte vous indique le nombre de généalogistes par département. En cliquant sur un département, vous ouvrez sa page des généalogistes.</b>';
			break;
		case 'Lignes':
			var title = 'formulaire d\'envoi de données.';
			var annonce = '<b>Cette carte vous indique le nombre de données dans chaque département. En cliquant sur un département, vous ouvrez le formulaire à partir du quel vous pouvez envoyer vos données.</b>';
			break;
		case 'NbPc':
			var title = 'des cousinages présumés.';
			var annonce = '<b>Cette carte vous indique le nombre de cousinages présumés par département. En cliquant sur un département, vous ouvrez sa page des cousinages présumés.</b>';
			break;
		default:
			var title = 'd\'accueil.';
			var annonce = '<b>Cette carte vous indique l\'état des mises à jour de chaque département. En cliquant sur un département, vous ouvrez sa page d\'accueil.</b>';
			break;
		};
		document.getElementById('ImgMap').title = 'Cliquer sur un numéro de département pour ouvrir sa page ' + title;
		document.getElementById('fencont').innerHTML = annonce;
		document.getElementById('fensurg').style.display = 'block';
	};
}
//
function sleep(millis) {
 var date = new Date();
 var curDate = null;
 do { curDate = new Date(); } 
 while(curDate-date < millis);
}
//
function jlcgw_chge_aire(){
 switch(jl_chenille_type) {
  case 0:
   var numAire = Math.floor(Math.random()*96) + 1;
   break;
  case 1:
   var numAire = jl_chenille_dept1[jl_chenille];
   break;
  case 2:
   var numAire = jl_chenille_dept2[jl_chenille];
   break;
  default:
   break;
 };
 if(numAire<10){
  AireEnCours = 'a0'+numAire;
 } else {
  if(numAire == 20){numAire = '2A';};
  if(numAire == 96){numAire = '2B';};
  AireEnCours = 'a'+numAire;
 };
 if(jl_chenille_type < 3) {
  var tcoords = document.getElementById(AireEnCours).coords.split(',');
  document.getElementById('aire').style.left = (xoffset + parseInt(tcoords[0]) - 20)+'px';
  document.getElementById('aire').style.top = (yoffset + parseInt(tcoords[1]) - 30)+'px';
 } else {
  if(jl_chenille_type == 3) {
   document.getElementById('aire').style.left = (parseInt(document.getElementById('aire').style.left) - (jl_chenille%2))+'px';
   document.getElementById('aire').style.top = (parseInt(document.getElementById('aire').style.top) - (jl_chenille%2))+'px';
  } else {
   document.getElementById('aire').style.left = (parseInt(document.getElementById('aire').style.left) + (jl_chenille%2))+'px';
   document.getElementById('aire').style.top = (parseInt(document.getElementById('aire').style.top) + (jl_chenille%2))+'px';
  };
 };
 if(jl_chenille_type == 4) {
  jl_chenille -= 1;
 } else {
  jl_chenille += 1;
 };
 switch(jl_chenille_type) {
  case 0:
   if(jl_chenille < 15) {
    var jl_delai = 500;
   };
   if(jl_chenille >= 15){
    var jl_delai = 200;
   };
   if(jl_chenille >= 50){
    if(jl_chenille>=100){
     jl_chenille_type = 3;
     jl_chenille_3 += 1;
    } else {
     jl_chenille_type = Math.floor(Math.random()*3)+1;
    };
    jl_chenille = 0;
    if(jl_chenille_type == 3){
     var test_couleur = Math.floor(Math.random()*3)+1;
     if(test_couleur==2){
      document.getElementById('aire').style.backgroundColor='green';
     };
     if(test_couleur==3){
      document.getElementById('aire').style.backgroundColor='blue';
     };
    };
   };
   break;
  case 1:
   var jl_delai = 30;
   if(jl_chenille_dept1[jl_chenille] == 0){
    jl_chenille = 0;
    jl_chenille_type = 0;
   };
   break;
  case 2:
   var jl_delai = 30;
   if(jl_chenille_dept2[jl_chenille] == 0){
    jl_chenille = 0;
    jl_chenille_type = 0;
   };
   break;
  case 3:
   var jl_delai = 10;
   var lh = 40 + jl_chenille;
   document.getElementById('aire').style.width = lh+'px';
   document.getElementById('aire').style.height = lh+'px';
   if(jl_chenille >= 80){
    jl_chenille_type = 4;
   };
   break;
  case 4:
   var jl_delai = 10;
   var lh = 40 + jl_chenille;
   document.getElementById('aire').style.width = lh+'px';
   document.getElementById('aire').style.height = lh+'px';
   if(jl_chenille <= 0){
    if(jl_chenille_3 >= 8){
     // après 8 itérations on repasse en mode 1
     jl_chenille_3 = 0;
     jl_chenille = 0;
    } else {
     // on donne une valeur qui assure qu'on repassera en mode 3
     jl_chenille = 100;
    };
    jl_chenille_type = 0;
    document.getElementById('aire').style.width = '40px';
    document.getElementById('aire').style.height = '40px';
    document.getElementById('aire').style.backgroundColor='red';
   };
   break;
  default:
   break;
 };
 t=setTimeout("jlcgw_chge_aire(0)",jl_delai);
}
//
function jlcgw_chge_carte(carte){
  if(carte != CarteEnCours){
   var laCarte = document.getElementById("ImgMap");
   jlcgw_fadeOut.carte = carte;
   jlcgw_fadeOut.opacite = -1;
   jlcgw_fadeOut(laCarte,1);
   document.getElementById('mMaJ').style.color = 'black';
   document.getElementById('mListes').style.color = 'black';
   document.getElementById('mLignes').style.color = 'black';
   document.getElementById('mNbPc').style.color = 'black';
   document.getElementById('m'+carte).style.color = 'red';
  };
  CarteEnCours = carte;
  return false;
}
//
function jlcgw_lien(oussa){
  var jlcgw_lelien = "";
  switch(oussa){
    case 'Admin':
        if(toucheAdmin == "admin"){
          jlcgw_lelien = "00/cgwadmin.php";
        };
      break;
    case 'Recherche':
      jlcgw_lelien = "c0/recherche.php?dept=00";
      break;
    default:
      jlcgw_lelien = "";
      break;
  };
  if(jlcgw_lelien != ""){
    document.location.href = jlcgw_lelien;
  };
  return false;
}
//
function r(aire){
var page = "";
switch(CarteEnCours){
 case "Listes":
  page = "?page=genealogistes";
  break;
 case "Lignes":
  page = "?page=envoi";
  break;
 case "NbPc":
  page = "?page=presomptions";
  break;
 default:
  page = "";
  break;
};
aire.href=aire.href+page;
return true;
}
//
function jlcgw_touche(e){
  var latouche = 0;
  if(isIE){
    latouche = e.keyCode;
  } else {
    latouche = e.which;
  };
  if(latouche < 32){
    clearTimeout(t);
    document.getElementById('aire').style.display='none'; 
    toucheAdmin = "";
    snowStorm.stop();
  } else {
    toucheAdmin += String.fromCharCode(latouche);
  };
}
function jlcgw_iniTimeout (){
  t=setTimeout('jlcgw_ini_aire(0)',3000);
}
if(jlcgw_anim){
 window.onload = jlcgw_iniTimeout;
};
