

/*
the purpose of this function is to read the selected make(s) from
one select box, and use it to populate the options of a second select
box with the appropriate models
*/

var ajx_get_models = null;
var vehicle_model_select = null;
var num_makes = 0;
var num_global_options = 0;
var return_models = new Array;

function set_iPod_vehicle_models_by_make_RESULT()
{

	if(ajax_is_complete(ajx_get_models))
	{
/*
		for this simple response, no xml needed, just use character separated values
		"make_id:model_id:make_name:model_name|make_id:model_id:make_name:model_name|make_id:model_id:make_name:model_name"
*/
		var result = ajx_get_models.responseText;
		var result_array = new Array;
		var name_array = new Array;
		var model_array = new Array;
		var o_row = 0;
		var o_text = 0;
		
		result_array = result.split("|");

		for(i = 0; i < num_vmodel_rows; i++)
		{	
			o_text = document.getElementById('iPod_vmodel_text' + i)
			o_row = document.getElementById('iPod_vmodel_row' + i)

			if(i < result_array.length)
			{
				model_array = result_array[i].split(":");
				result_array[i] = model_array[1];
				name_array[i] = model_array[3];
			
				if(o_text) o_text.childNodes[0].nodeValue = model_array[3];
				if(o_row) o_row.style.display = "";
			}
			else
			{
				if(o_row) o_row.style.display = "none";
			}
		}		

		ipod_model_id = result_array;
		ipod_model_name = name_array;
		iPod_SetMake(model_array[0], model_array[2]);
		iPod_ShowBox('vmodel');
		iPod_HideBox('vmake');
		
		ajx_get_models = null;
		if(is_query_in_progress) is_query_in_progress = 0;
	}
}

// select_make should be the actual select object for vehicle makes
// select_model_id should be the id string for the model select box
function set_iPod_vehicle_models_by_make(make_id)
{

	if(!make_id) return;

	var get_str = "make=" + make_id + '_';

	var url = "/ajax_vehicle_select_get_models.php?" + get_str;
	// so the url should end up looking like: "...odels.php?make=#_#_#_#_#_"
	// each make id being separated by an underscore (with an additional trailing understore)
	// this can be exploded into an array with php and the last empty value can be ignored
	
	ajx_get_models = ajax_request(url, set_iPod_vehicle_models_by_make_RESULT)

}




function get_vehicle_models_by_make_RESULT()
{

	if(ajax_is_complete(ajx_get_models))
	{
/*
		for this simple response, no xml needed, just use character separated values
		"make_id:model_id:make_name:model_name|make_id:model_id:make_name:model_name|make_id:model_id:make_name:model_name"
*/
		var result = ajx_get_models.responseText;
		var result_array = new Array;
		result_array = result.split("|");

		var model_array = new Array;
		for(i = 0; i < result_array.length; i++)
		{	
		
			model_array = result_array[i].split(":");
			result_array[i] = new Array;
			result_array[i] = model_array
		}

		return_models = result_array;
		ajx_get_models = null;
	}
}

// select_make should be the actual select object for vehicle makes
// select_model_id should be the id string for the model select box
function get_vehicle_models_by_make(make_id)
{

	if(!make_id) return;

	var get_str = "make=" + make_id + '_';

	var url = "/ajax_vehicle_select_get_models.php?" + get_str;
	// so the url should end up looking like: "...odels.php?make=#_#_#_#_#_"
	// each make id being separated by an underscore (with an additional trailing understore)
	// this can be exploded into an array with php and the last empty value can be ignored
	
	ajx_get_models = ajax_request(url, get_vehicle_models_by_make_RESULT)
	alert('test: ' + return_models[0][3]);
	return return_models;

}



function build_vehicle_model_selection_by_make_RESULT()
{
	if(ajax_is_complete(ajx_get_models))
	{
/*
		for this simple response, no xml needed, just use character separated values
		"make_id:model_id:make_name:model_name|make_id:model_id:make_name:model_name|make_id:model_id:make_name:model_name"
*/
		var result = ajx_get_models.responseText;
		var result_array = new Array;
		result_array = result.split("|");
//		alert(result);

		if(vehicle_model_select.options)
		{
			for(i = vehicle_model_select.options.length - 1; i >= num_global_options; i--)
			{
				vehicle_model_select.remove(i);
			}
			
			var new_option = null;
			var model_array;
			for(i = 0; i < result_array.length; i++)
			{	
				model_array = new Array;
				model_array = result_array[i].split(":");
				new_option = document.createElement("OPTION");
				new_option.value = model_array[1];
				if(num_makes > 1)
				{
					new_option.text = "[" + model_array[2] + "] " + model_array[3];
				}
				else
				{
					new_option.text = model_array[3];
				}
				
				if(browser_is_IE()) {
					vehicle_model_select.add(new_option);				
				} else {
					vehicle_model_select.add(new_option, null);				
				}
			}
		}
		
		ajx_get_models = null;
	}
}

// select_make should be the actual select object for vehicle makes
// select_model_id should be the id string for the model select box
function build_vehicle_model_selection_by_make(select_make, select_model_id, globeopts)
{

	if(!select_make) return;
	vehicle_model_select = document.getElementById(select_model_id);
	if(!vehicle_model_select) return;
	var get_str = "make=";

	num_makes = 0;
	num_global_options = globeopts;
	for(i = 0; i < select_make.options.length; i++)
	{
		if(select_make.options[i].selected)
		{
			num_makes += 1;
			get_str = get_str + select_make.options[i].value + "_";
		}
	
	}
	
	var url = "/ajax_vehicle_select_get_models.php?" + get_str;
	// so the url should end up looking like: "...odels.php?make=#_#_#_#_#_"
	// each make id being separated by an underscore (with an additional trailing understore)
	// this can be exploded into an array with php and the last empty value can be ignored
	
	ajx_get_models = ajax_request(url, build_vehicle_model_selection_by_make_RESULT)

}

