//------------------------------------------------------------------------------
//
// common/lib.js
//
//------------------------------------------------------------------------------

/* embeded obj ÀÛµ¿ÇÏ±â */
function writeObj(obj)
{
	document.write(obj);
}

//-------------------------------------------------------
// ÀÔ·Â »óÅÂ °Ë»ç
//-------------------------------------------------------
function isEmpty(data)
{
    for (var i = 0; i < data.length; i++)
        if (data.substring(i, i+1) != " ")
            return false;
    return true;
}

//-------------------------------------------------------
// ÀÌ¸ÞÀÏ Çü½Ä °Ë»ç
//-------------------------------------------------------
function isValidEmail(data)
{
    // ±ÝÁö»çÇ×
    // - @°¡ 2°³ÀÌ»ó
    // - .ÀÌ ºÙ¾î¼­ ³ª¿À´Â °æ¿ì
    // -  @.³ª  .@ÀÌ Á¸ÀçÇÏ´Â °æ¿ì
    // - ¸ÇÃ³À½ÀÌ.ÀÎ °æ¿ì
    var regDoNot = /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/;
    // ÇÊ¼ö»çÇ×
    // - @ÀÌÀü¿¡ ÇÏ³ªÀÌ»óÀÇ ¹®ÀÚ°¡ ÀÖ¾î¾ß ÇÔ
    // - @°¡ ÇÏ³ªÀÖ¾î¾ß ÇÔ
    // - Domain¸í¿¡ .ÀÌ ÇÏ³ª ÀÌ»ó ÀÖ¾î¾ß ÇÔ
    // - Domain¸íÀÇ ¸¶Áö¸· ¹®ÀÚ´Â ¿µ¹®ÀÚ 2~3°³ÀÌ¾î¾ß ÇÔ
    var regMust = /^.+\@[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3})$/;

    if (!regDoNot.test(data) && regMust.test(data))
        return true;
    else
        return false;
}

//-------------------------------------------------------
// ÁÖ¹Îµî·Ï¹øÈ£ °Ë»ç
//-------------------------------------------------------
function chkresno(resno)
{
    // ÁÖ¹Î¹øÈ£ÀÇ ÇüÅÂ¿Í 7¹øÂ° ÀÚ¸®(¼ºº°) À¯È¿¼º °Ë»ç
    fmt = /^\d{6}-[1234]\d{6}$/;
    if (!fmt.test(resno)) {
        //alert("Àß¸øµÈ ÁÖ¹Îµî·Ï¹øÈ£ÀÔ´Ï´Ù."); return;
        return false;
    }

    // ³¯Â¥ À¯È¿¼º °Ë»ç
    birthYear = (resno.charAt(7) <= "2") ? "19" : "20";
    birthYear += resno.substr(0, 2);
    birthMonth = resno.substr(2, 2) - 1;
    birthDate = resno.substr(4, 2);
    birth = new Date(birthYear, birthMonth, birthDate);

    if (birth.getYear() % 100 != resno.substr(0, 2) ||
       birth.getMonth() != birthMonth ||
       birth.getDate() != birthDate) {
        //alert("Àß¸øµÈ ÁÖ¹Îµî·Ï¹øÈ£ÀÔ´Ï´Ù."); return;
        return false;
    }

    // Check Sum ÄÚµåÀÇ À¯È¿¼º °Ë»ç
    buf = new Array(13);
    for (i = 0; i < 6; i++) buf[i] = parseInt(resno.charAt(i));
    for (i = 6; i < 13; i++) buf[i] = parseInt(resno.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]) {
        //alert("Àß¸øµÈ ÁÖ¹Îµî·Ï¹øÈ£ÀÔ´Ï´Ù."); return;
        return false;
    }

    //alert("Á¤»óÀûÀÎ ÁÖ¹Îµî·Ï¹øÈ£ÀÔ´Ï´Ù.");
    return true;
}

