var editionEnCours = false;

var sauve = false;

function inlineMod(id, obj, nomValeur, type)
{
	if(editionEnCours)
	{
		return false;
	}
	else
	{
		editionEnCours = true;
		sauve = false;
	}

	var input = null;

	switch(type)
	{
		case "texte":
		case "nombre":
			input = document.createElement("input");
			break;

		case  "texte-multi":
			input = document.createElement("textarea");
			break;
	}

	if (obj.innerText)
		input.value = obj.innerText;
	else
		input.value = obj.textContent;
		
	input.value = trim(input.value);

	input.style.width  = getTextWidth(input.value) + 30 + "px";

	obj.replaceChild(input, obj.firstChild);

	input.focus();
	input.select();

	input.onblur = function sortir()
	{
		sauverMod(id, obj, nomValeur, input.value, type);
		delete input;
	}

	input.onkeydown = function keyDown(event)
	{
        if (!event&&window.event)
        {
            event = window.event;
        }
		if(getKeyCode(event) == 13)
        {
			sauverMod(id, obj, nomValeur, input.value, type);
			delete input;
		}
	}
}

function trim(value) {
   var temp = value;
   var obj = /^(\s*)([\W\w]*)(\b\s*$)/;
   if (obj.test(temp)) { temp = temp.replace(obj, '$2'); }
   var obj = /  /g;
   while (temp.match(obj)) { temp = temp.replace(obj, " "); }
   return temp;
}

function getTextWidth(texte)
{
	var largeur = 150;

	if(trim(texte) == "")
	{
		return largeur;
	}

	var span = document.createElement("span");
	span.style.visibility = "hidden";
	span.style.position = "absolute";

	span.appendChild(document.createTextNode(texte));
	document.getElementsByTagName("body")[0].appendChild(span);

	largeur = span.offsetWidth;

	document.getElementsByTagName("body")[0].removeChild(span);
	span = null;

	return largeur;
}

function getKeyCode(evenement)
{
    for (prop in evenement)
    {
        if(prop == 'which')
        {
            return evenement.which;
        }
    }

    return evenement.keyCode;
}

function getXMLHTTP()
{
    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)
        {
            try
            {
                xhr = new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch(e1)
            {
                xhr = null;
            }
        }
    }
    else
    { // XMLHttpRequest non support par le navigateur
        alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
    }

    return xhr;
}

var XHR = null;

function sauverMod(id, obj, nomValeur, valeur, type)
{
	if(sauve)
	{
		return false;
	}
	else
	{
		sauve = true;		
	}

	if(XHR && XHR.readyState != 0)
	{
		//XHR.abort();
		delete XHR;
	}

	XHR = getXMLHTTP();

	if(!XHR)
	{
		return false;
	}

	XHR.open("GET", "script_modif_compte.php?id=" + id + "&champ=" + nomValeur + "&valeur=" + escape(valeur) + "&type=" + type + ieTrick(), true);

	XHR.onreadystatechange = function()
	{
		if (XHR.readyState == 4)
		{	
			//alert(XHR.responseText);
			var tmp=XHR.responseText.split("&");
			var tmp1=tmp[0];
			var tmp2=tmp[1];
			var tmp3=tmp[2];
			
			if(tmp1=='pasok')
			{
				if(tmp3){alert(tmp3);}
				editionEnCours = false;
				obj.replaceChild(document.createTextNode(tmp2), obj.firstChild);
			}
			else
			{
				editionEnCours = false;
	
				obj.replaceChild(document.createTextNode(valeur), obj.firstChild);
			}
		}
	}

	XHR.send(null);
}

function ieTrick(sep)
{
	d = new Date();
	trick = d.getYear() + "ie" + d.getMonth() + "t" + d.getDate() + "r" + d.getHours() + "i" 
		+ d.getMinutes() + "c" + d.getSeconds() + "k" + d.getMilliseconds();

	if (sep != "?")
	{
		sep = "&";
	}

	return sep + "ietrick=" + trick;
}

function commande()
{
	var commande = document.getElementById("test");
	var tmp =null;
	
			var xhr_object = null;
	 
			if(window.XMLHttpRequest) // Firefox 
			   xhr_object = new XMLHttpRequest();
			else if(window.ActiveXObject) // Internet Explorer 
			   xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); 
			else { // XMLHttpRequest non support par le navigateur 
			   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
			   return;
				 }

		xhr_object.open("GET", "commandes.inc.php", true);
		xhr_object.onreadystatechange = function()
										{
											if(xhr_object.readyState == 4)
											{
												tmp = xhr_object.responseText;
												commande.innerHTML = tmp;
											}
										}
		xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xhr_object.send(null);
}
