﻿

//----------------------------------------------------------------------------------------------
//					입력 체킹
//----------------------------------------------------------------------------------------------
// 포커스 설정 처리 없음
function fncChk_Value4NoFocus(objTag, strCtlMsg) {
    var rtnValue;
    var tmp;

    tmp = objTag.value.replace(/\s/g, "");
    if (tmp == "") {
        alert(strCtlMsg + ' 입력 하세요.');
        rtnValue = false;
    }
    else {
        rtnValue = true;
    }
    return rtnValue;
}

// 포커스 설정 처리 함
function fncChk_Value(objTag, strCtlMsg) {
    var rtnValue;
    var tmp;

    tmp = objTag.value.replace(/\s/g, "");
    if (tmp == "") {
        alert(strCtlMsg + ' 입력 하세요.');
        objTag.focus();
        rtnValue = false;
    }
    else {
        rtnValue = true;
    }
    return rtnValue;
}


//----------------------------------------------------------------------------------------------
//					입력값 길이 체킹
//----------------------------------------------------------------------------------------------	
function fncChk_Length(objTag, intLen, strCtlMsg) {
    var rtnValue;
    if (objTag.value.length != intLen) {
        alert(strCtlMsg + ' 입력값은 ' + intLen + '자 이어야 합니다.');
        objTag.focus();
        rtnValue = false;
    }
    else {
        rtnValue = true;
    }
    return rtnValue;
}


//----------------------------------------------------------------------------------------------
//					입력값 길이가 N자 이상인지 체킹			   (예 : 아이디는 4자 이상이어야 함)
//----------------------------------------------------------------------------------------------	
function fncChk_IsShortLength(objTag, intLen, strCtlMsg) {
    var rtnValue;
    if (objTag.value.length < intLen) {
        alert(strCtlMsg + ' 입력값은 ' + intLen + '자 이상 이어야 합니다.');
        objTag.select();
        objTag.focus();
        rtnValue = false;
    }
    else {
        rtnValue = true;
    }
    return rtnValue;
}


//----------------------------------------------------------------------------------------------
//					입력값 길이가 N자 이하인지 체킹			   (예 : 아이디는 10자 이하이어야 함)
//----------------------------------------------------------------------------------------------	
function fncChk_IsLongLength(objTag, intLen, strCtlMsg) {
    var rtnValue;
    if (objTag.value.length > intLen) {
        alert(strCtlMsg + ' 입력값은 ' + intLen + '자 이하 이어야 합니다.');
        objTag.select();
        objTag.focus();
        rtnValue = false;
    }
    else {
        rtnValue = true;
    }
    return rtnValue;
}

//----------------------------------------------------------------------------------------------
//					입력값 길이 체킹 ( 한글/영문 혼합일시, 총 바이트 수 체킹)
//----------------------------------------------------------------------------------------------	
function fncChk_LengthByte(objTag, intMaxLen, strCtlMsg) {
    var rtnValue;
    var str = objTag.value;
    var len = str.length;

    for (i = 0; i < str.length; i++) {
        frg = str.substr(i, 1).charCodeAt(0);
        if (frg > 127) {
            len++;
        }
    }
    if (len > intMaxLen) {
        alert(strCtlMsg);
        objTag.select();
        objTag.focus();
        rtnValue = false;
    }
    else {
        rtnValue = true;
    }

    return rtnValue;
}

//**********************************************************************************************
//					공백 입력 체킹
//**********************************************************************************************	
function fncChk_Space(objTag, strCtlMsg) {
    var intChar;
    var strTmp = objTag.value;

    for (var i = 0; i < strTmp.length; i++) {
        intChar = strTmp.charCodeAt(i);
        if (intChar == 32) {
            alert(strCtlMsg + ' 입력란에 공백문자는 입력 불가능 합니다.');
            objTag.select();
            objTag.focus();
            return false;
            break;
        }
    }
    return true;
}