//-------------------------------------------------------
// Áö¿ø¼­ Á¶È¸Æû Ã³¸®
//-------------------------------------------------------
function checkRegForm(form)
{
    if (isEmpty(form.name.value)) {
        alert('ÀÌ¸§À» ÀÔ·ÂÇÏ¼¼¿ä.');
        form.name.focus();
        return;
    }
    else if (isEmpty(form.regnum1.value)) {
        alert('ÁÖ¹Îµî·Ï¹øÈ£ ¾ÕÀÚ¸®¸¦ ÀÔ·ÂÇÏ¼¼¿ä.');
        form.regnum1.focus();
        return;
    }
    else if (isEmpty(form.regnum2.value)) {
        alert('ÁÖ¹Îµî·Ï¹øÈ£ µÞÀÚ¸®¸¦ ÀÔ·ÂÇÏ¼¼¿ä.');
        form.regnum2.focus();
        return;
    }
    else if (!chkresno(form.regnum1.value + '-' + form.regnum2.value)) {
        alert("¿Ã¹Ù¸¥ ÁÖ¹Îµî·Ï¹øÈ£°¡ ¾Æ´Õ´Ï´Ù.");
        form.regnum1.focus();
        return;
    }

    form.submit()
}

//-------------------------------------------------------
// Áö¿ø¼­/¼öÇèÇ¥ Á¶È¸ÇÏ¿© Ãâ·ÂÇÏ±â
//-------------------------------------------------------
function view_print(url, form)
{
    if (isEmpty(form.name.value)) {
        alert('ÀÌ¸§À» ÀÔ·ÂÇÏ¼¼¿ä.');
        form.name.focus();
        return;
    }
    else if (isEmpty(form.regnum1.value)) {
        alert('ÁÖ¹Îµî·Ï¹øÈ£ ¾ÕÀÚ¸®¸¦ ÀÔ·ÂÇÏ¼¼¿ä.');
        form.regnum1.focus();
        return;
    }
    else if (isEmpty(form.regnum2.value)) {
        alert('ÁÖ¹Îµî·Ï¹øÈ£ µÞÀÚ¸®¸¦ ÀÔ·ÂÇÏ¼¼¿ä.');
        form.regnum2.focus();
        return;
    }

    // Áö¿ø¼­/¼öÇèÇ¥ Ãâ·ÂÀº È÷µçÆûÀ¸·Î Á¶È¸/ÆË¾÷À» Ã³¸®ÇÔ
    document.checkform.name.value = form.name.value;
    document.checkform.regnum.value = form.regnum1.value + "-" + form.regnum2.value;
    document.checkform.url.value = url;
    document.checkform.submit();
}

//-------------------------------------------------------
// ¿Ü±¹¾î ½ÃÇèÁ¾·ù ¼±ÅÃ
// [1] TOEIC 990 ¸¸Á¡
// [2] TEPS  990 ¸¸Á¡
// [3] TOFLE 300 ¸¸Á¡
//-------------------------------------------------------
function changeLangExamType(f)
{
    var total = ['', 990, 990, 300];
    var exam_type = f.lang_exam_type.options[f.lang_exam_type.selectedIndex].value;
    var exam_type = Number(exam_type);
    f.lang_exam_total.value = total[exam_type];
    //f.lang_exam_yn.checked = (num == 0) ? false : true;
}

//-------------------------------------------------------
// ¿ìÆí¹øÈ£°Ë»ö
//-------------------------------------------------------
function searchZipcode(f)
{
    var popup = window.open('zipcode.php', 'ZIP_WIN', 'width=450,height=290,toolbar=no,resizable=yes,location=no,scrollbars=yes');
    popup.focus();
}

