/**
 *² Fonctions communes d'appels en ajax 
 */

// Création de l'objet
function createRequestObject()
{
    var ro;
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer")
	{
        ro = new ActiveXObject("Microsoft.XMLHTTP");
    } else {
        ro = new XMLHttpRequest();
    }
    return ro;
}

var http = createRequestObject();

// Fonction de débug
function alertResponse()
{
    if(http.readyState == 4)
	{
        var response = http.responseText;
        alert(response);
    }
}

var lediv 		= "";
var lenameiv 	= "";
var lenameicp 	= "";
var leselecti	= "";

/* Réinitialisation d'un select */
function init_select(selectid, texte)
{
	var sel = document.getElementById(selectid);

	if (sel != null)
	{
		for (var i=0 ; i<sel.length ; i++)
		{
			sel.options[i] = null;
		}
		
		var opt = new Option(texte, "0", false, true);
		sel.options[0] = opt;
	}
}

/* Fonctions de sélection d'une commune */
function ajax_getCommunes(cp, pays, divid, nameInputVille, nameInputCp)
{
	if (cp.length > 1)
	{
		lediv 	= divid;
		lenameiv = nameInputVille;
		lenameicp = nameInputCp;
		http.open('GET', '../../../include/ajax/getCommunes.php?cp='+cp+'&pays='+pays);
		http.onreadystatechange = do_ajax_getCommunes;
		http.send(null);
	} else {
		document.getElementById(lediv).style.display = "none";	
	}
}

/* Fonctions de sélection d'une commune */
function do_ajax_getCommunes()
{
    if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(lediv).innerHTML = response;
		document.getElementById(lediv).style.display = "block";
	}
}


/* Fonction ajax de suggestion de recherche (keywords autocompletion) */
function do_rech_suggest(rech){
	if (rech.length > 0){
		http = createRequestObject();
		http.open('GET', 'include/ajax/getRechSuggest.php?rech=' + rech);
		http.onreadystatechange = rech_suggest_callback;
		http.send(null);
	} else {
		document.getElementById('keywords_autocompletion').style.display = 'none';
	}
}
function rech_suggest_callback(){
	if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById('keywords_autocompletion').innerHTML = response;
		document.getElementById('keywords_autocompletion').style.display = 'block';
	}
}
function do_sugRecherche(rech){
	document.getElementById('keywords_autocompletion').style.display = 'none';
	document.form_recherche.recherche.value = rech;
	document.form_recherche.submit();
}


/* Fonctions de sélection des agences/utilisateurs du webmail */
function ajax_getUtilisateurWebmail(champ, divid)
{
	if (champ.length > 1)
	{
		lediv 	= divid;
		http.open('GET', '../../../../../include/ajax/getUtilisateurWebmail.php?champ='+champ);
		http.onreadystatechange = do_ajax_getUtilisateurWebmail;
		http.send(null);
	} else {
		document.getElementById(divid).style.display = "none";	
	}
}

function do_ajax_getUtilisateurWebmail()
{
    if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(lediv).innerHTML = response;
		document.getElementById(lediv).style.display = "block";
	}
}

/* Fonctions de sélection des agences/utilisateurs du webmail */
function ajax_getAgenceWebmail(id, divid)
{
	lediv 	= divid;
	http.open('GET', '../../../../../include/ajax/getAgenceWebmail.php?id_agence='+id);
	http.onreadystatechange = do_ajax_getAgenceWebmail;
	http.send(null);
}

function do_ajax_getAgenceWebmail()
{
    if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(lediv).innerHTML = response;
	}
}

function setCommune(commune, code)
{
	document.getElementsByName(lenameiv)[0].value = commune;
	document.getElementsByName(lenameicp)[0].value = code;
	document.getElementById(lediv).style.display = "none";
}

/* Fonctions de sélection d'un client */
function ajax_getClients(nom, selectid)
{
	if (nom.length > 1)
	{
		leselecti = selectid;
		http.open('GET', '../../../include/ajax/getClients.php?nom='+nom);
		http.onreadystatechange = do_ajax_replaceSelect;
		http.send(null);
	}
}

