// Developed by Spherion Technology Solutions Canberra

function CriteriaCheckBox_onclick(checkBoxEventCaller, e) 
{
	var isReadOnly = (checkBoxEventCaller.readonly == true);
	
	// Select or de-select the checkboxes dependent on the users selection.
 	if (checkBoxEventCaller.id == "allVehiclesHtmlCheckBox")
	{
		if (checkBoxEventCaller.checked == true)
		{
			// All the other checkboxes must be unchecked.
			document.getElementById("twoSeaterCarHtmlCheckBox").checked = false;
			document.getElementById("smallCarHtmlCheckBox").checked = false;
			document.getElementById("mediumCarHtmlCheckBox").checked = false;
			document.getElementById("largeCarHtmlCheckBox").checked = false;
			document.getElementById("offroadVehicleHtmlCheckBox").checked = false;
			document.getElementById("vanHtmlCheckBox").checked = false;
			document.getElementById("uteLightTruckHtmlCheckBox").checked = false;
			document.getElementById("sixSeatsHtmlCheckBox").checked = false;
			// ensure allVehiclesCheckBoxHtmlInputHidden has same value
			document.getElementById("allVehiclesCheckBoxHtmlInputHidden").value = "true";
		}
		else
		{
			// At least one other must be checked.
			document.getElementById("mediumCarHtmlCheckBox").checked = true;
			// ensure allVehiclesCheckBoxHtmlInputHidden has corresponding value
			document.getElementById("allVehiclesCheckBoxHtmlInputHidden").value = "false";		
		}
	}
	else
	{
		if (document.getElementById("twoSeaterCarHtmlCheckBox").checked == false && 
			document.getElementById("smallCarHtmlCheckBox").checked == false &&
			document.getElementById("mediumCarHtmlCheckBox").checked == false &&
			document.getElementById("largeCarHtmlCheckBox").checked == false &&
			document.getElementById("offroadVehicleHtmlCheckBox").checked == false &&
			document.getElementById("vanHtmlCheckBox").checked == false &&
			document.getElementById("uteLightTruckHtmlCheckBox").checked == false &&
			document.getElementById("sixSeatsHtmlCheckBox").checked == false)
		{
			// The all vehicles checkbox must be checked.
			document.getElementById("allVehiclesHtmlCheckBox").checked = true;
			// ensure allVehiclesCheckBoxHtmlInputHidden has same value
			document.getElementById("allVehiclesCheckBoxHtmlInputHidden").value = "true";			
		}
		else
		{
			// The all vehicles checkbox must be unchecked.
			document.getElementById("allVehiclesHtmlCheckBox").checked = false;
			// ensure allVehiclesCheckBoxHtmlInputHidden has same value
			document.getElementById("allVehiclesCheckBoxHtmlInputHidden").value = "false";			
		}
	}
	
	// if user clicked on readonly checkbox, we need to enable general search too
	// as though the user had clicked on the general search radio button
	if (isReadOnly)
		SearchTypeRadioButton_DoClick(document.getElementById("searchTypeGeneralHtmlRadioButton"), e)
	else
	{
		//alert(e);
		// don't allow the click event to pass up to the TR parent element
		StopEventBubbling(e);
	}
}

