function getComboboxValue(id){
    var dropdownIndex = document.getElementById(id).selectedIndex;
    return document.getElementById(id)[dropdownIndex].text;
}
function signupCheck(exist){
    var result = "";
    if((!exist)&&!document.getElementById('username').value ){
        result+="+ Username not filled.<br/>"
    }
    
    if((!exist)&&!document.getElementById('password').value ){
        result+="+ Password not filled.<br/>"
    }else if((!exist)&&!document.getElementById('retypePassword').value ){
        result+="+ Please re-type your password.<br/>"
    }else if(document.getElementById('password').value != document.getElementById('retypePassword').value ){
        result+="+ Password do not match.<br/>"
    }
    
    if(!document.getElementById('emailAddress').value ){
        result+="+ Please enter your email address.<br/>"
    }
    if(!document.getElementById('fullname').value ){
        result+="+ Please enter your full name.<br/>"
    }
    if(!document.getElementById('company').value ){
        result+="+ Please enter your company.<br/>"
    }
    if(!exist){
        if(!getComboboxValue('birthdayMonth')){
            result+="+ Please enter your birth month.<br/>"
        }else if(!getComboboxValue('birthdayDay')){
            result+="+ Please enter your birth day.<br/>"
        }else if(!getComboboxValue('birthdayYear')){
            result+="+ Please enter your birth year.<br/>"
        }else if(getComboboxValue('birthdayYear')> 1990){
            result+="+ You must be at least 18 years old to sign up.<br/>"
        }
    }
    if(!document.getElementById('address').value ){
        result+="+ Please enter your address.<br/>"
    }
    if(!document.getElementById('city').value ){
        result+="+ Please enter your city.<br/>"
    }
    if(!getComboboxValue('country')){
        result+="+ Please enter your country.<br/>"
    }
    if(!document.getElementById('postalCode').value ){
        result+="+ Please enter your postal code.<br/>"
    }
    if(!document.getElementById('telephone').value ){
        result+="+ Please enter your telephone number.<br/>"
    }

    if((!exist)&&document.getElementById('termOfService').checked == false){
        result+="+ You must read and agree with our Terms of Use.<br/>"
    } 
    return result;
}
function contructRegistration(exist){
    var result ="";
    if(!exist){
        result+="username="+document.getElementById('username').value;
    }
    result+="&password="+document.getElementById('password').value;
    result+="&emailAddress="+document.getElementById('emailAddress').value;
    result+="&fullname="+document.getElementById('fullname').value;
    result+="&company="+document.getElementById('company').value;
    if(!exist){
        result+="&birthday="+getComboboxValue('birthdayMonth')+" "+getComboboxValue('birthdayDay')+", "+getComboboxValue('birthdayYear');
    }
    result+="&address="+document.getElementById('address').value;
    result+="&city="+document.getElementById('city').value;
    result+="&state="+document.getElementById('state').value;
    result+="&country="+getComboboxValue('country');
    result+="&postalCode="+document.getElementById('postalCode').value;
    result+="&telephoneNumber="+document.getElementById('telephone').value;
    result+="&fax="+document.getElementById('fax').value;
    return result;                
}
function submitRegistration(exist){
    xmlHttp=GetXmlHttpObject();
    if (xmlHttp==null)
    {
        alert ("Your browser does not support AJAX!");
        return;
    } 
    xmlHttp.onreadystatechange=stateChanged;
    xmlHttp.open("GET","registration?exist="+exist+"&"+contructRegistration(exist),true);
    xmlHttp.send(null);
}
function editAcct(){
    var result = signupCheck(true);
    if(result==""){
        submitRegistration(true);
    }else{
        document.getElementById('signupErrorPane').innerHTML=result;
    }
}
function register(){
    var result = signupCheck(false);
    if(result==""){
        submitRegistration(false);
    }else{
        document.getElementById('signupErrorPane').innerHTML=result;
    }
}