function do_ajax_replaceSelect()
{
    if(http.readyState == 4)
	{
		var response = http.responseText;
		
		var Navigateur = navigator.appName;
		if (Navigateur == "Microsoft Internet Explorer")
		{
			//Méthode IE
			var elem_div = document.createElement("div");
			elem_div.style.display = "inline";
			elem_div.id = "div_temp";
			document.getElementById(leselecti).parentNode.insertBefore(elem_div, document.getElementById(leselecti));
			
			var id_sel = document.getElementById(leselecti).id;
			var class_sel = document.getElementById(leselecti).getAttribute("className");
			var style_sel = document.getElementById(leselecti).getAttribute("style");
			var onchange_sel = document.getElementById(leselecti).getAttribute("onchange");
			//var onchange_new = onchange_sel.replace(/function anonymous {/,"");
			var name_sel = document.getElementById(leselecti).getAttribute("name");
	
			document.getElementById(leselecti).parentNode.removeChild(document.getElementById(leselecti));
	
			attributs = " id='"+id_sel+"'";
	
			elem_div.innerHTML = "<select "+attributs+">"+response+"</select>";	
			var elem_sel = document.getElementById(id_sel);
			elem_sel.setAttribute("className", class_sel);
			elem_sel.setAttribute("onchange", onchange_sel);
			elem_sel.setAttribute("style", style_sel);
			elem_sel.setAttribute("name", name_sel);
			
		} else {
			// Méthode firefox
			document.getElementById(leselecti).innerHTML = response;
		}
		
	}
}

/* Fonctions de sélection d'un fournisseur */
function ajax_getFournisseurs(nom, selectid)
{
	if (nom.length >= 1)
	{
		leselecti = selectid;
		http.open('GET', '../../../include/ajax/getFournisseurs.php?nom='+nom);
		http.onreadystatechange = do_ajax_replaceSelect;
		http.send(null);
	}
}

/* Fonctions de sélection d'un masque */
function ajax_get_masque(masque)
{
	if (masque.length >= 1)
	{
		http.open('GET', '../../../include/ajax/getMasque.php?masque='+masque);
		http.onreadystatechange = do_ajax_get_masque;
		http.send(null);
	}
}
function do_ajax_get_masque()
{
    if(http.readyState == 4)
	{	
		var response = http.responseText;
		//alert(response);
		eval(response);
	}
}

/*Fonctions pour recuperer un flux */
function ajax_get_rss(id,url)
{
	if (url.length >= 1)
	{
		//alert("a");
		http.open('GET', '../../../include/ajax/getRss.php?id='+id+'&url='+url);
		http.onreadystatechange = do_ajax_get_rss;
		http.send(null);
	}
}
function do_ajax_get_rss()
{
    if(http.readyState == 4)
	{	
		var response = http.responseText;
		//alert(response);
		create_div(response);
	}
}
function ajax_sup_rss(id_a_sup)
{
	
	http.open('GET', '../../../include/ajax/getRss.php?id_a_sup='+id_a_sup);
	http.send(null);
	if(http.readyState == 4)
	{	
		var response = http.responseText;
		//alert(response);
	
	}
}
/* Fonctions de sélection d'une societe */
function ajax_getSociete(lib, divid, nameInputSoc, nameHidden)
{
	if (lib.length > 1)
	{
		lediv 	= divid;
		lenameiv = nameInputSoc;
		lenamehidden = nameHidden;
		http.open('GET', '../../../include/ajax/getSocietes.php?lib='+lib);
		http.onreadystatechange = do_ajax_getSociete;
		http.send(null);
	} else {
		document.getElementById(lediv).style.display = "none";	
	}
}

/* Fonctions de sélection d'une societe */
function do_ajax_getSociete()
{
    if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(lediv).innerHTML = response;
		document.getElementById(lediv).style.display = "block";
	}
}

function setSociete(lib,id)
{
	document.getElementsByName(lenameiv)[0].value = lib;
	document.getElementsByName(lenamehidden)[0].value = id;
	document.getElementById(lediv).style.display = "none";
}
/* Fonctions de sélection des email d'un client magasin */
function ajax_getEmailClientMagasin(email, divid, inputid)
{
	if (email.length > 1)
	{
		lediv 	= divid;
		lenameiv = inputid;
		http.open('GET', '../../../include/ajax/getEmailClientMagasin.php?email='+email);
		http.onreadystatechange = do_ajax_getEmailClientMagasin;
		http.send(null);
	}
}
function do_ajax_getEmailClientMagasin()
{
    if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(lediv).innerHTML = response;
		document.getElementById(lediv).style.display = "block";
	}
}
function setEmailClientMagasin(email)
{
	document.getElementsByName(lenameiv)[0].value = email;
	document.getElementById(lediv).style.display = "none";
}

