	
        function populateSelect(populatorID, populateeID, dbKey, defaultValue) {
        
          if(populatorID == null || populateeID == null || dbKey == null || populatorID == "" || populateeID == "" || dbKey == "") {
            alert("populateSelect(): missing parameters");
            return;
          }
          
          var passedData = new Object();
          
          passedData[dbKey] = $("#" + populatorID).val();
	  var p = document.getElementById("sprod_key");
          if(p)
            passedData["prod_key"] = p.value;
        
          $.post("simple_ajax_calls.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)
                  selectObj.selectedIndex = 0;
                else {
                  var defValIdx = 0;
                  for(var x = 0; x < selectObj.options.length; x++) {
                    if(selectObj.options[x].value == defaultValue) {
                      defValIdx = x;
                    }
                  }
                  selectObj.selectedIndex = defValIdx;
                }
              }
            }
          );
        }

        
        function populateModels(setNumber, defVal) {
          $("#lr_car_year" + setNumber).html("<option value=\"\">Year</option>");
          $("#lr_car_year" + setNumber).attr("disabled", "disabled");          
          $("#lr_car_motor_key" + setNumber).html("<option value=\"\">Engine</option>");
          $("#lr_car_motor_key" + setNumber).attr("disabled", "disabled");
          populateSelect("lr_car_make_key" + setNumber, "lr_car_model_key" + setNumber, "car_make_key", defVal);
        }
        
        function populateYears(setNumber, defVal) {
          $("#lr_car_motor_key" + setNumber).html("<option value=\"\">Engine</option>");
          $("#lr_car_motor_key" + setNumber).attr("disabled", "disabled");
          populateSelect("lr_car_model_key" + setNumber, "lr_car_year" + setNumber, "car_model_key", defVal);          
        }

        function populateMotors(setNumber, defVal) {
          var hiddenObj = document.getElementById("lr_model_year" + setNumber);

          if(hiddenObj)
            hiddenObj.value = document.getElementById("lr_car_model_key" + setNumber).value + "::" + document.getElementById("lr_car_year" + setNumber).value;
          else {
            alert("Model and year not selected");
            return;
          }
  
          populateSelect("lr_model_year" + setNumber, "lr_car_motor_key" + setNumber, "model_year", defVal);          
        }

        function populateYearsCat(setNumber) {
          $("#car_year" + setNumber).html("<option value=\"\">Select Year</option>");
          $("#car_year" + setNumber).attr("disabled", "disabled");          
          $("#car_make_key" + setNumber).html("<option value=\"\">Select Make</option>");
          $("#car_make_key" + setNumber).attr("disabled", "disabled");
          $("#car_model_key" + setNumber).html("<option value=\"\">Select Model</option>");
          $("#car_model_key" + setNumber).attr("disabled", "disabled");
          $("#car_motor_key" + setNumber).html("<option value=\"\">Select Motor</option>");
          $("#car_motor_key" + setNumber).attr("disabled", "disabled");
          populateSelect("p_cat" + setNumber, "car_year" + setNumber, "vs_cat");          
        }

        function populateMakesCat(setNumber) {
          var hiddenObj = document.getElementById("cat_year" + setNumber);

          if(hiddenObj)
            hiddenObj.value = document.getElementById("p_cat" + setNumber).value + "::" + document.getElementById("car_year" + setNumber).value;
          else {
            alert("Category and year not selected");
            return;
          }

          $("#car_make_key" + setNumber).html("<option value=\"\">Select Make</option>");
          $("#car_make_key" + setNumber).attr("disabled", "disabled");
          $("#car_model_key" + setNumber).html("<option value=\"\">Select Model</option>");
          $("#car_model_key" + setNumber).attr("disabled", "disabled");
          $("#car_motor_key" + setNumber).html("<option value=\"\">Select Motor</option>");
          $("#car_motor_key" + setNumber).attr("disabled", "disabled");
          populateSelect("cat_year" + setNumber, "car_make_key" + setNumber, "cat_year");          
        }

        function populateMakesNoCat(setNumber) {
          var hiddenObj = document.getElementById("nc_year" + setNumber);

          if(hiddenObj)
            hiddenObj.value = document.getElementById("car_year" + setNumber).value;
          else {
            alert("Year not selected");
            return;
          }

          $("#car_make_key" + setNumber).html("<option value=\"\">Select Make</option>");
          $("#car_make_key" + setNumber).attr("disabled", "disabled");
          $("#car_model_key" + setNumber).html("<option value=\"\">Select Model</option>");
          $("#car_model_key" + setNumber).attr("disabled", "disabled");
          $("#car_motor_key" + setNumber).html("<option value=\"\">Select Motor</option>");
          $("#car_motor_key" + setNumber).attr("disabled", "disabled");
          populateSelect("nc_year" + setNumber, "car_make_key" + setNumber, "nc_year");          
        }

        function populateModelsCat(setNumber) {
          var hiddenObj = document.getElementById("cat_year_make" + setNumber);

          if(hiddenObj)
            hiddenObj.value = document.getElementById("p_cat" + setNumber).value + "::" + document.getElementById("car_year" + setNumber).value + "::" + 
				document.getElementById("car_make_key" + setNumber).value;
          else {
            alert("Category, year, make not selected");
            return;
          }

          $("#car_model_key" + setNumber).html("<option value=\"\">Select Model</option>");
          $("#car_model_key" + setNumber).attr("disabled", "disabled");
          $("#car_motor_key" + setNumber).html("<option value=\"\">Select Motor</option>");
          $("#car_motor_key" + setNumber).attr("disabled", "disabled");
          populateSelect("cat_year_make" + setNumber, "car_model_key" + setNumber, "cat_year_make");          
        }

        function populateModelsNoCat(setNumber) {
          var hiddenObj = document.getElementById("nc_year_make" + setNumber);

          if(hiddenObj)
            hiddenObj.value = document.getElementById("car_year" + setNumber).value + "::" + document.getElementById("car_make_key" + setNumber).value;
          else {
            alert("Year and make not selected");
            return;
          }

          $("#car_model_key" + setNumber).html("<option value=\"\">Select Model</option>");
          $("#car_model_key" + setNumber).attr("disabled", "disabled");
          $("#car_motor_key" + setNumber).html("<option value=\"\">Select Motor</option>");
          $("#car_motor_key" + setNumber).attr("disabled", "disabled");
          populateSelect("nc_year_make" + setNumber, "car_model_key" + setNumber, "nc_year_make");          
        }

        function populateMotorsCat(setNumber) {
          var hiddenObj = document.getElementById("cat_year_make_model" + setNumber);

          if(hiddenObj)
            hiddenObj.value = document.getElementById("p_cat" + setNumber).value + "::" + document.getElementById("car_year" + setNumber).value + "::" + 
				document.getElementById("car_make_key" + setNumber).value + "::" + document.getElementById("car_model_key" + setNumber).value;
          else {
            alert("Category, year, make not selected");
            return;
          }

          $("#car_motor_key" + setNumber).html("<option value=\"\">Select Motor</option>");
          $("#car_motor_key" + setNumber).attr("disabled", "disabled");
          populateSelect("cat_year_make_model" + setNumber, "car_motor_key" + setNumber, "cat_year_make_model");          
        }

        function populateMotorsNoCat(setNumber) {
          var hiddenObj = document.getElementById("nc_year_make_model" + setNumber);

          if(hiddenObj)
            hiddenObj.value = document.getElementById("car_year" + setNumber).value + "::" + document.getElementById("car_make_key" + setNumber).value + "::" + document.getElementById("car_model_key" + setNumber).value;
          else {
            alert("Year, make and model not selected");
            return;
          }

          $("#car_motor_key" + setNumber).html("<option value=\"\">Select Motor</option>");
          $("#car_motor_key" + setNumber).attr("disabled", "disabled");
          populateSelect("nc_year_make_model" + setNumber, "car_motor_key" + setNumber, "nc_year_make_model");          
        }
	//Function to pupulate years after models #START#::Brijendra
	function populateYearsByModels(setNumber){
		var hiddenObj = document.getElementById("get_years_by_models" + setNumber);
          if(hiddenObj)
            hiddenObj.value = document.getElementById("car_model_key" + setNumber).value;
          else {
            alert("Make, Model not selected");
            return;
          }

          $("#car_year" + setNumber).html("<option value=\"\">Select Year</option>");
          $("#car_year" + setNumber).attr("disabled", "disabled");
          populateSelect("get_years_by_models" + setNumber, "car_year" + setNumber, "get_years_by_models");   
		
	}
	
	//Function to pupulate years after models #END#::Brijendra