var curselect = null;
var curid = null;

function addslashes(ch) { 
 ch = ch.replace(/\\/g,"\\\\") 
 ch = ch.replace(/\'/g,"\\'") 
 ch = ch.replace(/\"/g,"\\\"") 
 return ch 
}


function encodeParam(texte) {
	URIencode = encodeURIComponent(texte);
	retour = URIencode.replace(/'/g, "\\'");
	return(retour);
}


function getHTTPObject()
{
  var xmlhttp = false;

  /* Compilation conditionnelle d'IE */
  /*@cc_on
  @if (@_jscript_version >= 5)
     try
     {
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
     }
     catch (e)
     {
        try
        {
           xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch (E)
        {
           xmlhttp = false;
        }
     }
  @else
     xmlhttp = false;
  @end @*/

  /* on essaie de créer l'objet si ce n'est pas déjà fait */
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined')
  {
     try
     {
        xmlhttp = new XMLHttpRequest();
     }
     catch (e)
     {
        xmlhttp = false;
     }
  }

 
  return xmlhttp;
}

/**
  * Envoie des données à l'aide d'XmlHttpRequest?
  * @param string methode d'envoi ['GET'|'POST']
  * @param string url
  * @param string données à envoyer sous la forme var1=value1&var2=value2...
  */
 function sendData(xmlhttp, method, url, data) {
	if (!xmlhttp){
		return false;
	}
	if(method == "POST") {
		if(data == 'null') {
			xmlhttp.open("POST", url, true); //ouverture asynchrone
		}
		else {
			xmlhttp.open("POST", url+"?"+data, true);
		}
		xmlhttp.send(null);
	} else if(method == "POST") {
		xmlhttp.open("POST", url, true); //ouverture asynchrone
		xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		xmlhttp.send(data);
	}
	return true;
}

function loadXMLText( texte ) {
	// code for IE
	if (window.ActiveXObject) {
		var doc=new ActiveXObject("Microsoft.XMLDOM");
		doc.async="false";
		doc.loadXML(texte);
	}
	// code for Mozilla, Firefox, Opera, etc.
	else {
		var parser=new DOMParser();
		var doc=parser.parseFromString(texte,"text/xml");
	}
	return doc;
}


// add item to select element the less
// elegant, but compatible way.
function appendToSelect(select, value, content) {
    var opt;
    opt = document.createElement("option");
    opt.value = value;
	opt.title=content.nodeValue;
    opt.appendChild(content);
    select.appendChild(opt);
}

function empty_value( ctrl ) {
	if ( ctrl == null )
		return '';
	else
		return ctrl;
}

function fillForms( forms_name, xmlhttp ) {
	var nodes= xmlhttp.responseXML.documentElement.childNodes;
	for ( var i=0;i<nodes.length;i++){
		var node_value = ''; 
		if ( nodes[i].childNodes[0] )
			node_value = nodes[i].childNodes[0].nodeValue;
		var node_name  = nodes[i].nodeName;
		var item = document.forms[forms_name].elements[node_name];
		if ( item ) {
			if ( item.options ) {
				var j,t;
				for (j = 0; j < item.options.length; j++) {
					if ( item.options[j].value == node_value )
						t = j;
				}
				item.options.selectedIndex=t;
			} else {
				item.value=node_value;
			}
		}
	}
}


// Fonction utilisée pour faire appel à un script php
	function request(page, parameters) {
		var xhr = null; 
		
		// Firefox
		if (window.XMLHttpRequest)
		   xhr = new XMLHttpRequest();
		// Internet Explorer
		else if (window.ActiveXObject) {
			try {
			    xhr = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
			    xhr = new ActiveXObject("Microsoft.XMLHTTP");
			}
		// XMLHttpRequest non supporté par le navigateur 
		} else {
		   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest."); 
		   return;
		}
		
		if (parameters)
			page += "?" + parameters;
		
		xhr.open("GET", page, false);
		xhr.send(null);
		
		if(xhr.readyState == 4)
			return(xhr.responseText);
		else
			return(false);
	}


