function selectLocale() {
	//get locale
    var localeElm = document.getElementById("locale");
    var locale = localeElm.options[localeElm.selectedIndex].value;

    //do request
    var request = getRequest();
    //if( request )
    //{
    //  alert( request );
    //}
    //else
    //{ alert( 'request is null' ); }

    request.open("get", "ACCS_Sample_Selector_Data.php?data=locale&locale=" + locale, false);
    request.send(null);

    //alert( 'selectLocale:  request: [' + request.responseText + ']' );

    var modeString = "Fleet~~Fleet;;Retail~~Retail" ;
    fillSelect(document.getElementById("mode"), modeString);

    //disable year, division and model
    clearSelect(document.getElementById("year"));
    clearSelect(document.getElementById("division"));
    clearSelect(document.getElementById("model"));
	clearSelect(document.getElementById("trim"));
}
// ---------------------------------------
function selectMode() {
	//get mode
    var modeElm = document.getElementById("mode");
    var mode = modeElm.options[modeElm.selectedIndex].value;

    //do request
    var request = getRequest();
    request.open("get", "ACCS_Sample_Selector_Data.php?data=orderAvailability&orderAvailability=" + mode, false);
    request.send(null);

    //clear dropdowns
    clearSelect(document.getElementById("division"));
    clearSelect(document.getElementById("model"));
	clearSelect(document.getElementById("trim"));

    loadYears();
}
// --------------------------------------------------------
function loadYears() {
	//do request
  //alert( 'loadYears' );

    var request = getRequest();
    request.open("get", "ACCS_Sample_Selector_Data.php?data=years", false);
    request.send(null);

    //if( request )
    //{
    //  alert( '[' + request.responseText + ']' );
    //}
    //else
    //{ alert( 'request is null' ); }
    //populate year dropdown and disable division and model
	
    fillSelect(document.getElementById("year"), request.responseText);
    clearSelect(document.getElementById("division"));
    clearSelect(document.getElementById("model"));
	clearSelect(document.getElementById("trim"));

}
//----------------------------------------------------------------------------
function loadYearsSelected( selected ) {
	//do request
  //alert( 'loadYears' );

    var request = getRequest();
    request.open("get", "ACCS_Sample_Selector_Data.php?data=years", false);
    request.send(null);
    //if( request )
    //{
    //  alert( '[' + request.responseText + ']' );
    //}
    //else
    //{ alert( 'request is null' ); }
    //populate year dropdown and disable division and model
    fillSelected(document.getElementById("year"), request.responseText, selected);
    clearSelect(document.getElementById("division"));
    clearSelect(document.getElementById("model"));
	clearSelect(document.getElementById("trim"));

}
// --------------------------------------------------------------------------------
function selectYear(modelYear) {
	//do request
    var request = getRequest();
    request.open("get", "ACCS_Sample_Selector_Data.php?data=divisions&modelYear=" + modelYear, false);
    request.send(null);

    //populate division dropdown and clear model dropdown
    fillSelect(document.getElementById("division"), request.responseText);
    clearSelect(document.getElementById("model"));
	clearSelect(document.getElementById("trim"));

}
//---------------------------------------------------------------------------------
function selectYearSelected(modelYear, selected) {
	//do request
    var request = getRequest();
    request.open("get", "ACCS_Sample_Selector_Data.php?data=divisions&modelYear=" + modelYear, false);
    request.send(null);

    //populate division dropdown and clear model dropdown
    fillSelected(document.getElementById("division"), request.responseText, selected);
    clearSelect(document.getElementById("model"));
	clearSelect(document.getElementById("trim"));

}
// -------------------------------------------------------------------------------------------
function selectDivision(divisionId) {
	//get year
    var modelYear = document.getElementById("year").value;

    //do request
    var request = getRequest();
    request.open("get", "ACCS_Sample_Selector_Data.php?data=models&modelYear=" + modelYear + "&divisionId=" + divisionId, false);
    request.send(null);

    //sort models
    var models = request.responseText.split(";;");
    var modelsArray = [];
    for (var i = 0; i < models.length; i++) {
   		modelsArray[i] = models[i];
	}
	modelsArray.sort();

    //populate model dropdown
    fillModelsSelect(document.getElementById("model"), modelsArray);
	clearSelect(document.getElementById("trim"));

}
//-------------------------------------------------------------------
function selectDivisionSelected(divisionId, selected) {
	//get year
    var modelYear = document.getElementById("year").value;

    //do request
    var request = getRequest();
    request.open("get", "ACCS_Sample_Selector_Data.php?data=models&modelYear=" + modelYear + "&divisionId=" + divisionId, false);
    request.send(null);

    //sort models
    var models = request.responseText.split(";;");
    var modelsArray = [];
    for (var i = 0; i < models.length; i++) {
   		modelsArray[i] = models[i];
	}
	modelsArray.sort();

    //populate model dropdown
    fillModelsSelected(document.getElementById("model"), modelsArray, selected);
		clearSelect(document.getElementById("trim"));

}

