var NbCheckBox = 0;
var admin;
var no_page = 0;
var nb_page;

//-----------------------------------------------------------------------------
function decoche(page)  {                   // Fonction pour décocher toutes les checkbox
    err_parent = 0;
    i = 0;
    while(!err_parent) {
        try {
            document.getElementById("CB"+i).checked = false;
            err_enfant = 0;
            j = 1;
            while(!err_enfant) {
            try {          
                document.getElementById("CB"+i+"e"+j).checked = false;
            }
            catch(err) {
                err_enfant = 1;
            }            
            j++;
            }        
        }
        catch(err) {
            err_parent = 1;
            }
        i++;
    }
    document.getElementById("recherche").value="";
    go(page);
}
  
//-----------------------------------------------------------------------------
function cocher(cb) {                       // Fonction pour cocher la checkbox correspond au nom
    if (document.getElementById(cb).checked == true) {
        document.getElementById(cb).checked = false;
    }
    else {
        document.getElementById(cb).checked = true;
    }   
    decoche_enfant();
}

//-----------------------------------------------------------------------------
function cocher_ss_cat(cb,no_Cat_Sup,page) { // Fonction pour cocher la checkbox correspond au nom (ss_cat)
    //alert("cb : " + cb + ", no_cat_sup : " + no_Cat_Sup);
    if (document.getElementById(cb).checked == true) {
        document.getElementById(cb).checked = false;
        go(page);
    }
    else {
        document.getElementById(cb).checked = true;
        CB_coche(no_Cat_Sup);
    }
}
  
//-----------------------------------------------------------------------------
function aff_ajout_cat() {                  // Fonction pour afficher la possibilité d'ajouter une option (catégorie)
    if (document.getElementById("ajouter_cat").style.display == "none") {
        document.getElementById("ajouter_cat").style.display = "block";
        document.getElementById("TB_gestionCat").value = "";
        document.getElementById('TB_ordreCat').value   = "00";
        document.getElementById('lstOpt').value = 0;
    }
    else {
        document.getElementById("ajouter_cat").style.display = "none"
    }
}

//-----------------------------------------------------------------------------
function changeGestion() {                  // Fonction pour la gestion des catégories
    var no_menu = document.getElementById('lstOpt').value;
    if ((no_menu == "0bis") || (no_menu == "0")) {
        document.getElementById('lstOpt').value = 0;
        document.getElementById('TB_gestionCat').value    = "";
        document.getElementById('TB_ordreCat').value      = "00";
        document.getElementById('img_mod').style.display  = "none";
        document.getElementById('img_plus').style.display = "block";
    }
    else {
        var menu   = no_menu.substr(no_menu.indexOf("&",0)+1,100);
        var ss_cat = no_menu.substring(no_menu.indexOf("|",0)+1,no_menu.indexOf("&",0));
        //alert(ss_cat);
        //no_menu  = no_menu.substring(0,no_menu.indexOf("|",0));
        var ordre    = no_menu.substr(0,2);
        
        document.getElementById('TB_gestionCat').value    = menu;
        document.getElementById('TB_ordreCat').value      = ordre;
        document.getElementById('img_mod').style.display  = "block";
        document.getElementById('img_plus').style.display = "none";    
        document.getElementById('lstSsCat').value = ss_cat;
    }
}

//-----------------------------------------------------------------------------
function ajout_opt() {                      // Fonction pour ajouter une option
  var new_opt = document.getElementById("TB_gestionCat").value;
  if (!new_opt)
    {
    alert("Vous n'avez rien rentré !");
    }
  else
    {
    var ordre  = document.getElementById('TB_ordreCat').value;
    var ss_cat = document.getElementById('lstSsCat').value;
    new_opt = nettoyer(new_opt);
    window.location.href = 'admin.php?id=1&new=' + new_opt + "&ordre=" + ordre + "&ss_cat=" + ss_cat;
    }  
  }
    