//**********************************************************************************************
//					특수문자 제외 처리 여부 체킹	 (태그 제거)
//**********************************************************************************************	
function fncChk_IsNotTag(objTag, strCtlMsg) {
    var NotValid = "<>'%/";
    var temp;
    for (var i = 0; i < objTag.value.length; i++) {
        temp = "" + objTag.value.substring(i, i + 1);
        if (NotValid.indexOf(temp) != "-1") {
            alert(strCtlMsg + ' 입력란에 다음 특수문자는 사용하실 수 없습니다   \n\n    < >  % \' /    ');
            objTag.select();
            objTag.focus();
            return false;
            break;
        }
    }
    return true;
}

//----------------------------------------------------------------------------------------------
//					드롭다운 리스트의 선택여부 체킹
//----------------------------------------------------------------------------------------------
function funChk_IsSelected(objTag, strCtlMsg) {
    if (objTag.options[objTag.selectedIndex].value == "") {
        alert(strCtlMsg + " 항목을 선택하세요.");
        objTag.focus();
        return false;
    }
    return true;
}



//----------------------------------------------------------------------------------------------
//					드롭다운 리스트의 선택 값 가져오기    // 알럿창을 띄우면 에러남. (우낌)
//----------------------------------------------------------------------------------------------	
function fncGet_SelectedValue(objTag) {
    for (var j = 0; j < objTag.length; j++) {
        if (objTag.options[j].selected) {
            return objTag.options[j].value;
            break;
        }
    }
    alert('선택하세요');
    return "";
}


//----------------------------------------------------------------------------------------------
//					리스트 박스의 선택여부 체킹
//----------------------------------------------------------------------------------------------

//선택유무 체크
function funChk_ListIsSelected(objList, strCtlMsg) {
    if (objList.selectedIndex == -1) {
        alert(strCtlMsg + " 항목을 선택하세요.");
        objList.focus();
        return false;
    }
    return true;
}



//----------------------------------------------------------------------------------------------
//					라디오 버튼,   체크박스 의 선택여부 체킹
//----------------------------------------------------------------------------------------------

function funChk_IsChecked(objTag, strCtlMsg) {

    if (objTag.length) {
        for (i = 0; i < objTag.length; i++) {
            if (objTag[i].checked) {
                return true;
                break;
            }
        }
        alert(strCtlMsg + " 항목을 선택하세요.");
        objTag[0].focus();
        return false;
    }
    else {
        if (objTag.checked) {
            return true;
        }
        else {
            alert(strCtlMsg + " 항목을 선택하세요.");
            return false;
        }
    }
}

//**********************************************************************************************
//					숫자 여부 체킹							  (예 : 주민번호, 전화번호, 나이...)
//**********************************************************************************************	
function fncChk_IsNumber(objTag, strCtlMsg) {
    var temp;
    var valid = "0123456789"
    for (var i = 0; i < objTag.value.length; i++) {
        temp = "" + objTag.value.substring(i, i + 1);
        if (valid.indexOf(temp) == "-1") {
            alert(strCtlMsg + " 입력란은 숫자만 입력 가능 합니다.");
            objTag.select();
            objTag.focus();
            return false;
            break;
        }
    }
    return true;
}

//**********************************************************************************************
//					RGB 칼라값 여부 체킹							  (예 : FFEE00 )
//**********************************************************************************************	 

function fncChk_IsRGBColor(objTag, strCtlMsg) {
    var temp;
    var valid = "0123456789ABCDEFabcdef"

    if (objTag.value.length != 6) {
        alert(strCtlMsg + " 입력란은 RGB코드로 입력해야합니다.\n(예) 000000 ~ FFFFFF");
        objTag.select();
        objTag.focus();
        return false;
    }
    else {
        for (var i = 0; i < objTag.value.length; i++) {
            temp = "" + objTag.value.substring(i, i + 1);
            if (valid.indexOf(temp) == "-1") {
                alert(strCtlMsg + " 입력란은 RGB코드로 입력해야합니다.\n(예) 000000 ~ FFFFFF");
                objTag.select();
                objTag.focus();
                return false;
                break;
            }
        }
    }
    return true;

}