function SearchTypeRadioButton_onclick(radioButtonEventCaller, e) 
{	
	// Enable/disable controls dependent on the user's selection 
	// (but now using readonly instead of enable/disable on checkboxes
	// or we don't get a click event fired and we need click event
	// to fire so the click get bubbled up to the TR click)
 	if (radioButtonEventCaller.id == "searchTypeDetailedHtmlRadioButton")
	{
	
		if (radioButtonEventCaller.checked == true)
		{
			// disable General Search controls
			// must use readonly property for checkboxes rather than disabled so we can always capture click event
			document.getElementById("allVehiclesHtmlCheckBox").readonly = true;
			document.getElementById("twoSeaterCarHtmlCheckBox").readonly = true;
			document.getElementById("twoSeaterCarHtmlCheckBox").className = "InputReadOnly";
			document.getElementById("smallCarHtmlCheckBox").readonly = true; 
			document.getElementById("mediumCarHtmlCheckBox").readonly = true;
			document.getElementById("largeCarHtmlCheckBox").readonly = true; 
			document.getElementById("sixSeatsHtmlCheckBox").readonly = true;
			document.getElementById("offroadVehicleHtmlCheckBox").readonly = true;
			document.getElementById("uteLightTruckHtmlCheckBox").readonly = true;
			document.getElementById("vanHtmlCheckBox").readonly = true;
			
			document.getElementById("searchImageButton").disabled = true;
			//document.getElementById("ddlResultSize").disabled = true;
			//document.getElementById("sortByHtmlSelect").disabled = true;
					
/*			document.getElementById("allVehiclesHtmlCheckBox").disabled = true;
			document.getElementById("twoSeaterCarHtmlCheckBox").disabled = true;
			document.getElementById("smallCarHtmlCheckBox").disabled = true; 
			document.getElementById("mediumCarHtmlCheckBox").disabled = true;
			document.getElementById("largeCarHtmlCheckBox").disabled = true; 
			document.getElementById("sixSeatsHtmlCheckBox").disabled = true;
			document.getElementById("offroadVehicleHtmlCheckBox").disabled = true;
			document.getElementById("uteLightTruckHtmlCheckBox").disabled = true;
			document.getElementById("vanHtmlCheckBox").disabled = true;
			document.getElementById("searchImageButton").disabled = true;
			document.getElementById("ddlResultSize").disabled = true;
			document.getElementById("sortByHtmlSelect").disabled = true; */
		
			// enable Detailed Search controls
			document.getElementById("ddlMake").disabled = false;
			document.getElementById("ddlModel").disabled = false;
			document.getElementById("ddlVariant").disabled = false;
			document.getElementById("ddlFuelType").disabled = false;
			document.getElementById("ddlTransmission").disabled = false;
			document.getElementById("ddl2wd4wd").disabled = false;
			document.getElementById("ddlBodyType").disabled = false;
			document.getElementById("ddlSeats").disabled = false;
			document.getElementById("detailedSearchImageButton").disabled = false;
			document.getElementById("compareImageButton").disabled = false;
			document.getElementById("addToCompareImageButton").disabled = false;
			//document.getElementById("ddlResultSize").disabled = false;
			//document.getElementById("sortByHtmlSelect").disabled = false;
	
		}
		else
		{
			// enable General Search controls
			// must use readonly property for checkboxes rather than disabled so we can always capture click event
			document.getElementById("allVehiclesHtmlCheckBox").readonly = false;
			document.getElementById("twoSeaterCarHtmlCheckBox").readonly = false;
			document.getElementById("twoSeaterCarHtmlCheckBox").className = "InputWrite";					
			document.getElementById("smallCarHtmlCheckBox").readonly = false; 
			document.getElementById("mediumCarHtmlCheckBox").readonly = false;
			document.getElementById("largeCarHtmlCheckBox").readonly = false; 
			document.getElementById("sixSeatsHtmlCheckBox").readonly = false;
			document.getElementById("offroadVehicleHtmlCheckBox").readonly = false;
			document.getElementById("uteLightTruckHtmlCheckBox").readonly = false;
			document.getElementById("vanHtmlCheckBox").readonly = false; 
			
			document.getElementById("searchImageButton").disabled = false;
			//document.getElementById("ddlResultSize").disabled = false;
			//document.getElementById("sortByHtmlSelect").disabled = false;

	/*		document.getElementById("allVehiclesHtmlCheckBox").disabled = false;
			document.getElementById("twoSeaterCarHtmlCheckBox").disabled = false;						
			document.getElementById("smallCarHtmlCheckBox").disabled = false; 
			document.getElementById("mediumCarHtmlCheckBox").disabled = false;
			document.getElementById("largeCarHtmlCheckBox").disabled = false; 
			document.getElementById("sixSeatsHtmlCheckBox").disabled = false;
			document.getElementById("offroadVehicleHtmlCheckBox").disabled = false;
			document.getElementById("uteLightTruckHtmlCheckBox").disabled = false;
			document.getElementById("vanHtmlCheckBox").disabled = false; 
			document.getElementById("searchImageButton").disabled = false;
			document.getElementById("ddlResultSize").disabled = false;
			document.getElementById("sortByHtmlSelect").disabled = false; */

			// disable Detailed Search controls
			document.getElementById("ddlMake").disabled = true;
			document.getElementById("ddlModel").disabled = true;
			document.getElementById("ddlVariant").disabled = true;
			document.getElementById("ddlFuelType").disabled = true;
			document.getElementById("ddlTransmission").disabled = true;
			document.getElementById("ddl2wd4wd").disabled = true;
			document.getElementById("ddlBodyType").disabled = true;
			document.getElementById("ddlSeats").disabled = true;
			document.getElementById("detailedSearchImageButton").disabled = true;
			document.getElementById("compareImageButton").disabled = true;
			document.getElementById("addToCompareImageButton").disabled = true;
			//document.getElementById("ddlResultSize").disabled = true;
			//document.getElementById("sortByHtmlSelect1").disabled = true;
		}
	}
	else
		{
		if (radioButtonEventCaller.checked == true)
		{
			// enable General Search controls
			// must use readonly property for checkboxes rather than disabled so we can always capture click event
			document.getElementById("allVehiclesHtmlCheckBox").readonly = false;
			document.getElementById("twoSeaterCarHtmlCheckBox").readonly = false;
			document.getElementById("twoSeaterCarHtmlCheckBox").className = "InputWrite";					
			document.getElementById("smallCarHtmlCheckBox").readonly = false; 
			document.getElementById("mediumCarHtmlCheckBox").readonly = false;
			document.getElementById("largeCarHtmlCheckBox").readonly = false; 
			document.getElementById("sixSeatsHtmlCheckBox").readonly = false;
			document.getElementById("offroadVehicleHtmlCheckBox").readonly = false;
			document.getElementById("uteLightTruckHtmlCheckBox").readonly = false;
			document.getElementById("vanHtmlCheckBox").readonly = false; 
			
			document.getElementById("searchImageButton").disabled = false;
			//document.getElementById("ddlResultSize").disabled = false;
			//document.getElementById("sortByHtmlSelect").disabled = false;

	/*		document.getElementById("allVehiclesHtmlCheckBox").disabled = false;
			document.getElementById("twoSeaterCarHtmlCheckBox").disabled = false;						
			document.getElementById("smallCarHtmlCheckBox").disabled = false; 
			document.getElementById("mediumCarHtmlCheckBox").disabled = false;
			document.getElementById("largeCarHtmlCheckBox").disabled = false; 
			document.getElementById("sixSeatsHtmlCheckBox").disabled = false;
			document.getElementById("offroadVehicleHtmlCheckBox").disabled = false;
			document.getElementById("uteLightTruckHtmlCheckBox").disabled = false;
			document.getElementById("vanHtmlCheckBox").disabled = false; 
			document.getElementById("searchImageButton").disabled = false;
			document.getElementById("ddlResultSize").disabled = false;
			document.getElementById("sortByHtmlSelect").disabled = false; */

			// disable Detailed Search controls
			document.getElementById("ddlMake").disabled = true;
			document.getElementById("ddlModel").disabled = true;
			document.getElementById("ddlVariant").disabled = true;
			document.getElementById("ddlFuelType").disabled = true;
			document.getElementById("ddlTransmission").disabled = true;
			document.getElementById("ddl2wd4wd").disabled = true;
			document.getElementById("ddlBodyType").disabled = true;
			document.getElementById("ddlSeats").disabled = true;
			document.getElementById("detailedSearchImageButton").disabled = true;
			document.getElementById("compareImageButton").disabled = true;
			document.getElementById("addToCompareImageButton").disabled = true;
			//document.getElementById("ddlResultSize").disabled = true;
			//document.getElementById("sortByHtmlSelect").disabled = true;
			
		}
		else
		{
			// disable General Search controls
			// must use readonly property for checkboxes rather than disabled so we can always capture click event
			document.getElementById("allVehiclesHtmlCheckBox").readonly = true;
			document.getElementById("twoSeaterCarHtmlCheckBox").readonly = true;
			document.getElementById("twoSeaterCarHtmlCheckBox").className = "InputReadOnly";
			document.getElementById("smallCarHtmlCheckBox").readonly = true; 
			document.getElementById("mediumCarHtmlCheckBox").readonly = true;
			document.getElementById("largeCarHtmlCheckBox").readonly = true; 
			document.getElementById("sixSeatsHtmlCheckBox").readonly = true;
			document.getElementById("offroadVehicleHtmlCheckBox").readonly = true;
			document.getElementById("uteLightTruckHtmlCheckBox").readonly = true;
			document.getElementById("vanHtmlCheckBox").readonly = true;
			
			document.getElementById("searchImageButton").disabled = true;
			//document.getElementById("ddlResultSize").disabled = true;
			//document.getElementById("sortByHtmlSelect").disabled = true;
						
/*			document.getElementById("allVehiclesHtmlCheckBox").disabled = true;
			document.getElementById("twoSeaterCarHtmlCheckBox").disabled = true;
			document.getElementById("smallCarHtmlCheckBox").disabled = true; 
			document.getElementById("mediumCarHtmlCheckBox").disabled = true;
			document.getElementById("largeCarHtmlCheckBox").disabled = true; 
			document.getElementById("sixSeatsHtmlCheckBox").disabled = true;
			document.getElementById("offroadVehicleHtmlCheckBox").disabled = true;
			document.getElementById("uteLightTruckHtmlCheckBox").disabled = true;
			document.getElementById("vanHtmlCheckBox").disabled = true;
			document.getElementById("searchImageButton").disabled = true;
			document.getElementById("ddlResultSize").disabled = true;
			document.getElementById("sortByHtmlSelect").disabled = true; */

			
			// enable Detailed Search controls
			document.getElementById("ddlMake").disabled = false;
			document.getElementById("ddlModel").disabled = false;
			document.getElementById("ddlVariant").disabled = false;
			document.getElementById("ddlFuelType").disabled = false;
			document.getElementById("ddlTransmission").disabled = false;
			document.getElementById("ddl2wd4wd").disabled = false;
			document.getElementById("ddlBodyType").disabled = false;
			document.getElementById("ddlSeats").disabled = false;
			document.getElementById("detailedSearchImageButton").disabled = false;
			document.getElementById("compareImageButton").disabled = false;
			document.getElementById("addToCompareImageButton").disabled = false;
			//document.getElementById("ddlResultSize").disabled = false;
			//document.getElementById("sortByHtmlSelect").disabled = false;
		}
	}
	
	// don't allow the click event to pass up to the TR parent element
	StopEventBubbling(e);
}