//-------------------------------------------------------
// Áö¿ø¼­ ÀÔ·Â°ª °Ë»ç
//-------------------------------------------------------
function submitAppForm(f)
{
    var fields = [
        ['student_id', 'TEXT', '¼Ò¼Ó´ëÇÐ ÇÐ¹ø'],
        ['email', 'EMAIL', 'e-mail'],
        ['name_cn',  'TEXT', 'ÇÑÀÚ ¼º¸í'],
        ['name_en1', 'TEXT', '¿µ¹® ¼º¸í'],
        ['name_en2', 'TEXT', '¿µ¹® ¼º¸í'],
        ['name_en3', 'TEXT', '¿µ¹® ¼º¸í'],
        ['addr1', 'TEXT', '¿ìÆí¹øÈ£¿Í ÁÖ¼Ò'],
        ['addr2', 'TEXT', '³ª¸ÓÁö ÁÖ¼Ò'],
        ['phone', 'TEXT', 'ÀüÈ­¹øÈ£'],
        ['mobile', 'TEXT', 'ÈÞ´ëÆù ¹øÈ£'],
        ['parent_tel', 'TEXT', 'º¸È£ÀÚ ÀüÈ­¹øÈ£'],
        ['photo', 'FILE', '»çÁø'],
        ['into_y', 'SELECT', 'ÀÔÇÐ ³âµµ'],
        ['into_m', 'SELECT', 'ÀÔÇÐ ¿ù'],
        ['into_d', 'SELECT', 'ÀÔÇÐ ÀÏ'],
        ['univ', 'SELECT', '´ëÇÐÁ¾·ù'],
        ['dept', 'TEXT', 'ÇÐ°ú(ºÎ)'],
        ['grade_g31_point', 'TEXT', 'ÃëµæÇÐÁ¡'],
        ['total_g31_point', 'TEXT', 'ÃÑÇÐÁ¡'],
        ['grade_avg_point', 'TEXT', 'ÃëµæÆò±ÕÇÐÁ¡'],
        ['total_avg_point', 'TEXT', 'ÃÑÆò±ÕÇÐÁ¡'],
        ['grade_g32_point', 'TEXT', '3ÇÐ³â2ÇÐ±â ½ÅÃ»ÇÑ ÇÐÁ¡'],
        ['lang_exam_score', 'LANG', '¿Ü±¹¾î½ÃÇè Á¡¼ö'],
        ['univ_chair', 'TEXT', 'ÃßÃµÀÎ(¼Ò¼Ó´ëÇÐ ÇÐ°úÀå) ¼ºÇÔ'],
        ['univ_dean',  'TEXT', 'ÃßÃµÀÎ(¼Ò¼Ó´ëÇÐ ÇÐÀå) ¼ºÇÔ'],
        ['file1', 'FILE', 'ÀÚ±â¼Ò°³¼­'],
        ['file2', 'FILE', '¼ºÀûÁõ¸í¼­'],
        ['file3', 'FILE', '¾îÇÐ¼ºÀûÇ¥']
    ];

    // 'insert' or 'update'
    var mode = f.mode.value;

    for (var i = 0; i < fields.length; i++)
    {
        var name = fields[i][0];
        var type = fields[i][1];
        var subj = fields[i][2];
        var obj = f.elements[name];

        if (!obj) continue;

        if (type == 'TEXT') {
            if (isEmpty(obj.value)) {
                alert(subj + '(À»)¸¦ ÀÔ·ÂÇÏ¼¼¿ä.');
                obj.focus();
                return;
            }
        }
        else if (type == 'FILE') {
            if (isEmpty(obj.value) && mode == 'insert') {
                alert(subj + '(À»)¸¦ ÀÔ·ÂÇÏ¼¼¿ä.');
                obj.focus();
                return;
            }
        }
        else if (type == 'SELECT') {
            if (obj.options[obj.selectedIndex].value == '') {
                alert(subj + '(À»)¸¦ ¼±ÅÃÇÏ¼¼¿ä.');
                obj.focus();
                return;
            }
        }
        else if (type == 'EMAIL') {
            if (isEmpty(obj.value)) {
                alert(subj + '(À»)¸¦ ÀÔ·ÂÇÏ¼¼¿ä.');
                obj.focus();
                return;
            }
            else {
                if (!isValidEmail(obj.value)) {
                    alert(subj + "Àº(´Â) ¿Ã¹Ù¸¥ e-mail Çü½ÄÀÌ ¾Æ´Õ´Ï´Ù.");
                    obj.focus();
                    return;
                }
            }
        }
        else if (type == 'LANG') {
		    var exam_type = f.lang_exam_type.options[f.lang_exam_type.selectedIndex].value;
            //if (f.lang_exam_yn.checked && obj.value == '') {
			if (Number(exam_type) > 0 && obj.value == '') {
                alert(subj + '(À»)¸¦ ÀÔ·ÂÇÏ¼¼¿ä.');
                obj.focus();
                return;
            }
        }
    }

    f.submit();
}

/* end of js */

