var filtres = [];

function setFiltreValeur(filtre, valeur)
{
  myError('setFiltreValeur est obsolète ! ['+filtre+' , '+ valeur+'] ')
  filtres[filtre] = valeur;
}

function getFiltreValeur(filtre)
{
  myError('getFiltreValeur est obsolète ! ['+filtre+'] ');
  return filtres[filtre];
}

function init_filtres(liste){
  liste.forEach((element=>{
    filtres[element]='';
  }));
}

function addDefaultFiltre(index, valeur){
  let retour = '';
  retour += '<tr><td>';
  retour += '<label for="filtre_'+index+'">'+index+'</label>';
  retour += '</td><td>';
  retour += '<input type="" id="filtre_'+index+'" name="filtre_'+index+'" value="'+valeur+'"></inputl>';
  retour += '</td></tr>';
  return retour;
}

function openFiltrePopup(filtre)
{
  let modal_header='Filtrer les items';
  let modal_body='';
  let modal_footer='<div align="right" width="100%" style="padding-top:2vh"><button onclick="applyFiltre()">Enregistrer</button></div>';

  modal_body += '<table>';
  Object.entries(filtres).forEach(element=>{
    const [index,valeur] = element;

    switch(index) {
      default:
        modal_body += addDefaultFiltre(index, valeur);
    }

  });
  modal_body += '</table>';

  modalSetHeader(modal_header);
  modalSetBody(modal_body);
  modalSetFooter(modal_footer);   

  if (!modalDialog.open) modalDialog.showModal();
}

function applyFiltre(){
  Object.entries(filtres).forEach(element=>{
    const [index,valeur] = element;
    let new_valeur=valeur;

    switch(index) {
      default:
        let input_valeur = document.querySelector('#filtre_' + index);
        if (input_valeur) new_valeur=input_valeur.value;
    }

    filtres[index] = new_valeur;
  });

  afficherItems();
}