//**********************************************************************************************
//					특수문자, 한글만 제외 처리 여부 체킹	   (예 : 이메일 또는 FTP, HTTP 주소)
//**********************************************************************************************	
function fncChk_IsPossibleCharacter(objTag, strCtlMsg) {
    var valid = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789@_-."
    var temp;
    for (var i = 0; i < objTag.value.length; i++) {
        temp = "" + objTag.value.substring(i, i + 1);
        if (valid.indexOf(temp) == "-1") {
            alert(strCtlMsg + ' 입력란에 특수문자, 한글은 입력 불가능 합니다.');
            objTag.select();
            objTag.focus();
            return false;
            break;
        }
    }
    return true;
}


//**********************************************************************************************
//					전화번호 여부 체킹							  (예 : 전화번호...)
//**********************************************************************************************	
function fncChk_IsTelephoneType(objTag, strCtlMsg) {
    var temp;
    var valid = "0123456789-"
    for (var i = 0; i < objTag.value.length; i++) {
        temp = "" + objTag.value.substring(i, i + 1);
        if (valid.indexOf(temp) == "-1") {
            alert(strCtlMsg + " 입력란은 숫자와 '-' 만 입력 가능 합니다.");
            objTag.select();
            objTag.focus();
            return false;
            break;
        }
    }
    return true;
}

function fncChk_IsEnglish(objTag, strCtlMsg) {
    var valid = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_ "
    var temp;
    for (var i = 0; i < objTag.value.length; i++) {
        temp = "" + objTag.value.substring(i, i + 1);
        if (valid.indexOf(temp) == "-1") {
            alert(strCtlMsg + " 입력란은 영어만 입력 가능 합니다.");
            objTag.select();
            objTag.focus();
            return false;
            break;
        }
    }
    return true;
}
//----------------------------------------------------------------------------------------------
//					포커스 자동 이동 처리
//----------------------------------------------------------------------------------------------
function fncSet_AutoFocus(objTag1, objTag2, intNum) {
    if (objTag1.value.length >= intNum) {
        objTag2.focus();
    }
}

//----------------------------------------------------------------------------------------------
//					첨부 사진의 확장자 검색
//----------------------------------------------------------------------------------------------	

function fncChk_LimitAttach(objTag, strCtlMsg) {
    var file = objTag.value;
    if (file != "") {
        extArray = new Array(".gif", ".jpg", ".jpeg");

        while (file.indexOf("\\") != -1)
            file = file.slice(file.indexOf("\\") + 1);
        ext = file.slice(file.indexOf(".")).toLowerCase();
        for (var i = 0; i < extArray.length; i++) {
            if (extArray[i] == ext) {
                return true;
                break;
            }
        }
        alert("첨부 " + strCtlMsg + " 항목은 jpg 와 gif 포맷만 가능합니다.");
        objTag.select();
        objTag.focus();
        return false;
    }
    else
        return true;
}


function fncChk_LimitAttach2(objTag, strCtlMsg) {
    var file = objTag.value;
    if (file != "") {
        extArray = new Array(".html", ".htm", ".HTML", ".Html");

        while (file.indexOf("\\") != -1)
            file = file.slice(file.indexOf("\\") + 1);
        ext = file.slice(file.indexOf(".")).toLowerCase();
        for (var i = 0; i < extArray.length; i++) {
            if (extArray[i] == ext) {
                return true;
                break;
            }
        }
        alert("첨부 " + strCtlMsg + " 항목은 HTML 파일만 가능합니다.");
        objTag.select();
        objTag.focus();
        return false;
    }
    else
        return true;
}

//---------- 한글체크 -----------------------------------//
function IsValidHangul(strText) {
    var pattern = /[가-힣]/;

    if (pattern.test(strText)) {
        return true;
    }
    else {
        return false;
    }
}

function funChk1_IsChecked(objTag, strCtlMsg) {
    if (objTag.checked) {
        return true;
    }
    else {
        alert(strCtlMsg + " 항목에 동의 하셔야 합니다.");
        return false;
    }
}

//----------------------------------------------------------------------------------------------
//					한글 확장자 검색
//----------------------------------------------------------------------------------------------
function fncChk_NameChkAttach(objTag, strCtlMsg) {
    var valid = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.:\\_-+"
    var temp;

    var file = objTag.value;

    while (file.indexOf("\\") != -1)
        file = file.slice(file.indexOf("\\") + 1);

    for (var i = 0; i < file.length; i++) {
        temp = "" + file.substring(i, i + 1);
        if (valid.indexOf(temp) == "-1") {
            alert(strCtlMsg + " 항목은 오직 영문과 숫자로 조합된 파일명만 가능 합니다.");
            objTag.select();
            objTag.focus();
            return false;
            break;
        }
    }

    return true;
}