//-----------------------------------------------------------------------------
function mod_opt() {                        // Fonction pour modifier une option
  var new_opt = document.getElementById("TB_gestionCat").value;
  if (!new_opt)
    {
    alert("Vous n'avez rien rentré !");
    }
  else
    {
    var no_menu = document.getElementById('lstOpt').value;
    var ss_cat  = document.getElementById('lstSsCat').value;
    var ordre   = document.getElementById('TB_ordreCat').value;
    var no_opt  = no_menu.substring(2,no_menu.indexOf("|",0));
    new_opt     = nettoyer(new_opt);
    no_opt      = nettoyer(no_opt);
    window.location.href = 'admin.php?id=3&no_opt=' + no_opt + '&new=' + new_opt + "&ordre=" + ordre + "&ss_cat=" + ss_cat;
    }  
  }
      
//-----------------------------------------------------------------------------
function supp_opt() {                       // Fonction pour supprimer une option
  if (confirm('Etes-vous sûr de vouloir supprimer cette option ?'))
    {
    var no_menu = document.getElementById('lstOpt').value;
    var no_opt = no_menu.substring(2,no_menu.indexOf("|",0));
    window.location.href = 'admin.php?id=4&no_opt=' + no_opt;
    }              
  }

//-----------------------------------------------------------------------------
function nettoyer(str_a_nettoyer) {         // Fonction pour nettoeyr une chaine (caractére spéciaux)
  //str_a_nettoyer = str_a_nettoyer.replace(" ", "");
  str_a_nettoyer = str_a_nettoyer.replace("&", "");
  str_a_nettoyer = str_a_nettoyer.replace("?", "");
  str_a_nettoyer = str_a_nettoyer.replace("=", "");
  return str_a_nettoyer;
  }
  
//-----------------------------------------------------------------------------
function ajout_photo() {                    // Fonction pour ajouter une photo
  //window.location.href = 'ajout_borne.php';
  window.open("ajout_borne.php");
  }

//-----------------------------------------------------------------------------
function aff_photo(lien, no_borne) {        // Fonction pour afficher la photo de la borne sélectionnée dans un popup
  if (admin)
    {    
    window.open("photo_admin.php?lien=" + lien + "&no_borne=" + no_borne);    
    }
  else
    {
    window.open("photo.php?lien=" + lien);
    }
  }
  
//-----------------------------------------------------------------------------
function CB_coche(no_Cat_Sup, page) {       // Fonction appellée quand on clique sur une CB étant une sous_cat
  //alert("CB" + no_Cat_Sup);
  document.getElementById("CB" + no_Cat_Sup).checked = true;
  go(page);
  }
  
//-----------------------------------------------------------------------------
function page_suivante() {                  // Fonction pour aller à la page suivante
  //alert(no_page);
  if(isNaN(no_page) == true)
    {
    no_page = 0;
    }
  nb_page = parseInt(document.getElementById("nb_page").innerHTML)-1;
  if (no_page != nb_page)
    {
    no_page = no_page + 1;
    ajax_vignette(no_page);
    }
  }

//-----------------------------------------------------------------------------
function page_precedente() {                // Fonction pour aller à la page précédente
  if(isNaN(no_page) == true)
    {
    no_page = 0;
    }
  //alert(no_page);
  if (no_page != 0)
    {
    no_page = no_page - 1;
    ajax_vignette(no_page);
    }
  }

//-----------------------------------------------------------------------------
function page_fin() {                       // Fonction pour aller à la derniére page
  nb_page = parseInt(document.getElementById("nb_page").innerHTML)-1;
  no_page = nb_page;
  //alert(no_page);
  ajax_vignette(no_page);
  }

//-----------------------------------------------------------------------------
function page_deb() {                       // Fonction pour aller à la premiére page
  no_page = 0;
  ajax_vignette(no_page);
  }
  
//-----------------------------------------------------------------------------
function go(page) {                         // Fonction pour appeler la page du serveur pour changer les valeurs de la page
  no_page = parseInt(page);
  //alert(no_page);
  ajax_cb();
  ajax_vignette(page);
  }

//-----------------------------------------------------------------------------
function decoche_enfant(page) {             // Fonction servant à décocher tous les enfants dont les parents sont décochés
	err_parent = 0;
	i = 0;
	while(!err_parent) 
    {
    try
      {
      if (!document.getElementById("CB"+i).checked)
        {
        err_enfant = 0;
      	j = 1;
      	while(!err_enfant) 
          {
          try
            {          
            document.getElementById("CB"+i+"e"+j).checked = false;
            }
          catch(err)
            {
            err_enfant = 1;
            }            
          j++;
          }
        }
      }
    catch(err)
      {
      err_parent = 1;
      }
    i++;
    }
  go(page);
  }

