var parametre = "msla";
var prefixe="duacs_global_nrt_msla_merged_h_";
var repImages = "/images/produits/aviso";
var dateBulletinCourant = "";
var bulletinCourant = "";
var selectedZone = "glo";
var profondeur = "0";
var nbJoursPrevi = "0";
var dateCalendar = "";

var FIRST_YEAR = 1992;
var DEBUT_VENTSVAGUES = 20051211;

var nomMois=new Array(12);
if (langue=="fr") {
	nomMois[1]="Janvier";
	nomMois[2]="Février";
	nomMois[3]="Mars";
	nomMois[4]="Avril";
	nomMois[5]="Mai";
	nomMois[6]="Juin";
	nomMois[7]="Juillet";
	nomMois[8]="Août";
	nomMois[9]="Septembre";
	nomMois[10]="Octobre";
	nomMois[11]="Novembre";
	nomMois[12]="Décembre";
}
else {
	nomMois[1]="January";
	nomMois[2]="February";
	nomMois[3]="March";
	nomMois[4]="April";
	nomMois[5]="May";
	nomMois[6]="June";
	nomMois[7]="July";
	nomMois[8]="August";
	nomMois[9]="September";
	nomMois[10]="October";
	nomMois[11]="November";
	nomMois[12]="December";
}

// Ajout d'un groupe dans un select
// ajout_optgroup(id_select_destination, nom_optGroup)
function ajout_optgroup(selectId, optGroupName) {
   objSelect = document.getElementById(selectId);
   optGroup = document.createElement('optgroup');
   nbOptGroup = objSelect.getElementsByTagName("optgroup").length;
   existe = rech_optGroup(selectId, optGroupName);
   if (existe) {
       alert("l'optGroup ''"+ optGroupName +"'' existe déjà !");
   }else{
       optGroup.id = "optGroup_"+ selectId +"_"+ optGroupName;
       optGroup.label = optGroupName;
       objSelect.appendChild(optGroup);
   }
 } 

// Recherche d'un optGroup
// rech_optGroup(id_select, nom_optGroup)
function rech_optGroup(selectId, optGroupName) {
  objSelect = document.getElementById(selectId);
  nbOptGroup = objSelect.getElementsByTagName("optgroup").length;
  var existe = false;
  for (var i = 0; i < nbOptGroup; i++) {  // Test si optGroup existe déjà
     if (objSelect.getElementsByTagName("optGroup")[i].label == optGroupName) {
          existe = true;
      }
  }
  return existe;
}

// Supprime un groupe dans un select
// supp_optgroup(id_select, nom_optGroup)
function supp_optgroup(selectId, optGroupName) {
  existe = rech_optGroup(selectId, optGroupName);
  if (!existe) {
//      alert("l'optGroup ''"+ optGroupName +"'' n'existe pas !");
  }else{
      var otpGroup = document.getElementById("optGroup_"+ selectId +"_"+ optGroupName);
      otpGroup.outerHTML = null;
      otpGroup.label = "";
      otpGroup.id = "";
  }
}
  
// Ajout d'une option dans un select
// ajout_option(libelle_option, value_option, id_select_destination, nom_optGroup)
function ajout_option(libelle, valeur, selectId, optGroupName) {
   var newOption = new Option(libelle,valeur);
   if (optGroupName == "") {
       document.getElementById(selectId).options[document.getElementById(selectId).options.length] = newOption;
    }else{
       var optGroup = document.getElementById("optGroup_"+ selectId +"_"+ optGroupName);
       var Tlibelle = new Array;
       var Tvaleur = new Array;
       var nbOptOrigine;
       // Mis en mémoire des options actuelle
       for (var i = 0; i < optGroup.getElementsByTagName("option").length; i++) {
        Tvaleur[i] = optGroup.getElementsByTagName("option")[i].value;
        Tlibelle[i] = optGroup.getElementsByTagName("option")[i].innerHTML;
        nbOptOrigine = i;
       }
       // Suppression de tout le optGroup
       supp_optgroup(selectId, optGroupName)
       // Création de l'optGroup en fin du select
       ajout_optgroup(selectId, optGroupName)
       // Parcour et ajout des options mémorisées
       for (var i = 0; i < nbOptOrigine+1; i++) {
         memOption = new Option(Tlibelle[i],Tvaleur[i]);
         document.getElementById(selectId).options[document.getElementById(selectId).options.length] = memOption;
       }
       // Ajout de la nouvelle option
       newOption = new Option(libelle,valeur);
       document.getElementById(selectId).options[document.getElementById(selectId).options.length] = newOption;
       newOption.selected = true;
     }
}