// ------------------------------------------------------------------------
function getStylesCombo() {
	//alert('combo call');
   
	//get year, divisionId, and divisionName, and model
	var modelYear = document.getElementById("year").value;
	var divisionId = document.getElementById("division").value;
	var divisionSelectElement = document.getElementById("division");
	var divisionName = divisionSelectElement.options[divisionSelectElement.selectedIndex].text;

	var modelSelectElement = document.getElementById("model");
	var modelName = modelSelectElement.options[modelSelectElement.selectedIndex].text;
	var modelId = modelSelectElement.options[modelSelectElement.selectedIndex].value;

	//do request
	var request = getRequest();
	 
	request.open("get", "ACCS_Sample_Selector_Data.php?data=styles&modelYear=" + modelYear + "&divisionId=" + divisionId + "&divisionName=" + divisionName + "&modelId=" + modelId + "&modelName=" + modelName, false);
  	request.send(null);

	//populate style table
  	fillStyleCombo(request.responseText);

  	//show style table
  	var div = document.getElementById("styleDiv");
	div.style.visibility = "visible";
}
// ---------------------Fill Style COmbo ------------------------------------
function fillStyleCombo(responseText) {
	
	
 	//var table = document.getElementById( "styleTable" );
    var manufactID;
 	//delete previous styles
 	//clearTable( table );
    
 	//populate table with new styles
 	var allStyles = responseText.split(";;");
	var trimsArray = [];
	var trimsCompleteArray = [];
	
	for (var i = 0; i < allStyles.length; i++) {
		var eachStyle = allStyles[i];
		var styleParams = eachStyle.split("~~");
		var year = styleParams[0];
		var division = styleParams[1];
		var model = styleParams[2];
		var styleName = styleParams[3];
		var invoice = styleParams[4];
		var msrp = styleParams[5];
		var imgURL = styleParams[6];
		var manufactID = styleParams[7];
		trimsArray[i] =styleParams[3];
		trimsCompleteArray[i] =eachStyle;
				
	}
    //populate trims dropdown
    fillTrimsSelect(document.getElementById("trim"), trimsArray, trimsCompleteArray );
	
}
// -------------------------------- Fill in Combo for Trims ---------------------------------------
function fillTrimsSelect(selectElm, trimssArray,trimsCompleteArray, selected) {
	
    var nameElem = document.getElementById( selectElm.name + '_name' );
    selectElm.options.length = 0;
    selectElm.options[0] = new Option("", "0", true, true);
    for (var i = 0; i < trimsCompleteArray.length; i++) {
        var style = trimsCompleteArray[i].split("~~");
		selectElm.options[selectElm.options.length] = new Option(style[3],trimsCompleteArray[i], false, false);
	 if( selectElm.options[ i+1 ].value == selected )
        {
          selectElm.options[ i+1 ].selected = true;
          if( nameElem )
            nameElem.value = selectElm.options[ i+1 ].text;
        }
    }
    selectElm.disabled = false;
	
	//-------------------------
	/*
	 var nameElem = document.getElementById( selectElm.name + '_name' );
    selectElm.options.length = 0;
    selectElm.options[0] = new Option("", "0", true, true);
    for (var i = 0; i < modelsArray.length; i++) {
        var style = modelsArray[i].split("~~");
       	selectElm.options[selectElm.options.length] = new Option(style[0], style[1], false, false);
        if( selectElm.options[ i+1 ].value == selected )
        {
          selectElm.options[ i+1 ].selected = true;
          if( nameElem )
            nameElem.value = selectElm.options[ i+1 ].text;
        }
    }
    selectElm.disabled = false;
	*/
	// --------------------------------
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
}
// -->

