
function WZ_fillChild(theArray,thisField, selectedParentIndex, selectedChildValue, bValues, bHasChildren) {
if (selectedParentIndex == 0) return; 
if (bValues) jump=bHasChildren?3:2; else jump=bHasChildren?2:1;
    WZ_showField(theArray[(bValues?3:2)*selectedParentIndex-1], jump, thisField,selectedChildValue, bValues);
}

function WZ_fillParent(theArray,thisField, selectedValue, bValues) {
    WZ_showField(theArray, bValues?3:2, thisField, selectedValue, bValues);
}

function WZ_showField(Obj, jump, thisField, selectedValue, bValues) {
var bSelect, sValue;
var iOption = 1;
if (thisField.tagName != 'SELECT')
return;
thisField.options.length = 1;
for (var iArray = 0; iArray < Obj.length-1;iArray+=jump) {
if (selectedValue && (Obj[iArray] == selectedValue)) bSelect=true; else bSelect=false;
if (bValues)
sValue= Obj[iArray+1];
else
sValue= Obj[iArray];
thisField.options[iOption] = new Option(sValue, Obj[iArray], false, bSelect);
iOption++;
}
thisField.disabled = false;
}

function WZ_storefield(SelectField,HiddenField) {
HiddenField.value = SelectField.options[SelectField.selectedIndex].value;
}

function init_makemodel(currentForm) {
if (window.Option) {
with (currentForm) {
if (MakeID.tagName != 'SELECT')
WZ_fillChild(MakeModelList, ModelID, 1, xModelID.value, true, false);
else {
WZ_fillParent(MakeModelList, MakeID, xMakeID.value, true); 
if (xMakeID.value > 0) {
WZ_fillChild(MakeModelList, ModelID, MakeID.selectedIndex, xModelID.value, true, false);
}
}
}
}
}

function submit_makemodel(currentForm, showAlert) {
with (currentForm) {
if (MakeID.selectedIndex==0 && showAlert) {
alert('You are searching for a used car. Please make at least one selection in the used car table.');
return false;
} else {
if (MakeID.tagName == 'SELECT') WZ_storefield(MakeID, xMakeID);
WZ_storefield(ModelID, xModelID);
s_fsform(currentForm);
return true;
}
}
}

function s_fsform(formObj)
{
  var mk,md
  
  if (!formObj.make)
  {
  	mk=document.createElement("input")
	mk.type="hidden"
	mk.name="make"
	formObj.appendChild(mk)
  }
  else
  	mk=formObj.make

  if (!formObj.model)
  {
  	md=document.createElement("input")
	md.type="hidden"
	md.name="model"
	formObj.appendChild(md)
  }
  else
  	md=formObj.model

	if (formObj.MakeID && formObj.MakeID.selectedIndex)
		mk.value=formObj.MakeID.options[formObj.MakeID.selectedIndex].text
	if (formObj.ModelID && formObj.ModelID.selectedIndex)
		md.value=formObj.ModelID.options[formObj.ModelID.selectedIndex].text
}

function init_makemodel_new(currentForm, MakeModelList) {
if (window.Option) {
with (currentForm) {
WZ_fillParent(MakeModelList, make, xMake.value, false);
if (xMake.value != "")
WZ_fillChild(MakeModelList, model, make.selectedIndex, xModel.value, false, false);
}
}
}

function submit_makemodel_new(currentForm,showAlert) {
with (currentForm) {
if (make.selectedIndex==0) {
if (showAlert)
alert('You are searching for a new car. Please make at least one selection in the new car table.');
return false;
} else {
WZ_storefield(make, xMake);
WZ_storefield(model, xModel);
return true;
}
}
return false;
}

