function trim(str){
  return str.replace(/^\s*|\s*$/g,"");
}

function displayCountries(data){
  DWRUtil.removeAllOptions("user.country", data);
  if(userCountry != ""){
    DWRUtil.addOptions("user.country", new Array(userCountry));
  }
  else{
    DWRUtil.addOptions("user.country", new Array("United States"));
  }
  DWRUtil.addOptions("user.country", data);
  checkUSRequired();
}
    
function checkUSRequired(){
  var country = document.getElementById("user.country");
  if(country.options[country.selectedIndex].value == "United States"){
    showStars(true);
  }
  else{
    showStars(false);
  }
}
    
function showStars(show){
  if(show){
    document.getElementById("stateStar").style.visibility="visible";
    document.getElementById("zipStar").style.visibility="visible";
  }
  else{
    document.getElementById("stateStar").style.visibility="hidden";
    document.getElementById("zipStar").style.visibility="hidden";
  }
}
    
function validateUSFields(){
  var country = document.getElementById("user.country");
  DWRUtil.removeAllOptions("usFieldsError");
  if(country.options[country.selectedIndex].value == "United States"){
      hasError = false;
      state = trim(document.getElementById("user.stateCode").value);
      zipcode = trim(document.getElementById("user.zip").value);
      if(state == ""){
        hasError = true
        DWRUtil.addOptions("usFieldsError", new Array("State required."));
      }
      if(zipcode == ""){
        hasError = true
        DWRUtil.addOptions("usFieldsError", new Array("Zip code required."));
      }
      if(!hasError){
        document.forms[0].submit();
      }
  }
  else{
    document.forms[0].submit();
    }
}

function initializeCheckboxes(){
    var obj, obj2;
    var fields = new Array("companyNews", "industryNewsLetter", "literatureUpdates",
        "newProducts", "productEnhancements", "promotionalPrograms", "racingMotorsports",
        "services", "training");

    for(i = 0; i < fields.length; i++){
        obj = document.getElementById("user." + fields[i]);
        obj2 = document.getElementById("check." + fields[i]);
        if("Y" == obj.value){
            obj2.checked = true;
        }else{
            obj2.checked = false;
        }
    }
}

function modifyFlag(field){
    var obj1 = document.getElementById("user." + field);
    var obj2 = document.getElementById("check." + field);
    
    if(null == obj1 || null == obj2) return;
    
    if(obj2.checked){
        obj1.value = "Y";
    }else{
        obj1.value = "N";
    }
}