var sel_couleur;
var sel_taille;

// Définition de la liste des tailles pour une couleur
//function set_tailles(couleur) {
function set_tailles(couleur, str_id) {
  if (tab) {
    //****** SIGéal Début : validation W3C et extension à d'autres id d'attributs
    //var liste_tailles = document.getElementById("liste_tailles");
	var liste_tailles = document.getElementById(str_id);
	//****** SIGéal Fin : validation W3C et extension à d'autres id d'attributs
    sel_taille=liste_tailles.options[liste_tailles.options.selectedIndex].value;
    for (m=liste_tailles.options.length-1; m>=0; m--)
      liste_tailles.options[m]=null;
    var j=0;
    for (i=0; i<tab.length; i++){
      if (tab[i]["id_couleur"]==couleur.value) {
        liste_tailles.options[j]=new Option(tab[i]["nom_taille"], tab[i]["id_taille"]);
	    j++;
	  }
    }
    for (i=0; i<liste_tailles.length; ++i)
      if (liste_tailles.options[i].value==sel_taille)
        liste_tailles.options[i].selected=true;
    // Récupération et affichage du délai
    set_delai(sel_taille, couleur.value, "lblDelai", "attrib-7");
  }
}

// Définition de la liste des couleurs pour une taille
//function set_couleurs(taille) {
function set_couleurs(taille, str_id) {
  if (tab) {
    //****** SIGéal Début : validation W3C et extension à d'autres id d'attributs
    //var liste_couleurs=document.getElementById("liste_couleurs");
	var liste_couleurs=document.getElementById(str_id);
	//****** SIGéal Fin : validation W3C et extension à d'autres id d'attributs
    sel_couleur=liste_couleurs.options[liste_couleurs.options.selectedIndex].value;
    for (m=liste_couleurs.options.length-1; m>=0; m--)
      liste_couleurs.options[m]=null;
    var j=0;
    for (i=0; i<tab.length; i++){
      if (tab[i]["id_taille"]==taille.value) {
        liste_couleurs.options[j]=new Option(tab[i]["nom_couleur"], tab[i]["id_couleur"]);
	    j++;
	  }
	}
	for (i=0; i<liste_couleurs.length; ++i)
      if (liste_couleurs.options[i].value==sel_couleur)
        liste_couleurs.options[i].selected=true;
    // Récupération et affichage du délai
    set_delai(taille.value, sel_couleur, "lblDelai", "attrib-7");
  }
}

// Remise à zéro du contenu des listes de tailles et de couleurs
function raz_listes() {
  if (tab) {
    //****** SIGéal Début : validation W3C et extension à d'autres id d'attributs
    //var liste_couleurs=document.getElementById("liste_couleurs");
    //var liste_tailles=document.getElementById("liste_tailles");
    var liste_id_couleur = new Array(3);
    liste_id_couleur[1] = 2; // couleur
    liste_id_couleur[2] = 3; // coloris ruban
    liste_id_couleur[3] = 5; // teinte
    for (i=1; i<=liste_id_couleur.length; i++)
      if (document.getElementById("attrib-"+liste_id_couleur[i])) {
        var liste_couleurs=document.getElementById("attrib-"+liste_id_couleur[i]);
		var id_couleur = "attrib-"+liste_id_couleur[i];
        break;
      }
    var liste_id_taille = new Array(3);
    liste_id_taille[1] = 1; // taille
    liste_id_taille[2] = 4; // taille bas et collants
    liste_id_taille[3] = 6; // pointure
    for (i=1; i<=liste_id_taille.length; i++)
      if (document.getElementById("attrib-"+liste_id_taille[i])) {
        var liste_tailles=document.getElementById("attrib-"+liste_id_taille[i]);
        break;
      }
	//****** SIGéal Fin : validation W3C et extension à d'autres id d'attributs
    for (m=liste_couleurs.options.length-1; m>=0; m--)
      liste_couleurs.options[m]=null;
    for (m=liste_tailles.options.length-1; m>=0; m--)
      liste_tailles.options[m]=null;
    var k_couleur=0;
    var k_taille=0;
    for (i=0; i<tab.length; i++) {
      doublon=0;
      for (j=0; j<liste_couleurs.options.length; j++) {
        if (tab[i]["id_couleur"]==liste_couleurs.options[j].value) doublon=1;
      }
      if (doublon==0) {
        liste_couleurs.options[k_couleur]=new Option(tab[i]["nom_couleur"], tab[i]["id_couleur"]);
        k_couleur++;
      }
      doublon=0;
      for (j=0; j<liste_tailles.options.length; j++) {
        if (tab[i]["id_taille"]==liste_tailles.options[j].value) doublon=1;
      }
      if (doublon==0) {
        liste_tailles.options[k_taille]=new Option(tab[i]["nom_taille"], tab[i]["id_taille"]);
        k_taille++;
      }
    }
//    liste_couleurs.options[0].selected=true;
//    set_tailles(liste_couleurs.options[liste_couleurs.options.selectedIndex]);
    liste_tailles.options[0].selected=true;
    set_couleurs(liste_tailles.options[liste_tailles.options.selectedIndex], id_couleur);
  } else {
    set_delai('', '', "lblDelai", "attrib-7");
  }
}

// Définition du délai en fonction du stock pour un article / taille / couleur
function set_delai(taille, couleur, str_id_lbl, str_id_lst) {
  var lbl_delai = document.getElementById(str_id_lbl);
  var lst_delais = document.getElementById(str_id_lst);
  var btn_panier = document.getElementById('cartAdd');
  if (tab) {
    // Recherche du délai pour un couple taille / couleur
    for (i=0; i<tab.length; i++) {
      if ((tab[i]["id_taille"]==taille) && (tab[i]["id_couleur"]==couleur)) {
        var id_delai = tab[i]["id_delai"];
        break;
	  }
    }
	// Sélection du délai dans la liste cachée (pour envoi POST)
	for (i=0; i<lst_delais.length; ++i)
      if (lst_delais.options[i].value==id_delai) {
        lst_delais.options[i].selected=true;
        lbl_delai.innerHTML = lst_delais.options[i].text;
		break;
      }
    // On masque le bouton ajouter si le stock est épuisé
    if (id_delai==epuise) {
	  btn_panier.style.display = "none";
    } else {
	  btn_panier.style.display = "block";
    }
  } else {
    // Cas où le stock n'est pas géré
    if (delai) {
	  for (i=0; i<lst_delais.length; ++i)
        if (lst_delais.options[i].value==delai) {
          lst_delais.options[i].selected=true;
          //lbl_delai.innerHTML = lst_delais.options[i].text + " (stock non g&eacute;r&eacute;)";
		  lbl_delai.innerHTML = lst_delais.options[i].text;
		  break;
        }
      // On masque le bouton ajouter si le stock est épuisé
      if (delai==epuise) {
	    btn_panier.style.display = "none";
      } else {
	    btn_panier.style.display = "block";
	  }
	}
  }
}