//-----------------------------------------------------------------------------
function getXhr() {                         // Fonction pour créer un élément XMLHttpRequest
  var xhr = null;
	if(window.XMLHttpRequest) // Firefox et autres
	   xhr = new XMLHttpRequest();
	else if(window.ActiveXObject)
    { // Internet Explorer
	   try 
      {
      xhr = new ActiveXObject("Msxml2.XMLHTTP");
      } 
    catch (e) 
      {
      xhr = new ActiveXObject("Microsoft.XMLHTTP");
      }
	  }
	else 
    { // XMLHttpRequest non supporté par le navigateur
	  alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
	  xhr = false;
	  }
  return xhr;
 }

//-----------------------------------------------------------------------------
function ajax_cb() {                        // Fonction pour appeler la page du serveur pour changer la partie gauche
  // on modifie les informations des checkbox	
	
	var xhr2 = getXhr();   // On crée un élément XMLHttpRequest
	xhr2.onreadystatechange = function() {
		// si on a tout reçu et que le serveur est ok
        if(xhr2.readyState == 4 && xhr2.status == 200) {
			resultat = xhr2.responseText;
			// On affiche le résultat dans la div listedesbornes
			document.getElementById('CBs').innerHTML = resultat;
		}
	}
      
	// On envoie les arguments nécessaire à la requete à la page sur le serveur
	xhr2.open("POST","server.php",true);
	xhr2.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	var coche = "";
	var arg = "Nom_borne LIKE '" + document.getElementById("recherche").value + "%' ";
         
	err_parent = 0;
	i = 0;
	while(!err_parent) {
        try {
            if (document.getElementById("CB"+i).checked) {
                arg = arg + "AND " + document.getElementById("CB"+i).name + "=1 ";
                coche += "&CB"+i+"=1";  
            }
            else {
                coche += "&CB"+i+"=0";
            }
            err_enfant = 0;
            j = 1;
            while(!err_enfant) {
                try {
                    if (document.getElementById("CB"+i+"e"+j).checked) {
                        arg = arg + "AND " + document.getElementById("CB"+i+"e"+j).name + "=1 ";
                        coche += "&CB"+i+"e"+j+"=1";  
                    }
                    else {
                        coche += "&CB"+i+"e"+j+"=0";
                    }    
                }
                catch(err) {
                    err_enfant = 1;
                }
                j++;
            }
        }
        catch(err) {
            err_parent = 1;
        }
        i++;
    }
    
  // On envoie les informations par méthode POST
xhr2.send("id=2&choix="+arg+coche);
}
  
//-----------------------------------------------------------------------------
function ajax_vignette(page) {              // Fonction pour appeler la page du serveur pour changer la partie droite
  // on modifie les informations pour les vignettes
  
	var xhr = getXhr();
	xhr.onreadystatechange = function() {
		// si on a tout reçu et que le serveur est ok
		if(xhr.readyState == 4 && xhr.status == 200) {
			resultat = xhr.responseText;
			// On affiche le résultat dans la div listedesbornes
			document.getElementById('listedesbornes').innerHTML = resultat;
		}
	}

	// On envoie les arguments nécessaire à la requete à la page sur le serveur
	xhr.open("POST","server.php",true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	var arg = "Nom_borne LIKE '" + document.getElementById("recherche").value + "%' ";
	//var arg = "Nom_borne LIKE 'ra%' ";
	//arg = arg.replace
	err_parent = 0;
	i = 0;
	while(!err_parent)  {
        try {
            if (document.getElementById("CB"+i).checked) {
            arg = arg + "AND " + document.getElementById("CB"+i).name + "=1 ";
            }     
            err_enfant = 0;
            j = 1;
            while(!err_enfant) {
                try {          
                    if (document.getElementById("CB"+i+"e"+j).checked) {
                        arg = arg + "AND " + document.getElementById("CB"+i+"e"+j).name + "=1 ";
                    }              
                }
                catch(err) {
                    err_enfant = 1;
                }            
                j++;
            }
        }
        catch(err) {
            err_parent = 1;
            }
        i++;
    }
  
    // On envoie les informations par méthode POST
    xhr.send("id=1&choix="+arg+"&page="+page);					
}

