// permet de lancer l'initialisation
window.addEvent('domready', InitHome);

var makeControl = null;
var modelControl = null;
var modelLoader = null;
var engineControl = null;

/*******************************************************************************************************************************************************************************
 * 
 *******************************************************************************************************************************************************************************
 *
 *
 *******************************************************************************************************************************************************************************/
function InitHome()
{
	makeControl = $("makeList");
	modelControl = $("modelList");
	modelLoader = $("modelLoader");
	engineControl = $("engineList");

	makeControl.addEvent("change", GetCarModelList);
}
/*******************************************************************************************************************************************************************************
 * 
 *******************************************************************************************************************************************************************************
 *
 *
 *******************************************************************************************************************************************************************************/
function AjaxRequest(methodName, params)
{
	var myRequest = new Request({ method : "post", url : "/ajax/" + methodName + ".aspx", onSuccess : function(r) { eval(methodName + "CallBack(r)") } });
	myRequest.send(Hash.toQueryString(params));
}
/*******************************************************************************************************************************************************************
 *
 *
 *
 *******************************************************************************************************************************************************************/
function GetCarModelList()
{
	if (makeControl.value != "-1")
	{
		// declenchement du request
		// c = numero de categorie
		// m = marque de voiture
		AjaxRequest("GetCarModelList", { "c" : -1, "m" :  makeControl.value });

		// on affiche le loader
		modelLoader.toggleClass("visible");
	}
	else
	{
		modelControl.options.length = 1;
	}
}
/*******************************************************************************************************************************************************************
 *
 *
 *
 *******************************************************************************************************************************************************************/
function GetCarModelListCallBack(data)
{
	// on vide la liste de modeles existante
	modelControl.length = 1;

	// on remplit la liste avec les donnees reçues
	var modelList = JSON.decode(data);
	for (var i = 0; i < modelList.length; i++)
	{
		var modelName = modelList[i].value;

		new Element("option", { "value" : modelList[i].value }).set("html", modelName).inject(modelControl);
	}

	// on cache le loader
	modelLoader.toggleClass("visible");
}
/*******************************************************************************************************************************************************************
 *
 *
 *
 *******************************************************************************************************************************************************************/
function SendQuickSearch()
{
	var make = makeControl.value.toLowerCase();
	var model = modelControl.value.toLowerCase();
	var engine = engineControl.value.toLowerCase();

	var searchUrl = "/occasion";

	if (make != "-1")
	{
		searchUrl += "/" + escape(make);

		if (model != -1)
		{
			searchUrl += "/" + escape(model);
		}
	}
	if (engine != "-1")
	{
		searchUrl += "/f2/" + escape(engine);
	}

	RemoveSearchCookie();

	searchUrl = searchUrl.replace("%20", "+");

	document.location.href = searchUrl.toLowerCase();

	return false;
}
