        function validate(FirstName, LastName, Email, Phone, Comments) {
            if (document.getElementById(FirstName).value == "") {
                document.getElementById(FirstName).focus();
                alert("Please enter first name.");
                return false;
            }
            else if (document.getElementById(LastName).value == "") {
                document.getElementById(LastName).focus();
                alert("Please enter last name.");
                return false;
            }
            else if (document.getElementById(Email).value == "") {
                document.getElementById(Email).focus();
                alert("Please enter email address.");
                return false;
            }

            if (!checkEmail(document.getElementById(Email))) {
                document.getElementById(Email).focus();
                alert("Please enter valid email address.");
                return false;
            }
            else if (document.getElementById(Phone).value == "") {
                document.getElementById(Phone).focus();
                alert("Please enter phone number.");
                return false;
            }
            //    else if (!checkPhone(document.getElementById(Phone))) {
            //        document.getElementById(Phone).focus();
            //        alert("Please enter valid phone number.");
            //        return false;
            //    }
            else if (document.getElementById(Comments).value != "") {
                var substr = document.getElementById(Comments).value;
                if (substr.length > 255) {
                    document.getElementById(Comments).focus();
                    alert("Comments can not be more than 255 characters.");
                    return false;
                }
            }
        }
        function ValidateContract(FullName, Email, Inquary) {
            if (document.getElementById(FullName).value == "") {
                document.getElementById(FullName).focus();
                alert("Please enter full name.");
                return false;
            }
            else if (document.getElementById(Email).value == "") {
                document.getElementById(Email).focus();
                alert("Please enter email address.");
                return false;
            }
            if (!checkEmail(document.getElementById(Email))) {
                document.getElementById(Email).focus();
                alert("Please enter valid email address.");
                return false;
            }
            else if (document.getElementById(Inquary).value == 0) {
                document.getElementById(Inquary).focus();
                alert("Please select nature of inquiry.");
                return false;
            }
        }

        function ValidateStart(FullName, Email, Inquary, Phone) {
            if (document.getElementById(FullName).value == "") {
                document.getElementById(FullName).focus();
                alert("Please enter full name.");
                return false;
            }
            else if (document.getElementById(Email).value == "") {
                document.getElementById(Email).focus();
                alert("Please enter email address.");
                return false;
            }
            if (!checkEmail(document.getElementById(Email))) {
                document.getElementById(Email).focus();
                alert("Please enter valid email address.");
                return false;
            }
            else if (document.getElementById(Inquary).value == 0) {
                document.getElementById(Inquary).focus();
                alert("Please select nature of inquiry.");
                return false;
            }
            else if (document.getElementById(Phone).value == "") {
                document.getElementById(Phone).focus();
                alert("Please enter phone number.");
                return false;
            }
            //    else if (!checkPhone(document.getElementById(Phone))) {
            //        document.getElementById(Phone).focus();
            //        alert("Please enter valid phone number.");
            //        return false;
            //    }
        }


        function validateNetwork(FirstName, LastName, Address, City, State, ZipCode, Phone, Email, Agree, Itunes, AppUrl, password, conpassword) {
            if (document.getElementById(FirstName).value == "") {
                document.getElementById(FirstName).focus();
                alert("Please enter first name.");
                return false;
            }
            else if (document.getElementById(LastName).value == "") {
                document.getElementById(LastName).focus();
                alert("Please enter last name.");
                return false;
            }
            else if (document.getElementById(Address).value == "") {
                document.getElementById(Address).focus();
                alert("Please enter address.");
                return false;
            }
            else if (document.getElementById(City).value == "") {
                document.getElementById(City).focus();
                alert("Please enter city.");
                return false;
            }
            else if (document.getElementById(State).value == 0) {
                document.getElementById(State).focus();
                alert("Please select state.");
                return false;
            }
            else if (document.getElementById(City).value == "") {
                document.getElementById(City).focus();
                alert("Please enter city.");
                return false;
            }
            else if (document.getElementById(ZipCode).value == "") {
                document.getElementById(ZipCode).focus();
                alert("Please enter zipcode.");
                return false;
            }

            else if (!ValidateZipCode(document.getElementById(ZipCode))) {
                alert("Please enter valid zipcode.");
                return false;
            }
            else if (document.getElementById(Phone).value == "") {
                document.getElementById(Phone).focus();
                alert("Please enter phone number.");
                return false;
            }
            //    else if (!checkPhone(document.getElementById(Phone))) {
            //        document.getElementById(Phone).focus();
            //        alert("Please enter valid phone number.");
            //        return false;
            //    }
            else if (document.getElementById(Email).value == "") {
                document.getElementById(Email).focus();
                alert("Please enter email.");
                return false;
            }
            else if (!checkEmail(document.getElementById(Email))) {
                document.getElementById(Email).focus();
                alert("Please enter valid email.");
                return false;
            }
            else if (document.getElementById(password).value == "") {
                document.getElementById(password).focus();
                alert("Please enter password.");
                return false;
            }
            else if (document.getElementById(password).value != "") {
                var substr = document.getElementById(password).value;
                if (substr.length < 6) {
                    document.getElementById(password).focus();
                    alert("Password should contain more than 5 charecters.");
                    return false;
                }
            }

            if (document.getElementById(conpassword).value == "") {
                document.getElementById(conpassword).focus();
                alert("Please enter confirm password.");
                return false;
            }
            if (document.getElementById(Itunes).checked) {
                if (document.getElementById(AppUrl).value == "") {
                    document.getElementById(AppUrl).focus();
                    alert("Please enter application name.");
                    return false;
                }
            }

            if (document.getElementById(Agree).checked == false) {
                document.getElementById(Agree).focus();
                alert("Please read and agree to the terms of service.");
                return false;
            }
        }

        function CheckValidation(FullName, Address, City, State, ZipCode, Email, ValidCard, ExpCard) {
            if (document.getElementById(FullName).value == "") {
                document.getElementById(FullName).focus();
                alert("Please enter cardholder name.");
                return false;
            }
            else if (document.getElementById(Address).value == "") {
                document.getElementById(Address).focus();
                alert("Please enter address.");
                return false;
            }
            else if (document.getElementById(City).value == "") {
                document.getElementById(City).focus();
                alert("Please enter city.");
                return false;
            }
            else if (document.getElementById(State).value == 0) {
                document.getElementById(State).focus();
                alert("Please select State.");
                return false;
            }
            else if (document.getElementById(City).value == "") {
                document.getElementById(City).focus();
                alert("Please enter city.");
                return false;
            }
            else if (document.getElementById(ZipCode).value == "") {
                document.getElementById(ZipCode).focus();
                alert("Please enter zipcode.");
                return false;
            }

            if (!ValidateZipCode(document.getElementById(ZipCode))) {
                alert("Please enter valid zipcode.");
                return false;
            }
            else if (document.getElementById(Email).value == "") {
                document.getElementById(Email).focus();
                alert("Please enter email address.");
                return false;
            }
            else if (!checkEmail(document.getElementById(Email))) {
                document.getElementById(Email).focus();
                alert("Please enter valid email address.");
                return false;
            }
            else if (document.getElementById(ValidCard).value == "") {
                alert("Please enter credit card number.");
                document.getElementById(ValidCard).focus();
                return false;
            }
            if (document.getElementById(ValidCard).value != "") {
                var strCC = document.getElementById(ValidCard).value;
                if (!cardval(strCC)) {
                    alert("Please enter a valid credit card number.");
                    document.getElementById(ValidCard).focus();
                    return false;
                }
            }
            if (document.getElementById(ValidCard).value != "") {
                if (document.getElementById(ExpCard).value == "") {
                    alert("Please enter expiration date.");
                    document.getElementById(ExpCard).focus();
                    return false;
                }
            }
            if (document.getElementById(ExpCard).value != "") {
                var ExpCC = document.getElementById(ExpCard).value;
                var ExpMon = ExpCC.substring(0, 2);
                var Expyy = ExpCC.substring(2, 4);
                if (ExpCC.length < 4) {
                    alert("Please enter a valid expiration date.");
                    document.getElementById(ExpCard).focus();
                    return false;
                }
                else if (ExpMon > 12) {
                    alert("Please enter a valid expiration date.");
                    document.getElementById(ExpCard).focus();
                    return false;
                }
                else {

                    var today = new Date();
                    var Currentyear = today.getFullYear();
                    var CurrentMonth = today.getMonth() + 1;
                    var Currentday = today.getDate();
                    curYear = Currentyear.toString().slice(2);
                    if (Expyy < curYear) {
                        alert("Please enter a valid expiration date.");
                        document.getElementById(ExpCard).focus();
                        return false;
                    }
                    if (Expyy == curYear && ExpMon < CurrentMonth) {
                        alert("Please enter a valid expiration date.");
                        document.getElementById(ExpCard).focus();
                        return false;
                    }

                }
            }
        }

        function cardval(s) {
            // remove non-numerics
            var v = "0123456789";
            var w = "";
            for (i = 0; i < s.length; i++) {
                x = s.charAt(i);
                if (v.indexOf(x, 0) != -1)
                    w += x;
            }
            // validate number
            j = w.length / 2;
            if (j < 6.5 || j > 8 || j == 7) return false;
            k = Math.floor(j);
            m = Math.ceil(j) - k;
            c = 0;
            for (i = 0; i < k; i++) {
                a = w.charAt(i * 2 + m) * 2;
                c += a > 9 ? Math.floor(a / 10 + a % 10) : a;
            }
            for (i = 0; i < k + m; i++) c += w.charAt(i * 2 + 1 - m) * 1;
            return (c % 10 == 0);
        }


        function CheckValidUrl(strUrl) {
            if (strUrl != '') {
                var v = new RegExp();
                v.compile("^(?:http:\/\/)?(?:[\w-][\w-]+\.)+\\.[A-Za-z0-9-_&\?\/.=]+\\.[A-Za-z\?\/.=]{2,6}");
                if (!v.test(strUrl)) {
                    return false;
                } else {
                    return true;
                }
            }
            return true;
        }

        function ValidateZipCode(ZipCode) {
            var number = ZipCode.value;
            if (number.match(/^\d{5}$/)) {
                if (number === '00000')
                    return false;
                else
                    return true;
            }
            else {
                return false;
            }
        }
        function checkEmail(email) {
            var emailRegEx = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
            str = email.value;
            if (str.match(emailRegEx)) {
                return true;
            } else {
                return false;
            }
        }

        function checkPhone(Phone) {

            var number = Phone.value;
            if (!number.match(/\d{3}\-\d{3}\-\d{4}/)) {
                return false;
            }
            else {
                return true;
            }

        }
        function limitText(limitField, limitCount, limitNum) {
            if (document.getElementById(limitField).value.length > limitNum) {
                document.getElementById(limitField).value = document.getElementById(limitField).value.substring(0, limitNum);
            } else {
                document.getElementById(limitCount).innerHTML = limitNum - document.getElementById(limitField).value.length;
            }

        }

        function SearchtextBox(e) {
            if (document.getElementById(e).value != "")
                document.getElementById(e).value = "";
        }

        // Dot net controls validation
        function validateKeypressedIsNumeric(evt) {
            var keychar;
            var key;
            if (window.event)
                key = window.event.keyCode; // IE
            else
                key = evt.which; // Firefox   
            keychar = String.fromCharCode(key);
            if ((key == null)  || (key == 13) || (key == 27)) {
                return false;
            }
            else if ((key == 0) || (key == 8) || (key == 9)) {
                return true;
            }
            else if ((("0123456789. ").indexOf(keychar) > -1)) {
                return true;
            }
            else
                return false;
        }

        // Dot net controls validation
        function validateKeypressedIsNumericDot(evt) {
            var keychar;
            var key;
            if (window.event)
                key = window.event.keyCode; // IE
            else
                key = evt.which; // Firefox   
            keychar = String.fromCharCode(key);
            if ((key == null)  || (key == 13) || (key == 27)) {
                return false;
            }
            else if ((key == 0) || (key == 8) || (key == 9)) {
                return true;
            }
            else if ((("0123456789.").indexOf(keychar) > -1)) {
                return true;
            }
            else
                return false;
        }

        function validateKeypressedIsNumberOnly(evt) {
            var keychar;
            var key;
            if (window.event)
                key = window.event.keyCode; // IE
            else
                key = evt.which; // Firefox   
            keychar = String.fromCharCode(key);
            if ((key == null)  || (key == 13) || (key == 27)) {
                return false;
            }
            else if ((key == 0) || (key == 8) || (key == 9)) {
                return true;
            }
            else if ((("0123456789").indexOf(keychar) > -1)) {
                return true;
            }
            else
                return false;
        }

        function validateKeypressedIsPhoneNumberOnly(evt) {
            var keychar;
            var key;
            if (window.event)
                key = window.event.keyCode; // IE
            else
                key = evt.which; // Firefox   
            keychar = String.fromCharCode(key);
            if ((key == null)  || (key == 13) || (key == 27)) {
                return false;
            }
            else if ((key == 0) || (key == 8) || (key == 9)) {
                return true;
            }
            else if ((("0123456789.-").indexOf(keychar) > -1)) {
                return true;
            }
            else
                return false;
        }


        function validateKeypressedIsAlphaNumeric(evt) {

            var keychar;
            var key;
            if (window.event)
                key = window.event.keyCode; // IE
            else
                key = evt.which; // Firefox   

            keychar = String.fromCharCode(key);

            if ((key == null)  || (key == 13) || (key == 27)) {
                return false;
            }
            else if ((key == 0) || (key == 8) || (key == 9)) {
                return true;
            }
            else if ((("abcdefghijklmnopqrstuvxyzwABCDEFGHIJKLMNOPQRSTUVXYZW0123456789#-,/(). ").indexOf(keychar) > -1)) {
                return true;
            }
            else
                return false;
        }
        function validateKeypressedIsAlpha(evt) {
            var keychar;
            var key;
            if (window.event)
                key = window.event.keyCode; // IE
            else
                key = evt.which; // Firefox
            keychar = String.fromCharCode(key);           
            if ((key == null)  || (key == 13) || (key == 27)) {
                return false;
            }
            else if ((key == 0) || (key == 8) || (key == 9)) {
                return true;
            }
            else if ((("abcdefghijklmnopqrstuvxyzwABCDEFGHIJKLMNOPQRSTUVXYZW").indexOf(keychar) > -1)) {
                return true;
            }
            else
                return false;
        }

        function validateKeypressedIsAlphaWithSpace(evt) {
            var keychar;
            var key;
            if (window.event)
                key = window.event.keyCode; // IE
            else
                key = evt.which; // Firefox
            keychar = String.fromCharCode(key);

            if ((key == null)  || (key == 13) || (key == 27)) {
                return false;
            }
            else if ((key == 0) || (key == 8) || (key == 9)) {
                return true;
            }
            else if ((("abcdefghijklmnopqrstuvxyzwABCDEFGHIJKLMNOPQRSTUVXYZW ").indexOf(keychar) > -1)) {
                return true;
            }
            else
                return false;
        }
        function validateKeypressedIsRangeAlpha(evt) {
            var keychar;
            var key;
            if (window.event)
                key = window.event.keyCode; // IE
            else
                key = evt.which; // Firefox
            keychar = String.fromCharCode(key);

            if ((key == null)  || (key == 13) || (key == 27)) {
                return false;
            }
            else if ((key == 0) || (key == 8) || (key == 9)) {
                return true;
            }
            else if ((("abcdefghijklmnopqrstuvxyzwABCDEFGHIJKLMNOPQRSTUVXYZW0123456789 -").indexOf(keychar) > -1)) {
                return true;
            }
            else
                return false;
        }

        function validateKeypressedIsAlphaSpecial(evt) {
            var keychar;
            var key;
            if (window.event)
                key = window.event.keyCode; // IE
            else
                key = evt.which; // Firefox
            keychar = String.fromCharCode(key);
            if ((key == null)  || (key == 13) || (key == 27)) {
                return false;
            }
            else if ((key == 0) || (key == 8) || (key == 9)) {
                return true;
            }
            else if ((("abcdefghijklmnopqrstuvxyzwABCDEFGHIJKLMNOPQRSTUVXYZW&\".' ").indexOf(keychar) > -1)) {
                return true;

            }
            else
                return false;
        }

        function validateKeypressedIsAlphaNumericSpecial(evt) {
            var keychar;
            var key;
            if (window.event)
                key = window.event.keyCode; // IE
            else
                key = evt.which; // Firefox
            keychar = String.fromCharCode(key);
            if ((key == null)  || (key == 13) || (key == 27)) {
                return false;
            }
            else if ((key == 0) || (key == 8) || (key == 9)) {
                return true;
            }
            else if ((("abcdefghijklmnopqrstuvxyzwABCDEFGHIJKLMNOPQRSTUVXYZW0123456789 /:.").indexOf(keychar) > -1)) {
                return true;
            }
            else
                return false;
        }

        function validEmailCharaters(evt) {
            var keychar;
            var key;
            if (window.event)
                key = window.event.keyCode; // IE
            else
                key = evt.which; // Firefox
            keychar = String.fromCharCode(key);
            if ((key == null)  || (key == 13) || (key == 27)) {
                return false;
            }
            else if ((key == 0) || (key == 8) || (key == 9)) {
                return true;
            }
            else if ((("abcdefghijklmnopqrstuvxyzwABCDEFGHIJKLMNOPQRSTUVXYZW0123456789@._-").indexOf(keychar) > -1)) {
                return true;
            }
            else
                return false;
        }

        function capWords(elementID) {
            var inputString = document.getElementById(elementID);

            var outputString = document.getElementById(elementID); // The output text field
            var tmpStr, tmpChar, preString, postString, strlen;
            tmpStr = inputString.value.toLowerCase();
            stringLen = tmpStr.length;
            if (stringLen > 0) {
                for (i = 0; i < stringLen; i++) {
                    if (i == 0) {
                        tmpChar = tmpStr.substring(0, 1).toUpperCase();
                        postString = tmpStr.substring(1, stringLen);
                        tmpStr = tmpChar + postString;
                    }
                    else {
                        tmpChar = tmpStr.substring(i, i + 1);
                        if (tmpChar == " " && i < (stringLen - 1)) {
                            tmpChar = tmpStr.substring(i + 1, i + 2).toUpperCase();
                            preString = tmpStr.substring(0, i + 1);
                            postString = tmpStr.substring(i + 2, stringLen);
                            tmpStr = preString + tmpChar + postString;
                        }
                    }
                }
            }
            outputString.value = tmpStr;
        }

        function Length(sText) {
            var Length;
            sText = sText.replace(/\s+/g, '');
            if (sText.length > 5) {
                Length = true;
            }
            else {
                Length = false;
            }

            return Length;
        }
        function validateKeypressedIsPassword(evt) {

            var keychar;
            var key;
            if (window.event)
                key = window.event.keyCode; // IE
            else
                key = evt.which; // Firefox   

            keychar = String.fromCharCode(key);

            if ((key == null)  || (key == 13) || (key == 27)) {
                return false;
            }
            else if ((key == 0) || (key == 8) || (key == 9)) {
                return true;
            }
            else if ((("abcdefghijklmnopqrstuvxyzwABCDEFGHIJKLMNOPQRSTUVXYZW0123456789`~!@#$%^&*()-_=+\|[]{};:',.<>?/\"").indexOf(keychar) > -1)) {
                return true;
            }
            else
                return false;
        }
        function HasUpperLower(sText) {
            var ValidChars = " abcdefghijklmnopqrstuvxyzwABCDEFGHIJKLMNOPQRSTUVXYZW0123456789";
            var HasUpperLower;
            var Char;
            var UChar = 0;
            var LChar = 0;

            for (i = 0; i < sText.length; i++) {
                Char = sText.charAt(i);
                if (ValidChars.indexOf(Char) > 0) {

                    if (Char == Char.toUpperCase()) {
                        if (UChar == 0) {
                            UChar = 1;
                        }
                    }
                    else {
                        if (LChar == 0) {
                            LChar = 1;
                        }
                    }
                }
            }
            if ((UChar == 1) && (LChar == 1)) {
                HasUpperLower = true;
            }
            else {
                HasUpperLower = false;
            }

            return HasUpperLower;
        }


        function HasUpperLowerChar(sText) {
            var ValidChars = "abcdefghijklmnopqrstuvxyzwABCDEFGHIJKLMNOPQRSTUVXYZW0123456789";
            var HasUpperLower;
            var Char;
            var UChar = 0;
            var LChar = 0;
            for (i = 0; i < sText.length; i++) {
                Char = sText.charAt(i);
                if (ValidChars.indexOf(Char) > 0) {

                    if (Char == Char.toUpperCase()) {
                        if (UChar == 0) {
                            UChar = 1;
                        }
                    }
                    else {
                        if (LChar == 0) {
                            LChar = 1;
                        }
                    }
                }
            }
            if ((UChar == 1) || (LChar == 1)) {
                HasUpperLower = true;
            }
            else {
                HasUpperLower = false;
            }

            return HasUpperLower;
        }


        function HasSpecialChar(sText) {
            var ValidChars = "`~!@#$%^&*()-_=+\|[]{};:',.<>?/\"";
            var HasSpecialChar;
            var Char;

            for (i = 0; i < sText.length; i++) {
                Char = sText.charAt(i);
                if (ValidChars.indexOf(Char) > 0) {
                    HasSpecialChar = true;
                    break;
                }
                else {
                    HasSpecialChar = false;
                }
            }
            return HasSpecialChar;
        }

        function CheckPassword(passwordValue) {

            fnPasswordStrength(passwordValue);
            if (passwordValue == '') {
                document.getElementById("passwordstrength").style.display = "none";
                document.getElementById('btnPasswordStrength').style.backgroundColor = '';
            }
        }

        function fnPasswordStrength(passwordValue) {

            if ((Length(passwordValue) == true)
        && (HasUpperLower(passwordValue) == true)
		&& (HasSpecialChar(passwordValue) == true)) {
                document.getElementById("passwordstrength").style.display = "block";
                document.getElementById('btnPasswordStrength').style.backgroundColor = '#4AE817';
                document.getElementById('passwordtext').innerHTML = "Very Strong";
            }
            else if ((Length(passwordValue) == true)
            && (HasUpperLower(passwordValue) == true)) {
                document.getElementById("passwordstrength").style.display = "block";
                document.getElementById('btnPasswordStrength').style.backgroundColor = '#ffff00';
                document.getElementById('passwordtext').innerHTML = "Normal";
            }
            else if ((Length(passwordValue) == true)
            && (HasSpecialChar(passwordValue) == true)) {
                document.getElementById("passwordstrength").style.display = "block";
                document.getElementById('btnPasswordStrength').style.backgroundColor = '#6AC3D0';
                document.getElementById('passwordtext').innerHTML = "Strong";
            }
            else if ((Length(passwordValue) == true)
        && (HasUpperLower(passwordValue) == true)
        && (HasSpecialChar(passwordValue) == true)) {
                document.getElementById("passwordstrength").style.display = "block";
                document.getElementById('btnPasswordStrength').style.backgroundColor = '#6AC3D0';
                document.getElementById('passwordtext').innerHTML = "Strong";
            }
            else if ((Length(passwordValue) == true)
            && (HasUpperLowerChar(passwordValue) == true)) {
                document.getElementById("passwordstrength").style.display = "block";
                document.getElementById('btnPasswordStrength').style.backgroundColor = '#ff0000';
                document.getElementById('passwordtext').innerHTML = "Weak";
            }
        }

        function ComparePassword(Password, ConfirmPassword) {
            if (document.getElementById(Password).value != "") {
                var Pass = document.getElementById(Password).value;
                var ConPass = document.getElementById(ConfirmPassword).value;
                if (document.getElementById(ConfirmPassword).value != "") {
                    if (Pass != ConPass) {
                        document.getElementById(ConfirmPassword).value = "";
                        document.getElementById(ConfirmPassword).focus();
                        alert("Password does not match.");
                        return false;
                    }
                }
            }
        }

        function mask(f) {
            var numb = f.value;
            for (var i = 0; i < numb.length; i++) {
                var numb = numb.replace("-", "");
            }
            if (numb.length < 10) {
                f.value = numb;
                return;
            }
            if (numb.match(/\d{3}\-\d{3}\-\d{4}/)) {
                return;
            }
            tel = '';
            var val = numb.split('');
            for (var i = 0; i < val.length; i++) {
                if (i == 2) { val[i] = val[i] + '-' }
                if (i == 5) { val[i] = val[i] + '-' }
                tel = tel + val[i]
            }
            f.value = tel;
        } 
