function showLoading(field) {
	hide("sel" + field)
	show("load" + field)
}

function submit_year(id) {
	if (id != 2) id = '';
	if(timerid)
		clearInterval(timerid)
	var fYear = getRef("Year",id)
	var fMake = getRef("Make",id)
	if(fYear.options[fYear.selectedIndex].value == "")
		return false
	fMake.disabled = true
// Show loading message
	showLoading("Make"+id)
// Disable the other fields
	disableMake(id)
	disableModel(id)
	disableSubmodel(id)
// Load the url
	loadData("selectVehicle.do?year=" + escape(fYear.options[fYear.selectedIndex].value))
// Wait until done
	dataLoaded = false
	clear_submodel(id)
	timerid = setInterval('change_make(\''+id+'\')', 100)
}

function change_make(id) {
    if (id != 2) id = '';
	if(!dataLoaded)
		return		
	clearInterval(timerid)
	swapData("Make",'',id)
	show("selMake"+id)
}

function submit_make(id) {
    if (id != 2) id = '';
	if(timerid)
		clearInterval(timerid)
	var fYear = getRef("Year",id)
	var fMake = getRef("Make",id)
	var fModel = getRef("Model",id)
	if(fMake.options[fMake.selectedIndex].value == "")
		return false
	fModel.disabled = true
// Show loading message
	showLoading("Model"+id)
// Disable submodel
	disableModel(id)
	disableSubmodel(id)
// Load the url
	loadData("selectVehicle.do?year=" + escape(fYear.options[fYear.selectedIndex].value) + "&make=" + escape(fMake.options[fMake.selectedIndex].value))
// Wait until done
	dataLoaded = false
	clear_submodel(id)
	timerid = setInterval('change_model(\''+id+'\')', 100)
}

function change_model(id) {
    if (id != 2) id = '';
	if(!dataLoaded)
		return
	clearInterval(timerid)
	swapData("Model",'',id)
	show("selModel"+id)
}

function submit_model(id) {
    if (id != 2) id = '';
	if(timerid)
		clearInterval(timerid)
	var fYear = getRef("Year",id)
	var fMake = getRef("Make",id)
	var fModel = getRef("Model",id)
	var fSubmodel = getRef("Submodel",id)
	if(fModel.options[fModel.selectedIndex].value == "")
		return false
	fSubmodel.disabled = true
// Show loading message
	hide("noSubmodel"+id)
	showLoading("Submodel"+id)
	disableSubmodel(id)
// Load the url
	loadData("selectVehicle.do?year=" + escape(fYear.options[fYear.selectedIndex].value) + "&make=" + escape(fMake.options[fMake.selectedIndex].value) + "&model=" + escape(fModel.options[fModel.selectedIndex].value))
// Wait until done
	dataLoaded = false
	clear_submodel(id)
	timerid = setInterval('change_submodel(\''+id+'\')', 100)
}

function change_submodel(id) {
    if (id != 2) id = '';
	if(!dataLoaded)
		return
	else clearInterval(timerid)
	var len = swapData("Submodel",'',id)
	if(len == 1) {
		show("noSubmodel"+id)
		getRef("Submodel",id).selectedIndex = 1
		set_submodel(id)
	}
	else {
		show("selSubmodel"+id)
	}
}

function disableYear(id) {
	if (id != 2) id = '';
	var fYear = getRef("Year",id)
	fYear.selectedIndex = 0
}
	
function disableMake(id) {
	if (id != 2) id = '';
	var fMake = getRef("Make",id)
	fMake.selectedIndex = 0
	fMake.disabled = true
	hide("selMake"+id)
	hide("loadMake"+id)
}
	
function disableModel(id) {
	if (id != 2) id = '';
	var fModel = getRef("Model",id)
	fModel.selectedIndex = 0
	fModel.disabled = true
	hide("selModel"+id)
	hide("loadModel"+id)
}
	
function disableSubmodel(id) {
	if (id != 2) id = '';
	var fSubmodel = getRef("Submodel",id)
	fSubmodel.selectedIndex = 0
	fSubmodel.disabled = true
	hide("selSubmodel"+id)
	hide("loadSubmodel"+id)
	hide("noSubmodel"+id)
}
