var selectedCountry = "";
function updateChanges(domain){
	  var countryChanged = false;
      var countrySelect = document.getElementById('country');
      if(countrySelect!=null){
    	  
    	  countryChanged = !(selectedCountry == countrySelect.options[countrySelect.selectedIndex].value);
    	  if(countryChanged)
    		  selectedCountry = countrySelect.options[countrySelect.selectedIndex].value;
    	  
           if(countrySelect.options[countrySelect.selectedIndex].value == "DE") {
            if(document.getElementById("zipCodeTD")){
              document.getElementById("zipCodeTD").style.display = "";
              if(countryChanged)
            	  document.getElementById("zipcode").value = "";
            }
            if(document.getElementById("radiusTD")){
              document.getElementById("radiusTD").style.display = "";
              if(countryChanged)
            	  document.getElementById("radius").selectedIndex = 0;
            }
            if(document.getElementById("colonyTD")){
              document.getElementById("colonyTD").style.display = "none";
              if(countryChanged)
            	  document.getElementById("colony").value = "";
            }
            if(document.getElementById("delegationTD")){
              document.getElementById("delegationTD").style.display = "none";
              if(countryChanged)
            	  document.getElementById("delegation").value = "";
            }
          }
          else if(countrySelect.options[countrySelect.selectedIndex].value == "MX") {
          	if(document.getElementById("colonyTD"))
              document.getElementById("colonyTD").style.display = "";
            if(document.getElementById("delegationTD"))
              document.getElementById("delegationTD").style.display = "";
            if(document.getElementById("zipCodeTD")){
              document.getElementById("zipCodeTD").style.display = "none";
              if(countryChanged)
            	  document.getElementById("zipcode").value = "";
            }
            if(document.getElementById("radiusTD")){
              document.getElementById("radiusTD").style.display = "none";
              if(countryChanged)
            	  document.getElementById("radius").selectedIndex = 0;
            }
          }
          else {
            if(document.getElementById("zipCodeTD")){
              document.getElementById("zipCodeTD").style.display = "none";
              document.getElementById("zipcode").value = "";
            }
            if(document.getElementById("radiusTD")) {
              document.getElementById("radiusTD").style.display = "none";
              document.getElementById("radius").selectedIndex = 0;
            }
            if(document.getElementById("colonyTD")){
              document.getElementById("colonyTD").style.display = "none";
              document.getElementById("colony").value = "";
            }
            if(document.getElementById("delegationTD")) {
              document.getElementById("delegationTD").style.display = "none";
              document.getElementById("delegation").value = "";
            }
          }
      }
      var params = $j("#SearchForm").serialize(); 
      if(!domain)
      	domain = "";
      
      cbaUpdateElements(['Result1', 'Result2', 'Result3'], domain+'/GetCountOfAutoRequest.html?'+params);
}

function updateCities() {
          new Ajax.Request('GetCities.html', {
          method: 'get',
          parameters: Form.serialize('SearchForm'),
          onSuccess: function(response) {
                  eval ('var responseResult =' + response.responseText);
                  var citiesSelect = document.getElementById('city');
                  var countrySelect = document.getElementById('country');
                  var cities = responseResult.cities;
                  citiesSelect.options.length = cities.length;
                  for (iter = 0; iter < cities.length ; iter++){
              citiesSelect.options[iter].value = cities[iter].value;
              citiesSelect.options[iter].text =  cities[iter].text;
          }
          citiesSelect.selectedIndex = 0;
          if(countrySelect.selectedIndex >0)
            citiesSelect.disabled = false;
          else
            citiesSelect.disabled = true;

          if(countrySelect.options[countrySelect.selectedIndex].value == "DE") {
            if(document.getElementById("zipCodeTD"))
              document.getElementById("zipCodeTD").style.visibility = "visible";
            if(document.getElementById("radiusTD"))
              document.getElementById("radiusTD").style.visibility = "visible";
          }
          else {
            if(document.getElementById("zipCodeTD")){
              document.getElementById("zipCodeTD").style.visibility = "hidden";
              document.getElementById("zipcode").value = "";
            }
            if(document.getElementById("radiusTD")) {
              document.getElementById("radiusTD").style.visibility = "hidden";
              document.getElementById("radius").selectedIndex = 0;
            }
          }

          },
          failure:function(o){
                alert('An un expected error occured.!');
          }
        });
}

function updateCountries(){
  var citiesSelect = document.getElementById('city');
  var countrySelect = document.getElementById('country');
  var continentSelect = document.getElementById('continent');
  var countries;

  if(continentSelect.selectedIndex >0)
    countries = eval("continentCountries."+ continentSelect.options[continentSelect.selectedIndex].value);
  else
    countries = eval("continentCountries.All");

  countrySelect.options.length = countries.length;
  for (iter = 0; iter < countries.length ; iter++){
      countrySelect.options[iter].value = countries[iter].value;
      countrySelect.options[iter].text =  countries[iter].text;
  }
  countrySelect.selectedIndex = 0;

 if(document.getElementById("zipCodeTD")) {
   document.getElementById("zipCodeTD").style.visibility = "hidden";
  document.getElementById("zipCodeTD").value = "";
 }
 if(document.getElementById("radiusTD")) {
   document.getElementById("radiusTD").style.visibility = "hidden";
  document.getElementById("radiusTD").selectedIndex = 0;
 }

 if(citiesSelect) {
   citiesSelect.selectedIndex = 0;
   citiesSelect.disabled = true;
 }
}

