﻿
//2000 년 이후 포함
function CheckAlgoSSN(jumin1Val, jumin2Val) {
    var resnoVal = jumin1Val +"-"+ jumin2Val;
    
    fmt = /^\d{6}-[1234]\d{6}$/;
    if (!fmt.test(resnoVal)) {
        return false;
    }

    // 날짜 유효성 검사
    birthYear = (resnoVal.charAt(7) <= "2") ? "19" : "20";
    birthYear += resnoVal.substr(0, 2);
    birthMonth = resnoVal.substr(2, 2) - 1;
    birthDate = resnoVal.substr(4, 2);
    birth = new Date(birthYear, birthMonth, birthDate);

    if (birth.getYear() % 100 != resnoVal.substr(0, 2) ||
       birth.getMonth() != birthMonth ||
       birth.getDate() != birthDate) {
        return false;
    }

    // Check Sum 코드의 유효성 검사
    buf = new Array(13);
    for (i = 0; i < 6; i++) buf[i] = parseInt(resnoVal.charAt(i));
    for (i = 6; i < 13; i++) buf[i] = parseInt(resnoVal.charAt(i + 1));

    multipliers = [2, 3, 4, 5, 6, 7, 8, 9, 2, 3, 4, 5];
    for (i = 0, sum = 0; i < 12; i++) sum += (buf[i] *= multipliers[i]);

    if ((11 - (sum % 11)) % 10 != buf[12]) {
        return false;
    }

    return true;
}

function nextSSN(event) {
    var obj = null;
    if (getBrowser() == BROWSER_IE) {
        obj = event.srcElement;
    } else {
        obj = event.target;
    }

    if (obj.value.length == 6) {
        document.getElementById("txtJumin2").focus();
    }
}