//-----------------------Fill table for styles ------------------------
function getStyles() {
   
	//get year, divisionId, and divisionName, and model
	var modelYear = document.getElementById("year").value;

	var divisionId = document.getElementById("division").value;
	var divisionSelectElement = document.getElementById("division");
	var divisionName = divisionSelectElement.options[divisionSelectElement.selectedIndex].text;

	var modelSelectElement = document.getElementById("model");
	var modelName = modelSelectElement.options[modelSelectElement.selectedIndex].text;
	var modelId = modelSelectElement.options[modelSelectElement.selectedIndex].value;

	//do request
	var request = getRequest();
	 
	request.open("get", "ACCS_Sample_Selector_Data.php?data=styles&modelYear=" + modelYear + "&divisionId=" + divisionId + "&divisionName=" + divisionName + "&modelId=" + modelId + "&modelName=" + modelName, false);
  	request.send(null);

	//populate style table
  	fillStyleTable(document.getElementById("styleTable"), request.responseText);

  	//show style table
  	var div = document.getElementById("styleDiv");
	div.style.visibility = "visible";
}
//---------------------------------------------------------------------------------------
function fillStyleTable(styleTable, responseText) {
	//alert(responseText);
	
 	var table = document.getElementById( "styleTable" );
    var manufactID;
 	//delete previous styles
 	clearTable( table );
    
 	//populate table with new styles
 	var allStyles = responseText.split(";;");
	for (var i = 0; i < allStyles.length; i++) {
		var eachStyle = allStyles[i];
		var styleParams = eachStyle.split("~~");
		var year = styleParams[0];
		var division = styleParams[1];
		var model = styleParams[2];
		var styleName = styleParams[3];
		var invoice = styleParams[4];
		var msrp = styleParams[5];
		var imgURL = styleParams[6];
		var manufactID = styleParams[7];

		var row = table.insertRow(-1);
		var td = row.insertCell(-1);
		td.setAttribute("width","10%");
		td.setAttribute("align","center");
		
		td.innerHTML = "<input type='button' value='Add to List' onClick='addToScratchList(this.name)' name='" + eachStyle + "'></>";

		var td2 = row.insertCell(-1);
		td2.setAttribute("width","70%");
		td2.setAttribute("align","center");
		td2.innerHTML = year + " | " + division + " | " + model + " | " + styleName;

		var td3 = row.insertCell(-1);
		td3.setAttribute("width","10%");
		td3.setAttribute("align","center");
		td3.innerHTML = '[' + invoice + ']';

		var td4 = row.insertCell(-1);
		td4.setAttribute("width","10%");
		td4.setAttribute("align","center");
		td4.innerHTML = '[' + msrp + ']';
	}
	
}

