/*
    NateON : softsyw@nate.com 신용우
    기능 : Form 요소 검증
    parameter : Form Object
*/
function verifyForm(f)
{
    var fLen = f.length;
    for (var i = 0; i < fLen; i++) {
        var e = f.elements[i];
        if (e.required) {
            if (e.type == "text" || e.type == "textarea" || e.type == "password" || e.type == "file") {
                if (e.value == null || e.value == "" || verifyBlank(e.value)) {
                    alert(e.required + " 입력해 주세요.");
                    e.focus();
                    return false;
                }
                if ((e.min > 0) && (e.min > e.value.length)) {
                    alert("최소 "+ e.min +"자 이상 입력해 주세요.");
                    e.focus();
                    return false;
                }
            } else if (e.type == "select-one" && e.selectedIndex == 0) {
                alert(e.required + " 선택해 주세요.");
                e.focus();
                return false;
            } else if (e.type == "hidden" && (e.value == "" || e.value == 0)) {
                alert(e.required);
                return false;
            }
        }
        if (e.value && (e.min > e.value.length)) {
            alert("최소 "+ e.min +"자 이상 입력해 주세요.");
            e.focus();
            return false;
        }
        if (e.value) {
            if (e.digit && isNaN(e.value)) {
                alert("숫자만 입력해 주세요.");
                e.focus();
                return false;
            } else if (e.currency && e.value.match(/[^-0-9,]/g)) {
                alert("숫자만 입력해 주세요.");
                e.focus();
                return false;
            }
        }
        // 통화형은 폼 제출 시 콤마를 제거한다.
        if (e.currency) {
            e.value = e.value.replace(/,/g, "");
        }
        if (e.warning) {
            alert(e.warning);
            e.focus();
            return false;
        }
    }
    return true;
}

/*
    기능 : 공백 검사
    공백이 없으면 true
*/
function verifyBlank(str)
{
    for (var i = 0; i < str.length; i++) {
        var chr = str.charAt(i);
        if (chr != " " && chr != "Wr" && chr != "\n" && chr != "\t") {
            return false;
        }
    }
    return true;

    /*
    var exp = /[\r\n\t ]/;
    return exp.test(str);
    */
}