  function IsAlpha(s) {
        if (IsEmpty(s)) {
            return false;
        }
        for (var i = 0; i < s.length; i++) {
            var c = s.charAt(i);
            if (!(c >= "a" && c <= "z") || c >= "A" && c <= "Z") {
                return false;
            }
        }
        return true;
    }


    function IsAlphaNumeric(s) {
        if (IsEmpty(s)) {
            return false;
        }
        for (var i = 0; i < s.length; i++) {
            var c = s.charAt(i);
            if (!(c >= "a" && c <= "z" ||
                c >= "A" && c <= "Z" ||
                c >= "0" && c <= "9" || c == "_" || c == "-" || c == ".")) {
                return false;
            }
        }
        return true;
    }


    function IsEmail(s) {
        if (IsEmpty(s)) {
            return false;
        }
        return s.match(/^[A-Za-z0-9]+([\-\.\_]\w+)*\@[A-Za-z0-9]+([\-\.]\w+)*\.[A-Za-z0-9]+$/) ? true : false;
    }


    function IsEmpty(s) {
        return s == null || s.length == 0;
    }


    function IsInteger(s) {
        var i;
        if (IsEmpty(s)) {
            return false;
        }
        var startPos = s.charAt(0) == "-" || s.charAt(0) == "+" ? 1 : 0;
        for (var i = startPos; i < s.length; i++) {
            var c = s.charAt(i);
            if (!(c >= "0" && c <= "9")) {
                return false;
            }
        }
        return true;
    }


    function CutString(s, length, dots) {
        if (length == null) {
            length = 0;
        }
        if (s.length > length) {
            return s.substr(0, length) + dots;
        } else {
            return s;
        }
    }


    function Trim(s) {
        if (IsEmpty(s)) {
            return "";
        }
        while (s.substring(0, 1) == " " ||
            s.substring(0, 1) == "	" ||
            s.substring(0, 1) == "\n" || s.substring(0, 1) == "\r") {
            s = s.substring(1, s.length);
        }
        while (s.substring(s.length - 1, s.length) == " " ||
            s.substring(s.length - 1, s.length) == "	" ||
            s.substring(s.length - 1, s.length) == "\n" ||
            s.substring(s.length - 1, s.length) == "\r") {
            s = s.substring(0, s.length - 1);
        }
        return s;
    }


    function isValidPhone(element, msg, size) {
        var VarPhone = element.value;
        if (IsEmpty(VarPhone) || VarPhone.length <= size) {
            alert("Please enter " + msg);
            element.select();
            element.focus();
            return false;
        } else {
            var Phno = VarPhone;
            var valid = "-0123456789() ";
            var hyphencount = 0;
            for (var i = 0; i < Phno.length; i++) {
                temp = "" + Phno.substring(i, i + 1);
                if (valid.indexOf(temp) == "-1") {
                    alert("Invalid characters in your " + msg + ". Please try again.");
                    element.select();
                    element.focus();
                    return false;
                }
            }
        }
        return true;
    }


    function isValidZipcode(element, msg, size) {
        var valid = "0123456789-";
        var hyphencount = 0;
        var field = element.value;
        if (IsEmpty(field) || field.length <= size) {
            alert("Please enter " + msg);
            element.select();
            element.focus();
            return false;
        } else {
            for (var i = 0; i < field.length; i++) {
                temp = "" + field.substring(i, i + 1);
                if (temp == "-") {
                    hyphencount++;
                }
                if (valid.indexOf(temp) == "-1") {
                    alert("Invalid characters in your " + msg + ".  Please try again.");
                    element.select();
                    element.focus();
                    return false;
                }
            }
        }
        return true;
    }


    function isBlank(txt, minlen) {
        if (txt.length == getCountOf("\n", txt)) {
            return true;
        }
        if (txt.length == getCountOf(" ", txt) || txt.length == 0) {
            return true;
        } else {
            return false;
        }
        return true;
    }


    function isValidEntry(element, msg) {
        if (element.value.length == 0) {
            alert("Please enter " + msg);
            element.select();
            element.focus();
            return false;
        } else if (isBlank(element.value, element.value.length)) {
            alert("Please enter " + msg);
            element.select();
            element.focus();
            return false;
        }
        return true;
    }


    function getCountOf(vChr, txt) {
        var i = 0;
        var iCount = 0;
        for (i = 0; i < txt.length; i++) {
            if (txt.charAt(i) == vChr) {
                iCount++;
            }
        }
        return iCount;
    }


    function isValidAlphaNumeric(element, msg, required) {
        var i = 0;
        var ValidData = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890";
        var Data = element.value;
        if (element.value == "") {
            var rval = required;
            if (rval == 1) {
                alert("Please enter " + msg);
                element.focus();
                return false;
            }
        }
        if (element.value != "") {
            for (i = 0; i < Data.length; i++) {
                if (ValidData.indexOf(Data.charAt(i)) == -1) {
                    alert("Invalid entry.		");
                    element.select();
                    element.focus();
                    return false;
                }
            }
        }
        return true;
    }