//**********************************************************************************************
//					영어 & 숫자 여부 체킹				        (예 : 아이디 , '-','_' 받지 않음)
//**********************************************************************************************	
function fncChk_Only_NumbernEnglish(objTag, strCtlMsg) {
    var valid = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
    var temp;

    for (var i = 0; i < objTag.value.length; i++) {
        temp = "" + objTag.value.substring(i, i + 1);
        if (valid.indexOf(temp) == "-1") {
            alert(strCtlMsg + " 입력란은 오직 영문과 숫자만 가능 합니다.");
            objTag.select();
            objTag.focus();
            return false;
            break;
        }
    }
    return true;
}

//**********************************************************************************************
//					주민번호 유효 체킹
//**********************************************************************************************	
function funChk_IsJuminValid(objJm1, objJm2) {
    var tmpString = "234567892345";
    var Jumin1 = objJm1.value;
    var Jumin2 = objJm2.value;
    var jumin = Jumin1.concat(Jumin2);
    var sum = 0;
    for (i = 0; i < jumin.length - 1; i++) {
        sum += parseInt(jumin.charAt(i)) * parseInt(tmpString.charAt(i));
    }
    total = (11 - (sum % 11)) % 10;

    if (total != parseInt(jumin.charAt(12))) {
        alert("맞지 않는 주민번호입니다.\n\n확인후 다시 입력하세요.");
        objJm1.select();
        objJm1.focus();
        return false;
    }
    return true;
}

//**********************************************************************************************
//					이메일 유효성값체크 (오류시 false 리턴)
//**********************************************************************************************	
function fncChk_isValidEmail(checkString) {
    var newstr = "";
    var at = false;
    var dot = false;
    var ENGOnly = true;

    if (checkString.indexOf("@") != -1) {
        at = true;
    } else if (checkString.indexOf(".") != -1) {
        dot = true;
    }

    for (var i = 0; i < checkString.length; i++) {
        ch = checkString.substring(i, i + 1)
        if ((ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z") || (ch == "@") || (ch == ".") || (ch == "_") || (ch == "-") || (ch >= "0" && ch <= "9")) {
            newstr += ch;
            if (ch == "@") {
                at = true;
            }
            if (ch == ".") {
                dot = true;
            }
        } else {
            ENGOnly == false;
        }
    }
    if ((at == true) && (dot == true) && (ENGOnly == true)) {

        return newstr;
    }
    else {
        return false;
    }
}

//----------------------------------------------------------------------------------------------
//					정책보다 큰 사진의 크기를 고정시키자
//----------------------------------------------------------------------------------------------

function fncResizeImg(e, intWidth, intHeight) {
    if (e.width > intWidth) {
        e.width = intWidth;
    }
    if (e.height > intHeight) {
        e.height = intHeight;
    }
}

//----------------------------------------------------------------------------------------------
//					두개의 숫자값 비교하기
//						objSign  N : 마감일이 무조건 커야만 하는경우.
//								 Y : 마감일이 시작일과 같아도 무관함.
//----------------------------------------------------------------------------------------------	

function funChk_IsCompare(objTag1, objSign, objTag2, strCtlMsg) {
    var tag1 = eval(objTag1.value);
    var tag2 = eval(objTag2.value);

    if (tag1 >= tag2) {
        alert(strCtlMsg);
        return false;
    }
    return true;
}

//----------------------------------------------------------------------------------------------		
// BLINK 태그
//----------------------------------------------------------------------------------------------		

function doBlink() {
    var blink = document.all.tags("BLINK")
    for (var i = 0; i < blink.length; i++)
        blink[i].style.visibility = blink[i].style.visibility == "" ? "hidden" : ""
}

function startBlink() {
    if (document.all)
        setInterval("doBlink()", 600)
}

//window.onload = startBlink;		