//-------------------------------------------------------------
function addToScratchList(styleName ) {
	//alert(styleName);
   //break down style parameters
  // sample styleName
  // 2009~~Honda~~Pilot~~FWD 4dr LX~~$0.0~~$36820.0~~305879
  
 	var styleParams = styleName.split("~~");
	var year = styleParams[0];
	var division = styleParams[1];
	var model = styleParams[2];
	var trim = styleParams[3];
	var styleId = styleParams[6];
	var optionCodes = styleParams[7];
	
if(styleName!='0' && trim!='' ){
    var request = getRequest();
    request.open("get", "ACCS_ScratchList.php?cmd=add&styleId=" + styleId, false);
    request.send(null);
  
    var result = request.responseText.split("~~")[0];
    var resultValue = request.responseText.split("~~")[1];

    if( result == "success" ){

        var scratchListId = resultValue;
        //add style to scratchlist table
        var table = document.getElementById( "scratchListTable" );
        var row = table.insertRow(-1);
        var td = row.insertCell(-1);
        td.setAttribute("width","5%");
        td.setAttribute("align","center");
        td.innerHTML = "<input type='checkbox' onClick='updateScratchListButtons()' name='scratchListCheckboxes' value='" + scratchListId + "'></>";
        var td2 = row.insertCell(-1);
        td2.innerHTML = year + " " + division + " " + model + " " + trim;

        //show scratchlist table
        var div = document.getElementById("scratchListDiv");
        div.style.visibility = "visible";

        updateScratchListButtons();
    } else {
	    alert( "Error during add to scratchlist. " +  resultValue );
	}
  }
}
// --------------------------------------------------------------------------------
function updateScratchListButtons() {
	var numChecked = 0;

	var checkBoxes = document.getElementsByName("scratchListCheckboxes");
	for (var i = 0; i < checkBoxes.length; i++) {
	  if ( checkBoxes[i].checked )
	      ++numChecked;

      if ( numChecked == 2 )
      	break;
	}

	if( numChecked == 0 ) {
		document.getElementById("configureButton").disabled = true;
		document.getElementById("compareSBSButton").disabled = true;
		document.getElementById("compareABCButton").disabled = true;
		document.getElementById("removeButton").disabled = true;
		document.getElementById("removeAllButton").disabled = false;
	}
	else if( numChecked == 1 ) {
		document.getElementById("configureButton").disabled = false;
		document.getElementById("compareSBSButton").disabled = true;
		document.getElementById("compareABCButton").disabled = true;
		document.getElementById("removeButton").disabled = false;
		document.getElementById("removeAllButton").disabled = false;
	}
	else {
		document.getElementById("configureButton").disabled = true;
		document.getElementById("compareSBSButton").disabled = false;
		document.getElementById("compareABCButton").disabled = false;
		document.getElementById("removeButton").disabled = false;
		document.getElementById("removeAllButton").disabled = false;
	}
}
// -----------------------------------------------------------------------------------------------------------
function removeScratchListRow() {

    var checkBoxes = document.getElementsByName("scratchListCheckboxes");
	var table = document.getElementById("scratchListTable");
	var rows = table.rows;
    var request = getRequest();

    for( var i = rows.length - 1; i >= 0; --i )	{
		if( checkBoxes[i].checked ){
            request.open("get", "ACCS_ScratchList.php?cmd=remove&scratchListId=" + checkBoxes[i].value, false);
            request.send(null);
            var result = request.responseText;
            if( result ==  "success" ){
                table.deleteRow( i );
            }
        }
	}

	//hide table if no more rows
	table = document.getElementById("scratchListTable");
	rows = table.rows;
	var div = document.getElementById("scratchListDiv");
	if ( rows.length < 1 ) {
		div.style.visibility = "hidden";
	}
	else {
		div.style.visibility = "visible";
		updateScratchListButtons();
	}
}
// -------------------------------------------------------------------------------------------
function removeScratchListAll() {

    var request = getRequest();
    request.open("get", "ACCS_ScratchList.php?cmd=clear", false);
    request.send(null);
    var result = request.responseText;
    if( result ==  "success" ){
        var table = document.getElementById("scratchListTable");
        clearTable( table );
        //hide table
        var div = document.getElementById("scratchListDiv");
        div.style.visibility = "hidden";
    }
}
// --------------------------------------------------------------------------------------------
function clearTable(tableElm) {
	var rows = tableElm.rows;
	for( var i = rows.length - 1; i >= 0; --i )
  		tableElm.deleteRow( i );
}
//---------------------------------------------------------------------------
function clearSelect(selectElm) {
    if (selectElm.options != null) {
        selectElm.options.length = 0;
    }
    selectElm.disabled = true;
}
// ---------------------------------------------------------------------------
function fillSelect(selectElm, responseText) {
    selectElm.options.length = 0;
    selectElm.options[0] = new Option("", "0", true, true);
    var response = responseText.split(";;");
    for (var i = 0; i < response.length; i++) {
        var style = response[i].split("~~");
       	selectElm.options[selectElm.options.length] = new Option(style[1], style[0], false, false);
    }
    selectElm.disabled = false;
}
// ----------------------------------------------------------------------
function fillSelected(selectElm, responseText, selected) {

  fillSelect( selectElm, responseText );

  {
    var selLen = selectElm.options.length;

    var nameElem = document.getElementById( selectElm.name + '_name' );

    for( var i=0; i < selLen; i++ )
    {
      //alert( selectElm.options[ i ].value + ' ' + selected );
      if( selectElm.options[ i ].value == selected )
      {
      //alert( 'SELECTED:  ' + selectElm.options[ i ].value + ' ' + selected );
        selectElm.options[ i ].selected = true;
        if( nameElem )
        {
          nameElem.value = selectElm.options[i].text;

        }
      }
    }
  }
} 
//--------------------------------------------------------------------------------------
function fillModelsSelect(selectElm, modelsArray) {
    selectElm.options.length = 0;
    selectElm.options[0] = new Option("", "0", true, true);
    for (var i = 0; i < modelsArray.length; i++) {
        var style = modelsArray[i].split("~~");
       	selectElm.options[selectElm.options.length] = new Option(style[0], style[1], false, false);
    }
    selectElm.disabled = false;
}
// -------------------------------- Fill in Combo for Models ---------------------------------------
function fillModelsSelected(selectElm, modelsArray, selected) {
    var nameElem = document.getElementById( selectElm.name + '_name' );
    selectElm.options.length = 0;
    selectElm.options[0] = new Option("", "0", true, true);
    for (var i = 0; i < modelsArray.length; i++) {
        var style = modelsArray[i].split("~~");
       	selectElm.options[selectElm.options.length] = new Option(style[0], style[1], false, false);
        if( selectElm.options[ i+1 ].value == selected )
        {
          selectElm.options[ i+1 ].selected = true;
          if( nameElem )
            nameElem.value = selectElm.options[ i+1 ].text;
        }
    }
    selectElm.disabled = false;
}