function changeListeMoisjours() { 
	var s1=document.choixDate.annees;
	var s2=document.choixDate.moisjours;
	s2.length=0;
	mois="0";
	for ( var n=0; n<listeDates[s1.selectedIndex].length; n++ ) {
		moisjourCourant = listeDates[s1.selectedIndex][n]
		moisCourant = moisjourCourant.substr(0, 2);
		jourCourant = moisjourCourant.substr(2, 2);
		s2.length++;
		if (moisCourant != mois) {
			mois = moisCourant;
			s2.options[s2.length-1].text=nomMois[eval(mois)]; 
			s2.options[s2.length-1].value=moisjourCourant; 
			s2.options[s2.length-1].className="titreSelect"; 
//			ajout_optgroup("moisjours", nomMois[mois])
		}
		else {
//		ajout_option(moisCourant+"-"+jourCourant, moisjourCourant, "moisjours", nomMois[mois]);
			s2.options[s2.length-1].text=moisCourant+"-"+jourCourant;
			s2.options[s2.length-1].className="mj"; 
		}
	} 
}
function changeListeMois() { 
	var s1=document.choixDate.annees;
	var s2=document.choixDate.mois;
	var idxMoisPrecedent = s2.selectedIndex;
	var premierMoisPrecedent = s2.options[0].value;
	s2.length=0;
	mois="0";
	for ( var n=0; n<listeDates[s1.selectedIndex].length; n++ ) {
		moisjourCourant = listeDates[s1.selectedIndex][n]
		moisCourant = moisjourCourant.substr(0, 2);
		jourCourant = moisjourCourant.substr(2, 2);
		if (moisCourant != mois) {
			s2.length++;
			mois = moisCourant;
			s2.options[s2.length-1].text=nomMois[eval(mois)]; 
			s2.options[s2.length-1].value=mois; 
		}
	}
	if ((premierMoisPrecedent=="01") && (idxMoisPrecedent < s2.length)) {
		s2.selectedIndex = idxMoisPrecedent;
	}
	changeListeJours();
}

function changeListeJours() { 
	var s1=document.choixDate.annees;
	var s2=document.choixDate.mois;
	var s3=document.choixDate.jours;
	s3.length=0;
	moisChoisi=s2.options[s2.selectedIndex].value;
	for ( var n=0; n<listeDates[s1.selectedIndex].length; n++ ) {
		moisjourCourant = listeDates[s1.selectedIndex][n]
		moisCourant = moisjourCourant.substr(0, 2);
		jourCourant = moisjourCourant.substr(2, 2);
		if (moisCourant == moisChoisi) {
			s3.length++;
			s3.options[s3.length-1].text=jourCourant; 
			s3.options[s3.length-1].value=moisjourCourant; 
		}
	} 
	changeDateBulletin();
}

function changeDateBulletin() {
	var s1=document.choixDate.annees;
	var s3=document.choixDate.jours;
	anneeChoisi=s1.options[s1.selectedIndex].value;
	jourmoisChoisi=s3.options[s3.selectedIndex].value;
	dateBulletinCourant = anneeChoisi+jourmoisChoisi;
	bulletinCourant = "aviso_"+dateBulletinCourant;
	if (dateBulletinCourant < DEBUT_VENTSVAGUES) {
		document.getElementById('ventsvagues_actif').style.display='none';
		document.getElementById('ventsvagues_inactif').style.display='block';
		if ((document.choixDonnee.parametre[2].checked) || (document.choixDonnee.parametre[3].checked)) {
			document.choixDonnee.parametre[0].checked = true;
			changeParametre(document.choixDonnee.parametre[0]);
		}
	}
	else {
		document.getElementById('ventsvagues_inactif').style.display='none';
		document.getElementById('ventsvagues_actif').style.display='block';
	}
	moisCourant = jourmoisChoisi.substr(0, 2);
	jourCourant = jourmoisChoisi.substr(2, 2);
	dateCalendar = moisCourant+"/"+jourCourant+"/"+anneeChoisi;
	afficheDonnee ();
}

// Change le paramètre de la carte affichée
function changeParametre(champ) {
	parametre = champ.value;
	if (parametre == "msla") {
		prefixe="duacs_global_nrt_msla_merged_h_";
	}
	else if (parametre == "madt") {
		prefixe="duacs_global_nrt_madt_merged_h_";
	}
	else if (parametre == "mswh") {
		prefixe="nrt-misc_mswh_merged_";
	}
	else if (parametre == "mwind") {
		prefixe="nrt-misc_mwind_merged_";
	}
//	alert (prefixe);
	afficheDonnee ();
}

// Change le paramètre de la carte affichée
function selectZone(champ) {
	var index = champ.selectedIndex;
	selectedZone = champ.options[index].value;

	afficheDonnee ();
}

// Change l'image de la carte en fonction des parametres selectionnes
function afficheDonnee () {

	// Si la date choisie a moins de 32 jours, les NRT ne sont dispo que sur global.
	if ((dateBulletinCourant > LAST_DATE_NRT) && (selectedZone != "glo")) {
		nrtOff ();
	}
	else {
		nrtOn ();
	}

	var mapDir = repImages + "/" + bulletinCourant + "/gim/" + selectedZone + "/";
	var mapFile = prefixe + dateBulletinCourant + "_" + selectedZone + "_" + parametre + "_n" + profondeur + "_t" + nbJoursPrevi + ".png";
	var mapUrl = mapDir + mapFile;
	if (document['mivmap'].src != mapUrl) {
		document['mivmap'].src = mapUrl;
//		document['mivmap'].alt = mapUrl;
	}
}

// Désactive les choix de cartes NRT
function nrtOff () {
	document.getElementById('nrt_actif').style.display='none';
	document.getElementById('nrt_inactif').style.display='block';
	if ((document.choixDonnee.parametre[0].checked) || (document.choixDonnee.parametre[1].checked)) {
		document.choixDonnee.parametre[2].checked = true;
		changeParametre(document.choixDonnee.parametre[2]);
	}
}

// Active les choix de cartes NRT
function nrtOn () {
	document.getElementById('nrt_inactif').style.display='none';
	document.getElementById('nrt_actif').style.display='block';
}