/* Fonctions de sélection des marques à partir d'un type de marque */
function ajax_getMarques(id_type_marque, selectid)
{
	leselecti = selectid;
	http.open('GET', '../../../include/ajax/getMarques.php?id_type_marque='+id_type_marque);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

/* Fonctions de sélection des modeles à partir d'une marque */
function ajax_getModeles(id_marque, selectid, selectModele)
{
	// Attention on ne doit récupérer que ceux qui ne sont pas deja dans la liste
	var selectm = document.getElementById(selectModele);
	var chaine = "";
	for (var i=0 ; i < selectm.length ; i++)
	{
		chaine += selectm.options[i].value;
		if ((i+1) < selectm.length)
		{
			chaine += ",";
		}
	}
	leselecti = selectid;
	http.open('GET', '../../../include/ajax/getModeles.php?id_marque='+id_marque+"&exclure="+chaine);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

/* Fonctions de sélection des modeles à partir d'une marque -- FRONT */
function ajax_getModelesF(id_marque, selectid)
{
	leselecti = selectid;
	http.open('GET', 'include/ajax/getModelesFront.php?id_marque='+id_marque);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

/* Fonctions de sélection des marques à partir d'un modèle -- FRONT */
function ajax_getMarquesF(id_modele, selectid)
{
	leselecti = selectid;
	http.open('GET', 'include/ajax/getMarquesFront.php?id_modele='+id_modele);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

/* Fonctions de sélection des rubriques à partir d'un bloc */
function ajax_getRubriques(id_bloc, selectid, selected)
{
	var def = "";
	if (selected != "")
	{
		def = "&def="+selected;
	}
	init_select('sous_rubrique', '------Tous------');
	init_select('sous_rubrique2', '------Tous------');
	leselecti = selectid;
	http.open('GET', '../../../include/ajax/getRubriques.php?id_bloc='+id_bloc+def);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

/* Sélection de blocs a partir de la langue */
function ajax_getBlocLngIframe(lng, selectid)
{
	init_select('rubrique', '------Tous------');
	init_select('sous_rubrique', '------Tous------');
	leselecti = selectid;
	http.open('GET', '../../../../../include/ajax/getBlocs.php?lng='+lng);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

function ajax_getUniversLng(lng, selectid)
{
	
	leselecti = selectid;
	http.open('GET', '../../../include/ajax/getUnivers.php?lng='+lng);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

function ajax_getRubriquesIframe(id_bloc, selectid, selected)
{
	var def = "";
	if (selected != "")
	{
		def = "&def="+selected;
	}
	init_select('sous_rubrique', '------Tous------');
	init_select('sous_rubrique2', '------Tous------');
	leselecti = selectid;
	http.open('GET', '../../../../../include/ajax/getRubriques.php?id_bloc='+id_bloc+def);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

/* Fonctions de sélection des sous rubriques à partir d'une rubrique */
function ajax_getSsRubriques(id_rubrique, selectid, selected, display_all)
{
	var def = "";
	var dis = "";
	if (selected != "")
	{
		def = "&def="+selected;
	}
	
	if (display_all != "")
	{
		dis = "&display_all="+display_all;
	}
	leselecti = selectid;
	http.open('GET', '../../../include/ajax/getSsRubriques.php?id_rubrique='+id_rubrique+def+dis);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}
function ajax_getSsRubriquesIframe(id_rubrique, selectid, selected, display_all)
{
	var def = "";
	var dis = "";
	if (selected != "")
	{
		def = "&def="+selected;
	}
	
	if (display_all != "")
	{
		dis = "&display_all="+display_all;
	}
	leselecti = selectid;
	http.open('GET', '../../../../../include/ajax/getSsRubriques.php?id_rubrique='+id_rubrique+def+dis);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

/* Fonctions de sélection des rubriques à partir d'un bloc */
function ajax_getDepartement(id_region, selectid, selected)
{
	var def = "";
	if (selected != "")
	{
		def = "&def="+selected;
	}
	leselecti = selectid;
	http.open('GET', '../../../include/ajax/getDepartementReg.php?id_region='+id_region+def);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

var id_ilot = "";
var id_allee = "";
var id_rack = "";
var id_etage = "";
var id_emplacement = "";

/* Fonction de reload des emplacements */
function ajax_reloadEmp(id_ilotr, id_alleer, id_rackr, id_etager, id_emplacementr)
{
	id_ilot = id_ilotr
	id_allee = id_alleer
	id_rack = id_rackr
	id_etage = id_etager
	id_emplacement = id_emplacementr
	
	ajax_getAlleesIframeReload();
}

function ajax_getAlleesIframeReload()
{
	var def = "";
	if (id_allee != "")
	{
		def = "&def="+id_allee;
	}
	leselecti = 'allee';
	http.open('GET', '../../../../../include/ajax/getAllees.php?id_ilot='+id_ilot+def);
	http.onreadystatechange = do_ajax_getAlleesIframeReload;
	http.send(null);
}
function do_ajax_getAlleesIframeReload()
{
	if(http.readyState == 4)
	{
		do_ajax_replaceSelect();
		ajax_getRacksIframeReload();
	}
}

function ajax_getRacksIframeReload()
{
	var def = "";
	if (id_rack != "")
	{
		def = "&def="+id_rack;
	}
	leselecti = 'rack';
	http.open('GET', '../../../../../include/ajax/getRacks.php?id_allee='+id_allee+def);
	http.onreadystatechange = do_ajax_getRacksIframeReload;
	http.send(null);
}
function do_ajax_getRacksIframeReload()
{
	if(http.readyState == 4)
	{
		do_ajax_replaceSelect();
		ajax_getEtagesIframeReload();
	}
}

function ajax_getEtagesIframeReload()
{
	var def = "";
	if (id_etage != "")
	{
		def = "&def="+id_etage;
	}
	leselecti = 'etage';
	http.open('GET', '../../../../../include/ajax/getEtages.php?id_rack='+id_rack+def);
	http.onreadystatechange = do_ajax_getEtagesIframeReload;
	http.send(null);
}
function do_ajax_getEtagesIframeReload()
{
	if(http.readyState == 4)
	{
		do_ajax_replaceSelect();
		ajax_getEmplacementsIframeReload();
	}
}

function ajax_getEmplacementsIframeReload()
{
	var def = "";
	if (id_emplacement != "")
	{
		def = "&def="+id_emplacement;
	}
	leselecti = 'emplacement';
	http.open('GET', '../../../../../include/ajax/getEmplacements.php?id_etage='+id_etage+def);
	http.onreadystatechange = do_ajax_getEmplacementsIframeReload;
	http.send(null);
}

function do_ajax_getEmplacementsIframeReload()
{
	if(http.readyState == 4)
	{
		do_ajax_replaceSelect();
	}
}


/* Fonctions de sélection des allées à partir d'un ilot */
function ajax_getAlleesIframe(id_ilot, selectid, selected)
{
	var def = "";
	if (selected != "")
	{
		def = "&def="+selected;
	}
	leselecti = selectid;
	http.open('GET', '../../../../../include/ajax/getAllees.php?id_ilot='+id_ilot+def);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}
function ajax_getAllees(id_ilot, selectid, selected)
{
	var def = "";
	if (selected != "")
	{
		def = "&def="+selected;
	}
	init_select('rack', '--Sélectionnez--');
	leselecti = selectid;
	http.open('GET', '../../../include/ajax/getAllees.php?id_ilot='+id_ilot+def);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

/* Fonctions de sélection des racks à partir d'une allée */
function ajax_getRacks(id_allee, selectid, selected)
{
	var def = "";
	if (selected != "")
	{
		def = "&def="+selected;
	}
	leselecti = selectid;
	http.open('GET', '../../../include/ajax/getRacks.php?id_allee='+id_allee+def);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}
function ajax_getRacksIframe(id_allee, selectid, selected)
{
	var def = "";
	if (selected != "")
	{
		def = "&def="+selected;
	}
	leselecti = selectid;
	http.open('GET', '../../../../../include/ajax/getRacks.php?id_allee='+id_allee+def);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

/* Fonctions de sélection des etages à partir d'un rack */
function ajax_getEtages(id_rack, selectid, selected)
{
	var def = "";
	if (selected != "")
	{
		def = "&def="+selected;
	}
	leselecti = selectid;
	http.open('GET', '../../../include/ajax/getEtages.php?id_rack='+id_rack+def);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}
function ajax_getEtagesIframe(id_rack, selectid, selected)
{
	var def = "";
	if (selected != "")
	{
		def = "&def="+selected;
	}
	leselecti = selectid;
	http.open('GET', '../../../../../include/ajax/getEtages.php?id_rack='+id_rack+def);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}
function ajax_getEmplacementsIframe(id_etage, selectid, selected)
{
	var def = "";
	if (selected != "")
	{
		def = "&def="+selected;
	}
	leselecti = selectid;
	http.open('GET', '../../../../../include/ajax/getEmplacements.php?id_etage='+id_etage+def);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

function ajax_getLigneIlot(id_ilot, id)
{
	lediv = id;
	http.open('GET', '../../../include/ajax/getLigneIlot.php?id_ilot='+id_ilot);
	http.onreadystatechange = do_ajax_insertInId;
	http.send(null);	
}

// Variables communes
var s_id_ilot = "";
var s_id_allee = "";
var s_id_rack = "";
var position = 0;

function ajax_add_modif(s_id_ilot2, s_id_allee2, s_id_rack2)
{
	s_id_ilot = s_id_ilot2;
	s_id_allee = s_id_allee2;
	s_id_rack = s_id_rack2;
	
	add_ilot_modif(s_id_ilot, position);
}

function ajax_getLigneIlot_modif(id_ilot)
{
	lediv = 'circuit';
	http.open('GET', '../../../include/ajax/getLigneIlot.php?id_ilot='+id_ilot);
	http.onreadystatechange = do_ajax_getLigneIlot_modif;
	http.send(null);	
}
function ajax_getLigneAllee(id_allee, id, numero_allee)
{
	lediv = id;
	http.open('GET', '../../../include/ajax/getLigneAllee.php?id_allee='+id_allee+'&numero_allee='+numero_allee);
	http.onreadystatechange = do_ajax_insertInId;
	http.send(null);
}
function ajax_getLigneAllee_modif(id_allee, id, numero_allee)
{
	lediv = id;
	http.open('GET', '../../../include/ajax/getLigneAllee.php?id_allee='+id_allee+'&numero_allee='+numero_allee);
	http.onreadystatechange = do_ajax_getLigneAllee_modif;
	http.send(null);
}
function ajax_getLigneRack(id_rack, id, numero_allee)
{
	lediv = id;
	http.open('GET', '../../../include/ajax/getLigneRack.php?id_rack='+id_rack+'&numero_allee='+numero_allee);
	http.onreadystatechange = do_ajax_insertInId;
	http.send(null);
}
function ajax_getLigneRack_modif(id_rack, id, numero_allee)
{
	lediv = id;
	http.open('GET', '../../../include/ajax/getLigneRack.php?id_rack='+id_rack+'&numero_allee='+numero_allee);
	http.onreadystatechange = do_ajax_getLigneRack_modif;
	http.send(null);
}
function do_ajax_insertInId()
{
	if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(lediv).innerHTML = document.getElementById(lediv).innerHTML+response;
	}
}
function do_ajax_getLigneIlot_modif()
{
	if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(lediv).innerHTML = document.getElementById(lediv).innerHTML+response;
		
		position++;
		
		// Rappel de la fonction d'insertion des ilots
		tab = s_id_ilot.split(";");
		if (position < tab.length)
		{
			add_ilot_modif(s_id_ilot, position);
		} else {
			// On lance la création des allées
			position = 0;
			add_allee_modif(s_id_allee, position);
		}
	}
}
function do_ajax_getLigneAllee_modif()
{
	if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(lediv).innerHTML = document.getElementById(lediv).innerHTML+response;
		
		position++;
		
		// Rappel de la fonction d'insertion des ilots
		tab = s_id_allee.split(";");
		if (position < tab.length)
		{
			add_allee_modif(s_id_allee, position);
		} else {
			// On lance la création des racks
			position = 0;
			add_rack_modif(s_id_rack, position);
		}
	}
}
function do_ajax_getLigneRack_modif()
{
	if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(lediv).innerHTML = document.getElementById(lediv).innerHTML+response;
		
		position++;
		
		// Rappel de la fonction d'insertion des ilots
		tab = s_id_rack.split(";");
		if (position < tab.length)
		{
			add_rack_modif(s_id_rack, position);
		} else {
			// On enleve l'explication
			setTimeout("refreshAllDraggable()", 500);
			removeExplication();
		}
	}
}

function ajax_getRubActualite(archive, selectid)
{
	leselecti = selectid;
	http.open('GET', '../../../include/ajax/getRubActualite.php?archive='+archive);
	http.onreadystatechange = do_ajax_replaceSelect;
	http.send(null);
}

function ajax_changeMontantChequeCadeau(id_montant)
{
	http.open('GET', 'include/ajax/getMontantCheque.php?id_montant='+id_montant);
	http.onreadystatechange = do_ajax_changeMontantChequeCadeau;
	http.send(null);
}
function do_ajax_changeMontantChequeCadeau()
{
	if(http.readyState == 4)
	{
		var response = http.responseText;
		var tmp = response.split("|");
		document.getElementById('p_montant_lettres').innerHTML = tmp[0];
		document.getElementById('div_montant_chiffres').innerHTML = tmp[1]+"&nbsp;&euro;";
	}
}

function testDisabled(id)
{
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer")
	{
		var opt = document.getElementById('opt_'+id);
		var sel = opt.parentNode;
		if (opt.disabled)
		{
			// On va sélectionner le premier qui n'est pas disabled
			for (var i=0 ; i<sel.length ; i++)
			{
				if (!sel[i].disabled)
				{
					sel[i].selected = true;
					break;
				}
			}
		}
	}
}