function SearchTypeRadioButton_DoClick(caller, e) 
{
	var radioButtonEventCaller, otherRadioButton;
			
	// User has clicked somewhere in the table cell. Set screen as if user had clicked directly on radio button.
 	if (caller.id == "searchTypeDetailedTd")
	{	
		radioButtonEventCaller = document.getElementById("searchTypeDetailedHtmlRadioButton");
		otherRadioButton = document.getElementById("searchTypeGeneralHtmlRadioButton");
	}
	else
	{	
		radioButtonEventCaller = document.getElementById("searchTypeGeneralHtmlRadioButton");
		otherRadioButton = document.getElementById("searchTypeDetailedHtmlRadioButton");	
	}
	
	radioButtonEventCaller.checked = true;
	otherRadioButton.checked = false;
	SearchTypeRadioButton_onclick(radioButtonEventCaller, e);
}

function SearchType_Initialise()
{
	// test the "default" search type first
	var searchTypeSelected = document.getElementById("searchTypeDetailedHtmlRadioButton");
	
	if (searchTypeSelected.checked == false)
		searchTypeSelected = document.getElementById("searchTypeGeneralHtmlRadioButton");
		
	// call the code to enable/disable Search Type controls
	SearchTypeRadioButton_onclick(searchTypeSelected);
}

