var isWorking = false;        // est-ce que le canal est occupé
var Obj;

function getHTTPObject() {
	var request = false;
	try {
		request = new ActiveXObject('Msxml2.XMLHTTP');
	}  
	catch (err2) {
		try {
			request = new ActiveXObject('Microsoft.XMLHTTP');
		}
		catch (err3) {
			try {  request = new XMLHttpRequest();	}
			catch (err1) { request = false;	}
		}
	}
	return request;
}

var http = getHTTPObject();

function _remote(serveur, esclave) {
	if (!isWorking && http) {
		http.open("GET", serveur, true);
		http.onreadystatechange = esclave;
		isWorking = true;
		http.send(null);
	}
}

// checkUserEmail
function checkUserEmail() {
	ch = document.formulaire.courriel.value;

	if (ch.length>5)
		_remote("/include/remote.php?fonc=checkUserEmail&abr=" + escape(ch), _checkUserEmail);
}
function _checkUserEmail() {
	if (http.readyState == 4) {
		if (http.responseText.indexOf('existe') == -1) {
			document.formulaire.submit();
		}
		else {
			alert('Ce courriel est déjà inscrit dans la base de données.');
		}

		isWorking = false;
	}
}

function resultatRecherche(obj) {
	Obj = obj;
	post = faire_POST(obj);
	
	_remote("include/remote.php?fonc=resultatRecherche" + post, _resultatRecherche);
}
function _resultatRecherche() {
	if (http.readyState == 4) {
		if (http.responseText != '') {
			document.getElementById('contenu_txt').innerHTML = http.responseText;
		}
		else document.getElementById('contenu_txt').innerHTML = '';

		isWorking = false;
	}
}

function remote_compte(fonction) {
	http = '';
	if (typeof XMLHttpRequest != 'undefined') { http = new XMLHttpRequest(); }
	try { http = new ActiveXObject("Msxml2.XMLHTTP"); }
	catch (e) { try { http = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} }
	
	http.open("GET", 'compte_' + fonction + '.php', true);
	http.onreadystatechange = function() {
		if (http.readyState == 4) {
			document.getElementById('compte_contenu').innerHTML = http.responseText;
		}
	}
	http.send(null);
}

///////////////////////////////////////////////
// Fonctions et classes
function remplacer(source,varIN,varOUT) {
	retour = '';
	for (i=0; i < source.length; i++) {
		s = source.substr(i,1);
		if (s == varIN) retour += varOUT;
		else retour += s;
	}
	
	return retour;
}

function number_format(valeur) {
	result = Math.round(valeur*100)/100;
	if ( Math.floor(result) == result ) return result + '.00';
	else if ( Math.floor(result*10) == result*10 ) return result + '0';
	else return result;
}

function faire_POST(obj) {
	post = '';
	for (i=0; i < obj.elements.length; i++) {
		if (obj.elements[i].name && obj.elements[i].name != '') {
			if (obj.elements[i].getAttribute('type') == 'radio' || obj.elements[i].getAttribute('type') == 'checkbox') {
				if (obj.elements[i].checked == true) post += '&' + obj.elements[i].name + '=' + escape(obj.elements[i].value);
			}
			else
				post += '&' + obj.elements[i].name + '=' + escape(obj.elements[i].value);
		}
	}
	
	return post;
}

