function populateSelect(populateeID, passedData, defaultValue) {
	if(populateeID == null || passedData == null || populateeID == "") {
		alert("populateSelect(): missing parameters");
		return;
	}
	tObj = document.getElementById(populateeID);
	if(tObj != null) {
		tObj.options.length = 0;
		tObj.options[0] = new Option("Loading...", "");
	}

	
	//$.post("/onlinetires/new_vehicle_ajax.php", passedData, 
	$.post("/new_vehicle_ajax.php", passedData, 
		function (data) {
			// Assuming data is returned as: (key1#)value1;;(key2#)value2;;...
			// Keys are optional in the returned data
			//alert(data);
			var selectOptions = "";
			var kvPairs = data.split(";;");
			var selectObj = null;
			selectObj = document.getElementById(populateeID);
			selectObj.options.length = 0;
			for(var i = 0; i < kvPairs.length; i++) {
				var key = "";
				var val = "";
				if(kvPairs[i].match("#") != null) {
					var items = kvPairs[i].split("#");
					key = items[0];
					val = items[1];
				} else {
					val = kvPairs[i];
					key = val;
				}
				//alert(key + " " + val);
				selectObj.options[selectObj.options.length] = new Option(key, val);
			}
	
			$("#" + populateeID).attr("disabled", "");
		
			if(selectObj != null) {
				if(defaultValue != null) {
					var defValIdx = 0;
						for(var x = 0; x < selectObj.options.length; x++) {
							if(selectObj.options[x].value == defaultValue) {
								defValIdx = x;
							}
						}
						selectObj.selectedIndex = defValIdx;
					}
			}
		}
	);
}


function populateMakes(setNumber, defVal) {
	var data = new Object();
	$("$car_model" + setNumber).val("");
	$("#car_year" + setNumber).val("");
	$("#brand_key" + setNumber).val("");
	$("#diameter" + setNumber).val("");
	$("#car_model" + setNumber).attr("disabled", "disabled");          
	$("#car_year" + setNumber).attr("disabled", "disabled");          
	$("#brand_key" + setNumber).attr("disabled", "disabled");          
	// $("#diameter" + setNumber).attr("disabled", "disabled");          
	if($("#product_type" + setNumber).val()) {
		data["ajax_product_type"] = $("#product_type" + setNumber).val();
		data["ajax_make_by_product_type"] = 1;
	} else {
		if($("#veh-pk").val()) {
			data["ajax_pk"] = $("#veh-pk").val();
			data["ajax_make_by_product_type"] = 1;
		}
	}
	populateSelect("car_make" + setNumber, data, defVal);
}


       
function populateModels(setNumber, defVal) {
	var data = new Object();
	$("#car_year" + setNumber).val("");
	$("#brand_key" + setNumber).val("");
	$("#diameter" + setNumber).val("");
	$("#car_year" + setNumber).attr("disabled", "disabled");          
	$("#brand_key" + setNumber).attr("disabled", "disabled");          
	// $("#diameter" + setNumber).attr("disabled", "disabled");          
	if($("car_make" + setNumber).val() != "") {
		if($("#product_type" + setNumber).val()) {
			data["ajax_product_type"] = $("#product_type" + setNumber).val();
			data["ajax_model_by_product_type"] = 1;
		} else {
			if($("#veh-pk").val()) {
				data["ajax_pk"] = $("#veh-pk").val();
				data["ajax_model_by_product_type"] = 1;
			}
		}
		data["ajax_car_make"] = $("#car_make" + setNumber).val();
		populateSelect("car_model" + setNumber, data, defVal);
	}
}


function populateYears(setNumber, defVal) {
	var data = new Object();
	var car_make = $("#car_make" + setNumber).val();
	var car_model = $("#car_model" + setNumber).val();
	$("#brand_key" + setNumber).val("");
	$("#diameter" + setNumber).val("");
	$("#brand_key" + setNumber).attr("disabled", "disabled");          
	// $("#diameter" + setNumber).attr("disabled", "disabled");          
	if(car_make != null && car_make != "" && car_model != null && car_model != "") {
		if($("#product_type" + setNumber).val() != "") {
			data["ajax_product_type"] = $("#product_type" + setNumber).val();
			data["ajax_model_by_product_type"] = 1;
		} else {
			if($("#veh-pk").val()) {
				data["ajax_pk"] = $("#veh-pk").val();
				data["ajax_model_by_product_type"] = 1;
			}
		}
		data["ajax_car_make"] = car_make;
		data["ajax_car_model"] = car_model;
		populateSelect("car_year" + setNumber, data, defVal);          
	}
}

function populateWheelBrands(setNumber, defVal) {
	var data = new Object();
	var car_make = $("#car_make" + setNumber).val();
	var car_model = $("#car_model" + setNumber).val();
	var car_year = $("#car_year" + setNumber).val();
	$("#diameter" + setNumber).val("");
	$("#diameter" + setNumber).attr("disabled", "disabled");          
	if(car_make != null && car_make != "" && car_model != null && car_model != "" && car_year != null && car_year != "") {
		data["ajax_car_make"] = car_make;
		data["ajax_car_model"] = car_model;
		data["ajax_car_year"] = car_year;
		populateSelect("brand_key" + setNumber, data, defVal);          
	}
}


function populateWheelSizes(setNumber, defVal) {
	var data = new Object();
	var car_make = $("#car_make" + setNumber).val();
	var car_model = $("#car_model" + setNumber).val();
	var car_year = $("#car_year" + setNumber).val();
	var brand_key = $("#brand_key" + setNumber).val();
	if(car_make != null && car_make != "" && car_model != null && car_model != "" && car_year != null && car_year != "" && brand_key != null) {
		data["ajax_car_make"] = car_make;
		data["ajax_car_model"] = car_model;
		data["ajax_car_year"] = car_year;
		data["ajax_brand_key"] = brand_key
		populateSelect("diameter" + setNumber, data, defVal);          
	}
}
        