function SearchCurrentModelsRadioButton_onclick(radioButtonEventCaller, e) 
{
	// Enable/disable controls dependent on the user's selection.
}

function SearchCurrentModels_Initialise()
{
	// this is necessary because user may have used browser back button
	//var searchCurrentArchiveSelected = document.getElementById("searchCurrentModelsHtmlRadioButton");
	
	//if (searchCurrentArchiveSelected.checked == false)
	//	searchCurrentArchiveSelected = document.getElementById("searchNonCurrentModelsHtmlRadioButton");
		
	// call the code to enable/disable Current/Archive search controls
	//SearchCurrentModelsRadioButton_onclick(searchCurrentArchiveSelected);
}

function StopEventBubbling(e)
{
	var e = window.event;
	e.cancelBubble = true;
	if (e.stopPropagation)
		e.stopPropagation();
}


function ToggleAnnualCost(checkBox)
{
	var kmPerYear = document.getElementById("txtKmPerYear");
	var centsPerLitre = document.getElementById("txtFuelCentsPerLitre");
	if(kmPerYear != null && centsPerLitre != null)
	{
		if(checkBox.checked == true)
		{
			kmPerYear.disabled = false;
			centsPerLitre.disabled = false;
		}
		else
		{
			kmPerYear.disabled = true;
			centsPerLitre.disabled = true;
		}
	}
}


function ShowYearRatingAlert(year)
{
	alert("WARNING - Vehicles from this model year were rated under an earlier rating system that is not comparable with ratings for current models or model years from " + year);
}