function getModels(selectedMake){
  var models;
  try { models = eval(selectedMake.replace(' ', '_').replace('-', '_').replace('+', '_').replace('&', '_').toLowerCase()); }
  catch (e) {}
  return models;
}

/**
 * fill models for make in model select menue
 */
function initModels(index, defaultModel) {
  try { doInitModels(index, defaultModel); }
  catch (e) {}
}

/**
 * fill models for make in model select menue
 */
function doInitModels(index, defaultModel) {
  var iter;
  var makeSelect  = document.forms[formName].elements[makeName+index];
  var modelSelect = document.forms[formName].elements[modelName+index];
  var models = getModels(makeSelect.value);

  if (typeof(models)!=undefined && typeof(models)=='string') {
    modelSelect.disabled = false;

    var modelList = models.split(';');

    var itemOthers = others;
    modelSelect.options.length = modelList.length;
    modelSelect.options[0].value = "";
    modelSelect.options[0].text  = choose;
    modelSelect.selectedIndex = 0;

    for (iter = 0; iter < modelList.length-1; iter++){
      modelSelect.options[iter+1].value = (modelList[iter]).split('|')[0];
      if (modelSelect.options[iter+1].value == 1) {
        modelSelect.options[iter+1].text  = itemOthers;
      } else {
    	  modelSelect.options[iter+1].innerHTML  = (modelList[iter]).split('|')[1].replace('ssppaassee','&nbsp;&nbsp;&nbsp;');
      }
      if (defaultModel == modelSelect.options[iter+1].value) {
        modelSelect.selectedIndex = iter+1;
      }
    }

    if(modelSelect.options.length == 2) {
      modelSelect.selectedIndex = 1;
    }
  }
  else {
    modelSelect.options.length = 1;
    modelSelect.options[0].value = "";
    modelSelect.options[0].text  = choose;
    modelSelect.selectedIndex = 0;

    modelSelect.disabled = true;
  }

  modelSelect.style.visibility = 'visible';
  modelSelect.style.width = '100%';
}

function uncheckBodyStyle() {
	elements = document.getElementsByName('const');
   	for (var i=0 ; i<6 ; i++)
   	{
   		elements[i].checked= false;
	}
}

function checkBodyStyleStatus() { //onload
	elements = document.getElementsByName('const');
	for (var i=0 ; i<6 ; i++){
		if(elements[i].checked == true){
			if(document.forms['SearchForm'].bodyStyleRadioSelect){
		   		document.forms['SearchForm'].bodyStyleRadioSelect.checked = true;
		   		document.forms['SearchForm'].bodyStyleRadioAll.checked = false;
		   		makeRadiobuttonActive('bodyStyleInput2', 'bodyStyleInput1');
		   		break;
	   		}
   		}
   		else {
   			setBodyStyleRadioAll();
   		}	   		
	}
	
	var allCheckboxes = document.getElementsByTagName('input');
	for (var i=0; i < allCheckboxes.length; i++) {
		
		if (allCheckboxes[i].className == 'bodyStyleSelector') {
			allCheckboxes[i].onclick = function() {
				checkBodyStyleStatus();
				updateChanges(document.getElementById('domain').value);
			}
		} 
	}
	
}

function setBodyStyleRadioAll() {
   	if (document.forms['SearchForm'].bodyStyleRadioAll) {
    	document.forms['SearchForm'].bodyStyleRadioAll.checked = true;
   		makeRadiobuttonActive('bodyStyleInput1', 'bodyStyleInput2');  	
   	}

}

function makeRadiobuttonActive (id1, id2){
	if (document.getElementById) {
		if (document.getElementById(id1)){
			document.getElementById(id1).style.fontWeight = "bold";
			document.getElementById(id2).style.fontWeight = "normal";
		}
	}
}

function IELabel (){
	if(document.all && navigator.appVersion.indexOf("MSIE")>-1 && navigator.appVersion.indexOf("Windows")>-1){
	    var a = document.getElementsByTagName("label");
	    for(var i=0,j=a.length;i<j;i++){
	      if(a[i].hasChildNodes && a[i].childNodes.item(0).tagName == "IMG"){
	    	  a[i].onclick = function(){
	    		  var e = document.getElementById(this.htmlFor);
	    		  switch (e.type) {
	    		   case "radio": e.click(); break;
	    		   case "checkbox": e.click(); break;
	    		   case "text": case "password": case "textarea": e.focus(); break;
	    		}
	        }
	      }
	    }
	}
}