//-------------------------------- For Trim not to Clear it's value ----------------------------------------------

function getStylesComboSelected(){
	//alert('found');
	var selectedTrim = document.getElementById("trima_name").value;
	
	//get year, divisionId, and divisionName, and model
	
	var modelYear = document.getElementById("year").value;
	var divisionId = document.getElementById("division").value;
	var divisionSelectElement = document.getElementById("division");
	var divisionName = divisionSelectElement.options[divisionSelectElement.selectedIndex].text;

	var modelSelectElement = document.getElementById("model");
	var modelName = modelSelectElement.options[modelSelectElement.selectedIndex].text;
	var modelId = modelSelectElement.options[modelSelectElement.selectedIndex].value;

	//do request
	var request = getRequest();
	 
	request.open("get", "ACCS_Sample_Selector_Data.php?data=styles&modelYear=" + modelYear + "&divisionId=" + divisionId + "&divisionName=" + divisionName + "&modelId=" + modelId + "&modelName=" + modelName, false);
  	request.send(null);

	//populate style table
  	fillStyleComboSelected(request.responseText,selectedTrim);

  	//show style table
  	var div = document.getElementById("styleDiv");
	div.style.visibility = "visible";
}

// ---------------------Fill Style COmbo ------------------------------------
function fillStyleComboSelected(responseText,selectedTrim) {
 	//var table = document.getElementById( "styleTable" );
    var manufactID;
 	//delete previous styles
 	//clearTable( table );
    
 	//populate table with new styles
 	var allStyles = responseText.split(";;");
	var trimsArray = [];
	var trimsCompleteArray = [];
	
	for (var i = 0; i < allStyles.length; i++) {
		var eachStyle = allStyles[i];
		var styleParams = eachStyle.split("~~");
		var year = styleParams[0];
		var division = styleParams[1];
		var model = styleParams[2];
		var styleName = styleParams[3];
		var invoice = styleParams[4];
		var msrp = styleParams[5];
		var imgURL = styleParams[6];
		var manufactID = styleParams[7];
		trimsArray[i] =styleParams[3];
		trimsCompleteArray[i] =eachStyle;
				
	}
    //populate trims dropdown
    fillTrimsSelected(document.getElementById("trim"), trimsArray, trimsCompleteArray,selectedTrim );
	
}
//       --------------
// -------------------------------- Fill in Combo for Trims ---------------------------------------
function fillTrimsSelected(selectElm, trimssArray,trimsCompleteArray, selected) {
	var nameElem = document.getElementById( selectElm.name + '_name' );
    selectElm.options.length = 0;
    selectElm.options[0] = new Option("", "0", true, true);
    for (var i = 0; i < trimsCompleteArray.length; i++) {
        var style = trimsCompleteArray[i].split("~~");
		selectElm.options[selectElm.options.length] = new Option(style[3],trimsCompleteArray[i], false, false);
	//	alert(selectElm.options[ i+1 ].value);
	 if( selectElm.options[ i+1 ].value == selected )
        {
          selectElm.options[ i+1 ].selected = true;
          if( nameElem )
            nameElem.value = selectElm.options[ i+1 ].text;
        }
    }
    selectElm.disabled = false;

}
// -->