
        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("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 populateMotors(setNumber, defVal) {
  	  var data = new Object();
  	  var car_make = $("#car_make" + setNumber).val();
  	  var car_model = $("#car_model" + setNumber).val();
  	  if(car_make != null && car_make != "" && car_model != null && car_model != "") {
  	    data["ajax_car_make"] = car_make;
  	    data["ajax_car_model"] = car_model;
            populateSelect("car_motors" + 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);          
  	  }
        }
        
