var selectedModel = "";  	
var selectedTrim = "";

function selectMake(makeSelect, modelSelect, trimSelect)
{
	new Ajax.Request('/ajax/getModels.php',   
	{     
		method:'get', 
		parameters: {make: $(makeSelect).serialize(true), showModelGroups: false},  
		onSuccess: function(transport){       
			var response = transport.responseText; 
			if (response == null) alert('Could not load model list, if error persists please contact us...');
			else
			{
				$(modelSelect).options.length = 1;
				var models = response.evalJSON();  
   				populateModelSelect(modelSelect, models);  
   				selectModel(makeSelect, modelSelect, trimSelect); 
			} 
   		},     
    	onFailure: function(){ 
    		alert('Could not load model list, if error persists please contact us...');
    	}   
    });
}
    	
function populateModelSelect(modelSelect, models)
{
	var modelSelect = $(modelSelect);    
    //modelSelect.options.length = 1;
	    
    // add an 'all models' option with a blank value
		    
    var optionNum = 1;
    //var option = new Option("");
    //modelSelect.options[0] = option;
		    
    // add models received from ajax 
		    
    for (var i = 0, length = models.length; i < length; ++i) 
    {
    	var option = new Option(models[i]);
        modelSelect.options[optionNum] = option;
        optionNum++;
	}
}
    	
function selectModel(makeSelect, modelSelect, trimSelect)
{
	var makeSelect = $(makeSelect);
	var modelSelect = $(modelSelect);
	
    if (selectedModel)
    {
        for (i=0; i < modelSelect.options.length; i++)
        {
            if (modelSelect.options[i].text == selectedModel)
                modelSelect.options[i].selected = true;
            else
                modelSelect.options[i].selected = false;
        }
    }
    
    new Ajax.Request('/ajax/getTrims.php',   
	{     
		method:'get', 
		parameters: {make: $(makeSelect).serialize(true), model: $(modelSelect).serialize(true)},  
		onSuccess: function(transport){       
			var response = transport.responseText; 
			if (response == null) alert('Could not load trim list, if error persists please contact us...');
			else
			{
				$(trimSelect).options.length = 1;
				var trims = response.evalJSON();  
   				populateTrimSelect(trimSelect, trims);  
   				selectTrim(trimSelect, selectedTrim); 
			} 
   		},     
    	onFailure: function(){ 
    		alert('Could not load model list, if error persists please contact us...');
    	}   
    });
 
    selectedModel = "";
}

//////////////////////////////////////////////////////////////////////

    	
function populateTrimSelect(trimSelect, trims)
{
	var trimSelect = $(trimSelect);    
    //trimSelect.options.length = 1;
	    
    // add an 'all trims' option with a blank value
		    
    var optionNum = 1;
    //var option = new Option("");
    //trimSelect.options[0] = option;
		    
    // add trims received from ajax 
		    
    for (var i = 0, length = trims.length; i < length; ++i) 
    {
    	var option = new Option(trims[i]);
        trimSelect.options[optionNum] = option;
        optionNum++;
	}
}
    	
function selectTrim(trimSelect)
{
	var trimSelect = $(trimSelect);
	
    if (selectedTrim)
    {
        for (i=0; i < trimSelect.options.length; i++)
        {
            if (trimSelect.options[i].text == selectedTrim)
                trimSelect.options[i].selected = true;
            else
                trimSelect.options[i].selected = false;
        }
    }
 
    selectedTrim = "";
}
