function getHTTPObject()
{
	var xmlhttp = false;
	
	// On essaye de rÃ©cupÃ©rer l'objet XMLHTTPRequest selon le navigateur (IE, Firefox...)
	try
	{
		// Internet Explorer
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch (e)
	{
		try
		{
			// Autres navigateurs
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		}
		catch (E)
		{
			// Sinon l'objet XMLHTTPRequest n'existe pas
			xmlhttp = false;
		}
	}
	
	// Si l'objet XMLHTTPRequest existe, on en crÃ©e une instance
	if (!xmlhttp && typeof XMLHttpRequest != 'undefined')
	{
		try
		{
			xmlhttp = new XMLHttpRequest();
		}
		
		catch (e)
		{
			xmlhttp = false;
		}
	}
		
	return xmlhttp;
}


function change(changed,f,type,listemod)
{
	if (changed == 1) // Mise à jour des modèles des constructeurs
	{
		var xhr_Modele = getHTTPObject();
		majListe('listModele', xhr_Modele, 'majModele.php', 1,f,type,listemod);
	}
	if (changed == 2) // Mise à jour des modèles des moteurs
	{
		var xhr_Modele = getHTTPObject();
		majListe2('listModeleMoteur', xhr_Modele, 'majMoteur.php', 1,f);
	}				
}

function changecat(changed,f,type,listemod,cat)
{
	if (changed == 1) // Mise à jour des modèles des constructeurs
	{
		var xhr_Modele = getHTTPObject();
		majListecat('listModele', xhr_Modele, 'majModele.php', 1,f,type,listemod,cat);
	}
			
}

function changetot(changed,f)
{
	if (changed == 1) // Mise à jour des modèles des constructeurs
	{
		var xhr_Modele = getHTTPObject();
		majListetot('listModele', xhr_Modele, 'majModeletot.php', 1,f);
	}
		
}

function majListetot(liste, xhr_maj, fichier, changed,f)
{
	url = 'modules/' + fichier + 
	'?idmarque='+ escape(f.listMarque.value) + 
	'&liste=' 	+ escape(liste);
		
	xhr_maj.onreadystatechange = function()
	{
		if (xhr_maj.readyState == 1 || xhr_maj.readyState == 2)
		{
			f.elements[liste].options.length = 0;
			f.elements[liste].options[f.elements[liste].options.length] = new Option('Chargement ...', '0');
		}
		if (xhr_maj.readyState == 4)
		{
			eval(xhr_maj.responseText);
		}
	}
	xhr_maj.open("GET",	url, true);
	xhr_maj.send(null);
}

function majListe(liste, xhr_maj, fichier, changed,f,type,listemod)
{
	url = 'modules/' + fichier + 
	'?idmarque='+ escape(f.listMarque.value) + 
	'&type='+ escape(type) +
	'&liste=' 	+ escape(listemod);

	xhr_maj.onreadystatechange = function()
	{
		if (xhr_maj.readyState == 1 || xhr_maj.readyState == 2)
		{
			f.elements[listemod].options.length = 0;
			f.elements[listemod].options[f.elements[listemod].options.length] = new Option('Chargement ...', '0');
		}
		if (xhr_maj.readyState == 4)
		{
			eval(xhr_maj.responseText);
		}
	}
	xhr_maj.open("GET",	url, true);
	xhr_maj.send(null);
}

function majListecat(liste, xhr_maj, fichier, changed,f,type,listemod,cat)
{
	url = 'modules/' + fichier + 
	'?idmarque='+ escape(f.listMarque.value) + 
	'&type='+ escape(type) +
	'&cat='+ escape(cat) +
	'&liste=' 	+ escape(listemod);

	xhr_maj.onreadystatechange = function()
	{
		if (xhr_maj.readyState == 1 || xhr_maj.readyState == 2)
		{
			f.elements[listemod].options.length = 0;
			f.elements[listemod].options[f.elements[listemod].options.length] = new Option('Chargement ...', '0');
		}
		if (xhr_maj.readyState == 4)
		{
			eval(xhr_maj.responseText);
		}
	}
	xhr_maj.open("GET",	url, true);
	xhr_maj.send(null);
}

function majListe2(liste, xhr_maj, fichier, changed,f)
{
	url = 'modules/' + fichier + 
	'?idmarquemot='+ escape(f.listPorteur.value) + 
	'&liste=' 	+ escape(liste);
	xhr_maj.onreadystatechange = function()
	{
		if (xhr_maj.readyState == 1 || xhr_maj.readyState == 2)
		{
			f.elements[liste].options.length = 0;
			f.elements[liste].options[f.elements[liste].options.length] = new Option('Chargement ...', '0');
		}
		if (xhr_maj.readyState == 4)
		{
			eval(xhr_maj.responseText);
		}
	}
	xhr_maj.open("GET",	url, true);
	xhr_maj.send(null);
}

