﻿/* handles address validation for the differences between international and 
domestic addresses */
function ShowIntlStates(ddCountry, ddStates, txtStates) {
    var Country = ddCountry.options[ddCountry.selectedIndex].value;
    
    if (Country == "USA") {
        ddStates.style.display = '';
        txtStates.style.display = 'none';
    }
    else {
        ddStates.style.display = 'none';
        txtStates.style.display = '';
    }
}

//Regex for Domestic Phone number
//Accepts extension as x123 or ext or ext.123
function checkUSphone(phonenum) {
    var RegExPattern = /^(1\s*[-\/\.]?)?(\((\d{3})\)|(\d{3}))\s*[-\/\.]?\s*(\d{3})\s*[-\/\.]?\s*(\d{4})\s*(([xX]|[eE][xX][tT])\.?\s*(\d+))*$/;

    if ((phonenum.match(RegExPattern)) && (phonenum != '')) {
        return true;
    }
    else return false;
}

function CheckPhone(ddCountry, txtPhone) {
    var Country = ddCountry.options[ddCountry.selectedIndex].value;
    var phonenum = txtPhone.value;
    if (Country == "USA") {
        //is us
        if (checkUSphone(phonenum)) {
            return true;
        }
        else {
            return false;
        }
    }
    else {
        if (phonenum != "") {
            return true;
        }
        else {
            return false;
        }
    }
}

function CheckState(ddCountry, ddStates) {
    var Country = ddCountry.options[ddCountry.selectedIndex].value;
    var State = ddStates.options[ddStates.selectedIndex].value;

    if (Country == "USA") {
        if (State == "") {
            return false;
        }
        else {
            return true;
        }
    }
    else {
        return true;
    }
}

function CheckPostalCode(ddCountry, txtZip) {
    var Country = ddCountry.options[ddCountry.selectedIndex].value;
    var Zip = txtZip.value;
    if (Country == "USA") {
        if (Zip == "") {
            return false;
        }
        else {
            return true;
        }
    }
    else {
        return true;
    }
}