/* 
 * ÀÚ¹Ù½ºÅ©¸³Æ® °øÅëÀ¯Æ¿ÇÔ¼ö
 *
 * @version 1.0, 2005/01/01 */


// 1¡­12¿ùÀÇ ¸¶Áö¸·ÀÏ
var days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];

// ³¯Â¥±¸ºÐÀÚ
var dateGuBun = '-';
// ³¯Â¥±¸ºÐÀÚ(Á¤±Ô½Ä) - ±¸ºÐÀÚ Á¦°Å¿¡ »ç¿ë
var dateGuBun2 = /\-/g;

// ½Ã°£±¸ºÐÀÚ
var timeGuBun = ':';
// ½Ã°£±¸ºÐÀÚ(Á¤±Ô½Ä) - ±¸ºÐÀÚ Á¦°Å¿¡ »ç¿ë
var timeGuBun2 = /\:/g;


/* ------------------------------------------------------------------------------------------------
 * ÀÔ·Â°ª °ø¹é Á¦°Å
 * ------------------------------------------------------------------------------------------------ */
function Trim(str)
{
    return(LTrim(RTrim(str)));
}

function LTrim(str)
{
    str = ''+str;

    var i = 0;
    while (str.substring(i,i+1) == ' ') {
        i++;
    }
    return str.substring(i);
}

function RTrim(str)
{
    str = ''+str;

    var i = str.length - 1;
    while (i >= 0 && str.substring(i,i+1) == ' ') {
        i--;
    }
    return str.substring(0,i+1);
}

/* ------------------------------------------------------------------------------------------------
 * ¿øÇÏ´Â ¹®ÀÚ¿­ Á¦°Å
 * ------------------------------------------------------------------------------------------------ */
function remove(str, token)
{
    str = '' + str;
    i = str.indexOf(token);
    r = "";
    if (i == -1) return str;
    r += str.substring(0,i) + remove(str.substring(i + token.length), token);
    return r;
}

/* ------------------------------------------------------------------------------------------------
 * ÀÔ·Â¹ÞÀº ÇÊµå·Î Æ÷Ä¿½º¸¦ ¿Å±ä´Ù.
 * ------------------------------------------------------------------------------------------------ */
function setFocus(obj)
{
    try
    {
        if (obj.type == "text") {
            if (obj.value != '') {
                obj.select();
            }
            else obj.focus();
        }
        else obj.focus();
    }
    catch (e) { }
}

/* ------------------------------------------------------------------------------------------------
 * ¾çÂÊ °ø¹éÀ» Á¦°ÅÇÑ value°ªÀÌ °ø¹éÀÎÁö Ã¼Å©ÇÑ´Ù.
 * ------------------------------------------------------------------------------------------------ */
function isNull(obj)
{
    if(obj != null && obj != undefined)
    {
        var chkValue = Trim(obj.value);

        if(obj.type.toUpperCase() != "PASSWORD")
            obj.value = chkValue;

        if(chkValue == "") {
            obj.value = "";
            return true;
        }
    }
    return false;
}

/* ------------------------------------------------------------------------------------------------
 * 1°³ÀÌ»óÀÇ ÇÊµåµéÀ» °ªÀ» ºó°ªÀ¸·Î ÃÊ±âÈ­ ÇÑ´Ù.
 * 2°³ ÀÌ»óÀÎ °æ¿ì¿¡´Â ±¸ºÐÀÚ(,)·Î ±¸ºÐÇÏ¿© ÀÎÀÚ·Î Àü´ÞÇÑ´Ù.
 * ------------------------------------------------------------------------------------------------ */
function clearFields(str)
{
    var objName = str.split(',');

    for(var i=0; i<objName.length; i++)
    {
        var f = document.getElementsByName(Trim(objName[i]));

        if(f.length == undefined)
        {
            if (f.tagName == "SELECT") {
                f.selectedIndex=0
            }
            else {
                f.value = '';
            }
        }
        else
        {
            for(var j=0; j<f.length; j++)
            {
                if (f[j].type == "radio" ||
                    f[j].type == "checkbox")
                {
                    f[j].checked = false;
                }
            }
        }
    }
    return;
}

/* ------------------------------------------------------------------------------------------------
 * È­¸é ÇÊµå¿¡ ºÙÀº ±âº» ÀÌº¥Æ®¸¦ Á¦°ÅÇÑ´Ù.
 * ÁÖÀÇ - ¾ø´Â ¸Þ¼Òµå¸íÀ» Á¦°Å ÇÒ·Á°í ÇÏ¸é ½ºÅ©¸³Æ® ¿¡·¯¾øÀÌ ¸ÔÅëÀÌ µÇ´Ï ¸Þ¼Òµå¸í È®ÀÎ Àß ÇÒ°Í!!
 * ------------------------------------------------------------------------------------------------ */
function detachEvents(field)
{
    field.detachEvent('onkeyup', autoTab);
    field.detachEvent('onkeypress', onlyCode);
    field.detachEvent('onkeypress', onlyNum);
    field.detachEvent('onkeypress', telNum);
    field.detachEvent('onkeypress', checkNum);
    field.detachEvent('onkeypress', onlyNum);
    field.detachEvent('onfocus', currencyClear);
    field.detachEvent('onfocus', removeDate);
    field.detachEvent('onfocus', removeTime);
    field.detachEvent('onblur', upperCase);
    field.detachEvent('onblur', lowerCase);
    field.detachEvent('onblur', currency);
    field.detachEvent('onblur', formatDate);
    field.detachEvent('onblur', formatTime);
    //field.detachEvent('onkeyup', enterSearch);

    try
    {
        field.detachEvent('onpropertychange', exec_chgField);   
    }
    catch(e) {}
}

/* ------------------------------------------------------------------------------------------------
 * È­¸é ÇÊµåÀÇ ¼Ó¼º¿¡ ÇØ´çÇÏ´Â ÀÌº¥Æ® ¼¼ÆÃÇÑ´Ù.
 * ------------------------------------------------------------------------------------------------ */
function attachEvents(field)
{
    field.attachEvent('onkeyup', autoTab);

    if (field.isUpper == 'Y') {
        field.attachEvent('onblur', upperCase);
    }

    if (field.isCode == 'Y') {
        field.style.imeMode = 'disabled';
        field.attachEvent('onkeypress', onlyCode);
    }
    else if (field.isUpCode == 'Y') {
        field.style.imeMode = 'disabled';
        field.attachEvent('onkeypress', onlyCode);
        field.attachEvent('onblur', upperCase);
    }
    else if (field.isLoCode == 'Y') {
        field.style.imeMode = 'disabled';
        field.attachEvent('onkeypress', onlyCode);
        field.attachEvent('onblur', lowerCase);
    }
    // ÇÕÄ§
    else if (field.isNum == 'Y') {
        field.style.imeMode = 'disabled';
        field.attachEvent('onkeypress', checkNum);
        field.attachEvent('onfocus', currencyClear);
        field.attachEvent('onblur', currency);

        if(field.unit != undefined && field.value == '') field.value = '0';
    }
    else if (field.isOnlyNum == 'Y') {
        field.style.imeMode = 'disabled';
        field.attachEvent('onkeypress', onlyNum);
    }
    else if (field.isTelNum == 'Y') {
        field.style.imeMode = 'disabled';
        field.attachEvent('onkeypress', telNum);
    }
    else if (field.isTime == 'Y') {
        field.style.imeMode = 'disabled';
        field.attachEvent('onkeypress', onlyNum);
        field.attachEvent('onfocus', removeTime);
        field.attachEvent('onblur', formatTime);
    }
    else if (field.isDate == 'Y' ||
             field.isYearMonth == 'Y' ||
             field.isYear == 'Y' ||
             field.isMonth == 'Y' ||
             field.isDay == 'Y') {
        field.style.imeMode = 'disabled';
        field.attachEvent('onkeypress', onlyNum);
        field.attachEvent('onfocus', removeDate);
        field.attachEvent('onblur', formatDate);
    }

    
    /*
    if (field.tagName == 'INPUT') {
      field.attachEvent('onpaste', returnFalse);
    }

    if (field.isEntSearch == 'Y') {
        field.attachEvent('onkeyup', enterSearch);
    }
    */

    /*
    if (field.isReadOnly == 'Y')
    {
        if (field.tagName == 'SELECT') {
            field.disabled = true;
        }
        else {
            field.readOnly = true;
        }
        field.tabIndex = -1;
        field.style.color = COLOR_READONLY;  // readonly Ç¥½Ã ±ÛÀÚ»ö
        if (field.name.indexOf('_state') < 0) {
            field.style.cursor = 'default';
        }
    }*/

    if (field.isState == 'Y') {
        field.attachEvent('onclick', stateChange);
        field.attachEvent('onmouseover', stateCursor);
    }

    //ÇÊµåÀÇ ¼Ó¼º¹× »óÅÂ°¡ º¯°æÀÌ µÉ¶§¸¶´Ù È£ÃâÀÌ µÇ¹Ç·Î ¸Ç ³ªÁß¿¡ Ãß°¡
    //»óÅÂÇÊµå¿¡ °É¸®¸é ¹«ÇÑ·çÇÁ
    if (field.isChangeField == 'Y') {
        field.attachEvent('onpropertychange', exec_chgField);
    }
}

/* ------------------------------------------------------------------------------------------------
 * À©µµ¿ì HotKey »ç¿ë½Ã (onkeyup ÀÌº¥Æ®¿¡ »ç¿ëÇÔ)
 * ------------------------------------------------------------------------------------------------ */
function checkHotKey()
{
    var keyCode = event.keyCode;

    if (keyCode == 21) { // Ctrl+U
        //menuLayerHide();
    }
    else if (keyCode == 25) { // Ctrl+Y
        //topFrameHide();
    }
}

/*
 * ¼³  ¸í : Enter¸¦ ´©¸£¸é Á¶È¸¸¦ È£ÃâÇÑ´Ù.
 * ÀÎÀÚ 1 : 
 * ¸®ÅÏ°ª : 
 */
function enterSearch()
{
    var keycode = event.keyCode;

    try {
        if (keycode == 13) {
            var field = event.srcElement;
            /*
            if (field.isCode == 'Y' || field.isUpper == 'Y') {
                field.value = field.value.toUpperCase();
            }
            searchData();*/
        }
    } catch (e) { }
}

/* ------------------------------------------------------------------------------------------------
 * maxLength°¡ µÇ¸é ´ÙÀ½ ÇÊµå·Î Æ÷Ä¿½º¸¦ ¿Å±ä´Ù. (onkeyup ÀÌº¥Æ®¿¡ »ç¿ëÇÔ)
 * ------------------------------------------------------------------------------------------------ */
function autoTab()
{
    var current = event.srcElement;
    var keycode = event.keyCode;

    if (current.isOnlyNum == "Y" || 
        current.isNum == "Y" ||
        current.isDate == "Y" || 
        current.isTelNum == "Y") {
        if (keycode >= 65 && keycode <=90) {
          return;
        } 
    }

    if (event.ctrlKey || event.altKey || 
        keycode <= 40 || keycode >= 229 || 
        current.value.length != current.maxLength) {
        return;
    }

    var i = 0;
    var fields = document.all;
    for (i; i<fields.length; i++)
    {
        field = fields[i];
        if (!isField(field)) {
            continue;
        }

        // ÇöÀç ÇÊµå ÀÎµ¦½º Ã£±â
        if (field == current) {
            break;
        }
    }

    i++;  // ´ÙÀ½ ÇÊµåÀÇ ÀÎµ¦½º

    for (i; i<fields.length; i++)
    {
        field = fields[i];
        if (!isField(field)) {
            continue;
        }

        if (field.readOnly || field.disabled 
            || field.type == 'hidden' || field.type == 'checkbox'
            || field.name.indexOf('_statenm') > 0
            || field.tabIndex == -1) {
            continue;
        }

        setFocus(field);
        break;
    }

    if (i == fields.length)
    {
        // ¸¶Áö¸· ÇÊµå¿¡¼­´Â ´õÀÌ»ó Æ÷Ä¿½º ÀÌµ¿¾ÈÇÔ..
        /*
        for (var k=0; k<fields.length; k++)
        {
            field = fields[k];
            if (!isField(field) || field.type == 'hidden') {
                continue;
            }
            setFocus(field);
            break;
        }
        */
    }
}

/* ------------------------------------------------------------------------------------------------
 * ÇÊµåÀÇ °ªÀ» ¼Ò¹®ÀÚ·Î ¹Ù²Û ÈÄ ¼¼ÆÃÇÑ´Ù. (onblur ÀÌº¥Æ®¿¡¼­ »ç¿ëÇÔ)
 * ------------------------------------------------------------------------------------------------ */
function lowerCase()
{
    var field = event.srcElement;
    field.value = field.value.toLowerCase();
}

/* ------------------------------------------------------------------------------------------------
 * ÇÊµåÀÇ °ªÀ» ´ë¹®ÀÚ·Î ¹Ù²Û ÈÄ ¼¼ÆÃÇÑ´Ù. (onblur ÀÌº¥Æ®¿¡¼­ »ç¿ëÇÔ)
 * ------------------------------------------------------------------------------------------------ */
function upperCase()
{
    var field = event.srcElement;
    field.value = field.value.toUpperCase();
}

/* ------------------------------------------------------------------------------------------------
 * TextField¿¡ ¼ýÀÚ¿Í ¿µ¹®¸¸ ÀÔ·ÂµÇ°Ô ÇÑ´Ù. (onkeypress ÀÌº¥Æ®¿¡¼­ »ç¿ëÇÔ)
 * ------------------------------------------------------------------------------------------------ */
function onlyCode()
{
    var keycode = event.keyCode;

    // 46->.  47->/  95->_  48->0  57->9  65->A  90->Z  97->a  122->z
    if (keycode == 46 || keycode == 47 || keycode == 95 || 
        (keycode >= 48 && keycode <=57) || 
        (keycode >= 65 && keycode <=90) ||
        (keycode >= 97 && keycode <=122)) {
        return true;
    }
    return false;
}

/* ------------------------------------------------------------------------------------------------
 * TextField¿¡ ¼ýÀÚ¸¸ ÀÔ·ÂµÇ°Ô ÇÑ´Ù. (onkeypress ÀÌº¥Æ®¿¡¼­ »ç¿ëÇÔ)
 * (0 ~ 9) = true, ³ª¸ÓÁö false
 * ------------------------------------------------------------------------------------------------ */
function onlyNum()
{
    var keycode = event.keyCode;

    // 48->0  57->9
    if (keycode >= 48 && keycode <=57) {
        return true;
    }
    return false;
}

/* ------------------------------------------------------------------------------------------------
 * TextField¿¡ ¼ýÀÚ°ü·Ã °ª¸¸ ÀÔ·ÂµÇ°Ô ÇÑ´Ù. (onkeypress ÀÌº¥Æ®¿¡¼­ »ç¿ëÇÔ)
 * (- . 0 ~ 9) = true, ³ª¸ÓÁö false
 * ------------------------------------------------------------------------------------------------ */
function checkNum()
{
    var keycode = event.keyCode;

    // 43->+  44->,  45->-  46->.  47->/  48->0  57->9
    if ((keycode >= 45 && keycode <=57) && keycode != 44 && keycode != 47) {
        return true;
    }
    return false;
}

/* ------------------------------------------------------------------------------------------------
 * TextField¿¡ ¼ýÀÚ¸¸ ÀÔ·ÂµÇ°Ô ÇÑ´Ù. (onkeypress ÀÌº¥Æ®¿¡¼­ »ç¿ëÇÔ)
 * (- 0 ~ 9) = true, ³ª¸ÓÁö false
 * ------------------------------------------------------------------------------------------------ */
function telNum()
{
    var keycode = event.keyCode;

    // 45->-  48->0  57->9
    if (keycode == 45 || (keycode >= 48 && keycode <=57)) {
        return true;
    }
    return false;
}

/* ------------------------------------------------------------------------------------------------
 * ¼ýÀÚÀÔ·Â TextField¿¡ , ¸¦ ºÙÀÎ ÈÄ ¼¼ÆÃÇÑ´Ù. (onblur ÀÌº¥Æ®¿¡¼­ »ç¿ëÇÔ)
 * ------------------------------------------------------------------------------------------------ */
function currency()
{
    
    var field = event.srcElement;
    var value = field.value.replace(/\,/g,"");

    if(field.isNum == "Y") {
        if(value == "" && field.unit != undefined)
            value = "0";
    }

    field.value = plusComma(value, field.format);
}

/* ------------------------------------------------------------------------------------------------
 * ¼ýÀÚÀÔ·Â TextField¿¡ , ¸¦ Á¦°ÅÇÑ ÈÄ ¼¼ÆÃÇÑ´Ù. (onfocus ÀÌº¥Æ®¿¡¼­ »ç¿ëÇÔ)
 * ------------------------------------------------------------------------------------------------ */
function currencyClear()
{
    
    var field = event.srcElement;
    field.value = field.value.replace(/\,/g,"");
    setFocus(field);
}

/* ------------------------------------------------------------------------------------------------
 * ¼ýÀÚ¿¡ , ¸¦ Á¦°ÅÇÑ ÈÄ ¸®ÅÏÇÑ´Ù.
 * ------------------------------------------------------------------------------------------------ */
function rmNum(value) {
    value += '';
    return value.replace(/\,/g,"");
}

/* ------------------------------------------------------------------------------------------------
 * °ª¿¡ ÄÞ¸¶¸¦ Á¦°Å ÈÄ ¼ýÀÚÇüÅÂ º¯È­ÇÏ¿© ¸®ÅÏÇÑ´Ù. (¼ýÀÚ°¡ ¾Æ´Ñ °æ¿ì´Â 0)
 * ------------------------------------------------------------------------------------------------ */
function getInt(value)
{
    value += '';
    value = value.replace(/\,/g,"");
    value = parseInt(value);

    if(! isNaN(value)) {
        return value;
    }
    else return 0;
}

/* -------------------------------------------------------
 * °ª¿¡ ÄÞ¸¶À» Á¦°Å ÈÄ ¼ýÀÚÇüÅÂ 2
 * --------------------------------------------------------*/
function getNum(value)
{
    value += '';
    value = value.replace(/\,/g,"");
    value = Number(value);

    if(! isNaN(value)) {
        return value;
    }
    else return 0;
}

/* ------------------------------------------------------------------------------------------------
 * ¼ýÀÚ¿¡ , ¸¦ ºÙÀÎ ÈÄ ¸®ÅÏÇÑ´Ù.
 * ------------------------------------------------------------------------------------------------ */
function plusComma(num, format)
{
    if (num == "") {
        return num;
    }
    
    
    num = fillZero(num, format);

    var minus = true;

    
    if (num < 0) {
        num = num.substring(1, num.length);
        
    }
    else {
        
        minus = false;
    }

    var dotPos = (num + "").split(".");
    
    var dotU = dotPos[0];
    var dotD = dotPos[1];
    var commaFlag = dotU.length%3;


    if (commaFlag) {
        var out = dotU.substring(0, commaFlag) ;
		
        if (dotU.length > 3) out += ",";
    }
    else var out = "";

    for (var i=commaFlag; i < dotU.length; i+=3) {
        out += dotU.substring(i, i+3) ;
        if(i < dotU.length-3) out += ",";
    }

    if (minus) out = "-" + out;
    if (dotD) out = out + "." + dotD;
    
	var tmpout = rmNum(out);
	
    try {
        if(eval(tmpout) == undefined) out = "";
    } catch(e) {

		out = "";
    }

    return out;
}

/* ------------------------------------------------------------------------------------------------
 * Çü½Ä¿¡ ¸Â°Ô ¼Ò¼öºÎ°¡ Ã³¸®µÈ ¼ýÀÚÇü ¹®ÀÚ¿­À» ¹ÝÈ¯ÇÑ´Ù.
 * format="5.2" ¼Ó¼º¿¡ ¸Â°Ô ¼Ò¼öºÎ¸¦ ÀÚ¸¥´Ù.
 * ¼Ò¼öºÎÀÇ ÀÚ¸®¼ö°¡ ³ÑÀ»¶§¿¡´Â ¹Ý¿Ã¸²À» ÇÑ´Ù.
 * type - format ÀÇ °ª (¿¹: 5.2)
 * ------------------------------------------------------------------------------------------------ */
function fillZero(input, type)
{
    
    if (!type) {
        return input + "";
    }

    var format = type.split('.');
    
    
    var value = (input + "").split('.');

    
    
    if (format[1] == 0) {
        return value[0]+"";
    }   

    if (!value[1]) {    
        value[1] = "";
    }

    //¼Ò¼öÁ¡ ÀÌÇÏ°¡ Æ÷¸Ëº¸´Ù Å¬ °æ¿ì´Â
    //±×³É ¹Ý¿Ã¸²ÇÏ¿© ¸®ÅÏÇÑ´Ù
    if (value[1].length > Number(format[1])) {
         return (Number(input).toFixed(Number(format[1])));
    }

    //¼Ò¼öÁ¡ ÀÚ¸®¼ö¿¡ ¸Â°Ô '0'À» Ã¤¿öÁØ´Ù
    //¿¹¸¦ µé¸é µ¥ÀÌÅ¸ Çü½ÄÀÌ 5.2ÀÏ °æ¿ì
    //ÀÔ·Â°ªÀÌ '50'ÀÌ¸é '50.00'À¸·Î ¸®ÅÏÇÑ´Ù
    while ( value[1].length < Number(format[1]) ) {
        value[1] += "0";
    }       

    if (isNaN(value[0])) {
        value[0] = "0";
    }

    //value[0]À» Number °´Ã¼·Î º¯È¯
    //000.000 °°Àº °æ¿ì¸¦ 0.000À¸·Î º¯È¯ÇÏ±â À§ÇØ¼­
    return (value[0] + "." + value[1]);
}

/* ------------------------------------------------------------------------------------------------
 * YYYY-MM-DDÀÇ ³¯Â¥¸¦ YYYYMMDD·Î ¹Ù²Û ÈÄ ¸®ÅÏÇÑ´Ù.
 * value  - 10ÀÚ¸® ³¯Â¥
 * return - formatÀÌ Á¦°ÅµÈ 8ÀÚ¸® ³¯Â¥
 * ------------------------------------------------------------------------------------------------ */
function rmDate(value)
{
    return (value.replace(dateGuBun2,"")).replace(" ","");
}

/* ------------------------------------------------------------------------------------------------
 * ³¯Â¥ÇÊµåÀÇ YYYY-MM-DDÀÇ ³¯Â¥¸¦ YYYYMMDD·Î ¹Ù²ã ¼¼ÆÃÇÑ´Ù. (onfocus ÀÌº¥Æ®¿¡ »ç¿ëÇÔ)
 * isHour ¼Ó¼ºÀ» ºÎ¿©ÇÏ¿© ½Ã°£±îÁö Ç¥Çö °¡´ÉÇÏµµ·Ï ¼öÁ¤ÇÔ
 * ------------------------------------------------------------------------------------------------ */
function removeDate()
{
    var field = event.srcElement;
    var value = field.value;

    if (value == "") {
        return;
    }

    field.value = (value.replace(dateGuBun2,"")).replace(" ","");
    setFocus(field);
}

/* ------------------------------------------------------------------------------------------------
 * YYYYMMDDÀÇ ³¯Â¥¸¦ YYYY-MM-DD·Î ¹Ù²Û ÈÄ ¸®ÅÏÇÑ´Ù.
 * value  - 8ÀÚ¸® ³¯Â¥
 * return - format µÈ 10ÀÚ¸® ³¯Â¥
 * ------------------------------------------------------------------------------------------------ */
function plusDate(value)
{
    if (value == "") {
        return value;
    }

    var yyyy = value.substring(0, 4);
    var   mm = value.substring(4, 6);
    var   dd = value.substring(6, 8);

    return yyyy + dateGuBun + mm + dateGuBun + dd;
}

/* ------------------------------------------------------------------------------------------------
 * YYYYMMÀÇ ³¯Â¥¸¦ YYYY-MM·Î ¹Ù²Û ÈÄ ¸®ÅÏÇÑ´Ù.
 * value  - 6ÀÚ¸® ³¯Â¥
 * return - format µÈ 7ÀÚ¸® ³¯Â¥
 * ------------------------------------------------------------------------------------------------ */
function plusDate2(value)
{
    if (value == "") {
        return value;
    }

    var yyyy = value.substring(0, 4);
    var   mm = value.substring(4, 6);

    return yyyy + dateGuBun + mm;
}

/* ------------------------------------------------------------------------------------------------
 * ³¯Â¥ÇÊµåÀÇ YYYYMMDDÀÇ ³¯Â¥¸¦ YYYY-MM-DD·Î ¹Ù²ã ¼¼ÆÃÇÑ´Ù. (onblur ÀÌº¥Æ®¿¡ »ç¿ëÇÔ)
 * isHour ¼Ó¼ºÀ» ºÎ¿©ÇÏ¿© ½Ã°£±îÁö Ç¥Çö °¡´ÉÇÏµµ·Ï ¼öÁ¤ÇÔ
 * ------------------------------------------------------------------------------------------------ */
function formatDate() 
{
    var field = event.srcElement;
    var value = rmDate(field.value);

    if (value == "") {
        return;
    }

    
    if (field.isYear == "Y")
    {
        var year = eval(value);

        if(year < 1000)
        {
            alert("³¯Â¥°¡ Àß¸ø ÀÔ·ÂµÇ¾ú½À´Ï´Ù. ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
            setFocus(field);
            return;
        }
    }
    else if (field.isMonth == "Y")
    {
        var month = eval(value);

        if((month < 1) ||(month >12))
        {
            alert("³¯Â¥°¡ Àß¸ø ÀÔ·ÂµÇ¾ú½À´Ï´Ù. ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
            setFocus(field);
            return;
        }
        else
        {
            if(month < 10) month = "0"+month;
        }

        field.value = month;
    }
    else if (field.isDay == "Y")
    {
        var day = eval(value);

        if((day < 1) ||(day >31))
        {
            alert("³¯Â¥°¡ Àß¸ø ÀÔ·ÂµÇ¾ú½À´Ï´Ù. ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
            setFocus(field);
            return;
        }
        else
        {
            if(day < 10) day = "0"+day;
        }

        field.value = day;
    }
    else if (field.isYearMonth == "Y")
    {
        if (value.length != 6) { // ÀÚ¸®¼ö Ã¼Å©(³â¿ù)
            alert("³¯Â¥°¡ Àß¸ø ÀÔ·ÂµÇ¾ú½À´Ï´Ù. ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä. (¿¹: 200501)");
            field.value = "";
            setFocus(field);
            return;
        }

        if (!checkDate2(value)) { // ³¯Â¥ validation
            alert("Á¸ÀçÇÏÁö ¾Ê´Â ³¯Â¥ÀÔ´Ï´Ù. È®ÀÎ ÈÄ ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
            field.value = "";
            setFocus(field);
            return;
        }

        field.value = plusDate2(value);
    }
    else if (field.isHour == "Y")
    {
        if (value.length != 10) { // ÀÚ¸®¼ö Ã¼Å©(³â¿ùÀÏ½Ã)
            alert("³¯Â¥°¡ Àß¸ø ÀÔ·ÂµÇ¾ú½À´Ï´Ù. ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä. (¿¹: 2005080411)");
            field.value = "";
            setFocus(field);
            return;
        }

        if (!checkDate2(value.substring(0,8))) {
            alert("Á¸ÀçÇÏÁö ¾Ê´Â ³¯Â¥ÀÔ´Ï´Ù. È®ÀÎ ÈÄ ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
            field.value = "";
            setFocus(field);
            return;
        }

        var tmpTime = new Number(value.substring(8,10));
        if (tmpTime >= 24) {
            alert("½Ã°£Àº 23½Ã±îÁö¸¸ ÀÔ·ÂÇÒ ¼ö ÀÖ½À´Ï´Ù. È®ÀÎ ÈÄ ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
            field.value = "";
            setFocus(field);
            return;
        }

        field.value = plusDate(value) + " " + value.substring(8,10);
    }
    else
    {
        if (value.length != 8) { // ÀÚ¸®¼ö Ã¼Å©
            alert("³¯Â¥°¡ Àß¸ø ÀÔ·ÂµÇ¾ú½À´Ï´Ù. ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä. (¿¹: 20050809)");
            field.value = "";
            setFocus(field);
            return;
        }

        if (!checkDate(value)) { // ³¯Â¥ validation
            alert("Á¸ÀçÇÏÁö ¾Ê´Â ³¯Â¥ÀÔ´Ï´Ù. È®ÀÎ ÈÄ ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
            field.value = "";
            setFocus(field);
            return;
        }

        field.value = plusDate(value);
    }
}

/* ------------------------------------------------------------------------------------------------
 * YYYY-MM-DD Çü½ÄÀÇ ³¯Â¥ÀÇ validation.
 * boolean - ¿Ã¹Ù¸¥ ³¯Â¥¸é true, ¾Æ´Ï¸é false
 * ------------------------------------------------------------------------------------------------ */
function checkDate(value) 
{
    var yyyy = eval(value.substring(0, 4));
    var   mm = eval(value.substring(4, 6));
    var   dd = eval(value.substring(6, 8));

    var date = new Date(yyyy, mm-1, dd);

    if (yyyy != date.getFullYear() || 
        mm != (date.getMonth()+1) || 
        dd != date.getDate()) {
        return false;
    }
    return true;
}

/* ------------------------------------------------------------------------------------------------
 * YYYY-MM Çü½ÄÀÇ ³¯Â¥ÀÇ validation.
 * boolean - ¿Ã¹Ù¸¥ ³¯Â¥¸é true, ¾Æ´Ï¸é false
 * ------------------------------------------------------------------------------------------------ */
function checkDate2(value)
{
    var yyyy = eval(value.substring(0, 4));
    var   mm = eval(value.substring(4, 6));

    var date = new Date(yyyy, mm-1, 1);

    if (yyyy != date.getFullYear() || 
        mm != (date.getMonth()+1)) {
        return false;
    }
    return true;
}

/* ------------------------------------------------------------------------------------------------
 * HH:MMÀÇ ½Ã°£À» HHMM·Î ¹Ù²Û ÈÄ ¸®ÅÏÇÑ´Ù.
 * value  - 5ÀÚ¸® ½Ã°£
 * result - formatÀÌ Á¦°ÅµÈ 4ÀÚ¸® ½Ã°£
 * ------------------------------------------------------------------------------------------------ */
function rmTime(value)
{
    return value.replace(timeGuBun2,"");
}

/* ------------------------------------------------------------------------------------------------
 * ½Ã°£ÇÊµåÀÇ HH:MMÀÇ ½Ã°£À» HH:MMÀ¸·Î ¹Ù²ã ¼¼ÆÃÇÑ´Ù. (onfocus ÀÌº¥Æ®¿¡ »ç¿ëÇÔ)
 * ------------------------------------------------------------------------------------------------ */
function removeTime()
{
    var field = event.srcElement;
    var value = field.value;

    if (value == "") {
        return;
    }

    field.value = value.replace(timeGuBun2,"");
    setFocus(field);
}

/* ------------------------------------------------------------------------------------------------
 * ½Ã°£À» HH:MMÀ¸·Î ¹Ù²Û ÈÄ ¸®ÅÏÇÑ´Ù.
 * value  - 4ÀÚ¸® ½Ã°£
 * result - format µÈ 5ÀÚ¸® ½Ã°£
 * ------------------------------------------------------------------------------------------------ */
function plusTime(value)
{
    if (value == "") {
        return value;
    }

    var hh = value.substring(0, 2);
    var mm = value.substring(2, 4);

    return hh + timeGuBun + mm;
}

/* ------------------------------------------------------------------------------------------------
 * ½Ã°£ÇÊµåÀÇ HHMMÀÇ ½Ã°£À» HH:MMÀ¸·Î ¹Ù²ã ¼¼ÆÃÇÑ´Ù. (onblur ÀÌº¥Æ®¿¡ »ç¿ëÇÔ)
 * ------------------------------------------------------------------------------------------------ */
function formatTime()
{
    var field = event.srcElement;
    var value = rmTime(field.value);

    if (value == "") {
        return;
    }

    if (value.length != 4) { // ÀÚ¸®¼ö Ã¼Å©
        alert("½Ã°£ÀÌ Àß¸ø ÀÔ·ÂµÇ¾ú½À´Ï´Ù. ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä. (¿¹: 1030)");
        field.value = "";
        setFocus(field);
        return;
    }

    if (!checkTime(value)) { // ½Ã°£ validation
        alert("Á¸ÀçÇÏÁö ¾Ê´Â ½Ã°£ÀÔ´Ï´Ù. È®ÀÎ ÈÄ ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
        field.value = "";
        setFocus(field);
        return;
    }

    field.value = plusTime(value);
}

/* ------------------------------------------------------------------------------------------------
 * HH:MM Çü½ÄÀÇ ³¯Â¥ÀÇ validation.
 * ------------------------------------------------------------------------------------------------ */
function checkTime(value)
{
    var hh = eval(value.substring(0, 2));
    var mm = eval(value.substring(2, 4));

    var date = new Date(2004, 1, 1, hh, mm);

    if (1 != date.getDate() || 
        hh != date.getHours() || 
        mm != date.getMinutes()) {
        return false;
    }
    return true;
}


/* ------------------------------------------------------------------------------------------------
 * ÁÖ¹Îµî·Ï¹øÈ£ À¯È¿¼º Ã¼Å© (13ÀÚ¸®)
 * ------------------------------------------------------------------------------------------------ */
function isRegNo(regNo)
{
    if (regNo == "") {
        return true;
    }

    if (regNo.length != 13) {
        alert("ÁÖ¹Îµî·Ï¹øÈ£´Â 13ÀÚ¸® ÀÔ´Ï´Ù.");
        return false;
    }

    var sum = 0;

    for (var i=0; i<12; i++) {
        m = (i+2)%10;
        if (i > 7) m += 2;

        sum += eval(regNo.charAt(i))*m;
    }

    var chkNum = (11 - sum%11)%10;
    if (chkNum != eval(regNo.charAt(12))) {
        alert('À¯È¿ÇÏÁö ¾ÊÀº ÁÖ¹Îµî·Ï¹øÈ£ ÀÔ´Ï´Ù !');
        return false;
    }
    return true;
}

/* ------------------------------------------------------------------------------------------------
 * »ç¾÷ÀÚ¹øÈ£ À¯È¿¼º Ã¼Å© (10ÀÚ¸®)
 * ------------------------------------------------------------------------------------------------ */
function isSaUpNo(saUpNo)
{
	var checkID = new Array(1, 3, 7, 1, 3, 7, 1, 3, 5, 1); 
	var bizID = saUpNo; 
	var i, Sum=0, c2, remander; 
	
	for (i=0; i<=7; i++) Sum += checkID[i] * bizID.charAt(i); 
	
	c2 = "0" + (checkID[8] * bizID.charAt(8)); 
	c2 = c2.substring(c2.length - 2, c2.length); 
	
	Sum += Math.floor(c2.charAt(0)) + Math.floor(c2.charAt(1)); 
	
	remander = (10 - (Sum % 10)) % 10 ; 
	
	if (Math.floor(bizID.charAt(9)) != remander || bizID == "0000000000") { 
		alert("À¯È¿ÇÏÁö ¾ÊÀº »ç¾÷ÀÚµî·Ï¹øÈ£ ÀÔ´Ï´Ù.");
        return false;
	} 

    return true;
}

/* ------------------------------------------------------------------------------------------------
 * ¹ýÀÎ¹øÈ£ À¯È¿¼º Ã¼Å© (13ÀÚ¸®)
 * ------------------------------------------------------------------------------------------------ */
function isBubInNo(bubInNo)
{
    if (bubInNo.length != 13) {
        alert("¹ýÀÎ¹øÈ£´Â 13ÀÚ¸® ÀÔ´Ï´Ù.");
        return false;
    }

    var m = 1;
    var sum = 0;

    for (var i=0; i<12; i++) {
        sum += eval(bubInNo.charAt(i))*m;
        m = (m == 1) ? 2 : 1;
    }

    var chkNum = (10 - sum%10)%10;
    if (chkNum != eval(bubInNo.charAt(12))) {
        alert('À¯È¿ÇÏÁö ¾ÊÀº ¹ýÀÎ¹øÈ£ ÀÔ´Ï´Ù !');
        return false;
    }
    return true;
}

/* ------------------------------------------------------------------------------------------------
 * ¿Ü±¹ÀÎµî·Ï¹øÈ£ À¯È¿¼º Ã¼Å© (13ÀÚ¸®)
 * ------------------------------------------------------------------------------------------------ */
function isFgnNo(fgnNo)
{
    var sum = 0;
    var odd = 0;
    
    buf = new Array(13);
    for (i = 0; i < 13; i++) buf[i] = parseInt(fgnNo.charAt(i));

    odd = buf[7]*10 + buf[8];
    
    if (odd%2 != 0) {
      return false;
    }

    if ((buf[11] != 6)&&(buf[11] != 7)&&(buf[11] != 8)&&(buf[11] != 9)) {
      return false;
    }
        
    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]);


    sum=11-(sum%11);
    
    if (sum>=10) sum-=10;

    sum += 2;

    if (sum>=10) sum-=10;

    if ( sum != buf[12]) {
        return false;
    }
    else {
        return true;
    }
}

/* ------------------------------------------------------------------------------------------------
 * ÀÌ¸ÞÀÏ ÁÖ¼Ò À¯È¿¼º Ã¼Å© 
 * ------------------------------------------------------------------------------------------------ */
function chkMail(isval)
{	
	if(isval != '')
	{	
		//var emailEx1 = /^(\w+(?:\.\w+)*)@((?:\w+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/;
		var emailEx1 = /^[_0-9a-zA-Z-]+(\.[_0-9a-zA-Z-]+)*@[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*$/;
			if(!emailEx1.test(isval)) return false;	
	}
	return true;
}


/* ------------------------------------------------------------------------------------------------
 * HashMap
 * ------------------------------------------------------------------------------------------------ */
function HashMap()
{
    this.keys    = new Array();  // Å°¹è¿­
    this.values  = new Array();  // °ª¹è¿­

    // Å°¹è¿­À» ¸®ÅÏÇÑ´Ù.
    this.getKeys = function() {
        return this.keys;
    }

    // °ª¹è¿­À» ¸®ÅÏÇÑ´Ù.
    this.getValues = function() {
        return this.values;
    }

    // map¿¡ ÀúÀåµÈ ¸ðµç ¿ä¼Ò¸¦ »èÁ¦ÇÑ´Ù.
    this.clear = function() {
        this.keys = null;
        this.values = null;
        this.keys = new Array();
        this.values = new Array();
    }

    // HashMapÀÇ Å©±â¸¦ ¸®ÅÏÇÑ´Ù.
    this.size = function() {
        return this.keys.length;
    }

    // HashMapÀÌ ºñ¾îÀÖ´ÂÁö Ã¼Å©ÇÑ´Ù.
    this.isEmpty = function() {
        return (this.keys.length == 0) ? true : false;
    }

    // HashMap¿¡ ÇØ´çÅ°·Î °ªÀ» ³Ö´Â´Ù.
    this.put = function(key, value) {
        var i = 0;
        for (i=0; i<this.keys.length; i++) {
            if (this.keys[i] == key) {
                break;
            }
        }
        this.keys[i]  = key;
        this.values[i] = value;
    }

    // HashMap¿¡¼­ Å°¿¡ ÇØ´çÇÏ´Â °ªÀ» ¸®ÅÏÇÑ´Ù.¾øÀ¸¸é(null)
    this.get = function(key) {
        var value = null;
        for (var i=0; i<this.keys.length; i++) {
            if (this.keys[i] == key) {
                value = this.values[i];
                break;
            }
        }
        return value;
    }

    // HashMap¿¡¼­ Å°¿¡ ÇØ´çÇÏ´Â ¿ä¼Ò¸¦ Á¦°ÅÇÑ´Ù.
    this.remove = function(key) {
        var value = null;
        var i = 0;
        for (i=0; i<this.keys.length; i++) {
            if (this.keys[i] == key) {
                value = this.values[i];
                break;
            }
        }

        if (value != null) {
            // ¸¶Áö¸· ¿ä¼Ò°¡ ¾Æ´Ò ¶§¿¡¸¸ HashMapÀ» Á¤¸®ÇÑ´Ù.
            if (i+1 != this.keys.length) {
                for (var j=i+1; j<this.keys.length; j++) {
                    this.keys[j-1] = this.keys[j];
                    this.values[j-1] = this.values[j];
                }
            }
        
            // Å° ¹è¿­°ú °ª ¹è¿­ÀÇ ¸¶Áö¸· ¿ä¼Ò Á¦°Å
            this.keys.pop();
            this.values.pop();
        }
    }

    /*
    this.showContents = function() {
        var contents = '';
        for (var i=0; i<this.keys.length; i++) {
            contents += '## ' + this.keys[i] + ' : ' + this.values[i] + '\n';
        }

        return contents;
    }
    */
}


/* ------------------------------------------------------------------------------------------------
 * ÇØ´çÀÏÀÚ¿¡ +,- ÀÏÀ» °è»êÇÏ¿© µ¹·ÁÁØ´Ù.
 * (¡Ø ¿ùÀÇ ¼ýÀÚ´Â 1¿ù=0,12¿ù=11,.. ·Î ÀÎ½ÄµÇ´Ï ³ÖÀ»¶§ -1, °¡Á®¿Ã¶§ +1 ÇÑ´Ù.)
 * ------------------------------------------------------------------------------------------------ */
function operDate(str, oper)
{
    var date = str.split("-");
    var next_date = new Date(date[0],date[1]-1,date[2]);
    var next_str = "";

    if (next_date=="NaN")
    {
        //alert("Á¦´ë·ÎµÈ³¯Â¥¸¦ ÀÔ·ÂÇÏ½Ê½Ã¿À.");
    }
    else
    {
        next_date.setDate(next_date.getDate() + oper);

        var year = next_date.getYear();
        var month = next_date.getMonth() + 1;
        var day = next_date.getDate();

        if (month < 10) { month = "0" + month; }
        if (day < 10) { day = "0" + day; }

        next_str = (year + "-" + month + "-" + day);
    }

    return next_str;
}


/* ------------------------------------------------------------------------------------------------
 * SelectBoxÀÇ ¼±ÅÃµÈ ¿É¼ÇÀ» SelectBox·Î ÀÌµ¿
 * ------------------------------------------------------------------------------------------------ */
function moveSelectedOptions(from,to)
{
    // Move them over
    if (!hasOptions(from)) { return; }
    for (var i=0; i<from.options.length; i++) {
        var o = from.options[i];
        if (o.selected) {
            if (!hasOptions(to)) { var index = 0; } else { var index=to.options.length; }
            to.options[index] = new Option( o.text, o.value, false, false);
        }
    }
    // Delete them from original
    for (var i=(from.options.length-1); i>=0; i--) {
        var o = from.options[i];
        if (o.selected) {
            from.options[i] = null;
        }
    }
    
    if (arguments.length<3) {
        sortSelect(from);
        sortSelect(to);
    }
    from.selectedIndex = -1;
    to.selectedIndex = -1;
}

/* ------------------------------------------------------------------------------------------------
 * SelectBoxÀÇ ¼±ÅÃµÈ ¿É¼ÇÀ» SelectBox·Î º¹»ç
 * ------------------------------------------------------------------------------------------------ */
function copySelectedOptions(from,to)
{
    var options = new Object();
    if (hasOptions(to)) {
        for (var i=0; i<to.options.length; i++) {
            options[to.options[i].value] = to.options[i].text;
        }
    }
    if (!hasOptions(from)) { return; }
        for (var i=0; i<from.options.length; i++) {
            var o = from.options[i];
            if (o.selected) {
                if (options[o.value] == null || options[o.value] == "undefined" || options[o.value]!=o.text) {
                    if (!hasOptions(to)) { var index = 0; } else { var index=to.options.length; 
                }
                to.options[index] = new Option( o.text, o.value, false, false);
            }
        }
    }
    if (arguments.length<3) {
        sortSelect(to);
    }
    from.selectedIndex = -1;
    to.selectedIndex = -1;
}

/* ------------------------------------------------------------------------------------------------
 * SelectBoxÀÇ ¼±ÅÃµÈ ¿É¼ÇÀ» Á¦°Å
 * ------------------------------------------------------------------------------------------------ */
function removeSelectedOptions(from)
{ 
    if (!hasOptions(from)) { return; }
    if (from.type=="select-one") {
        from.options[from.selectedIndex] = null;
    }
    else {
        for (var i=(from.options.length-1); i>=0; i--) { 
            var o=from.options[i]; 
            if (o.selected) { 
                from.options[i] = null; 
            } 
        }
    }
    from.selectedIndex = -1; 
} 

/* ------------------------------------------------------------------------------------------------
 * SelectBoxÀÇ ¸ðµç ¿É¼ÇÀ» Á¦°Å
 * ------------------------------------------------------------------------------------------------ */
function removeAllOptions(from)
{ 
    if (!hasOptions(from)) { return; }
    for (var i=(from.options.length-1); i>=0; i--) { 
        from.options[i] = null; 
    } 
    from.selectedIndex = -1; 
} 

/* ------------------------------------------------------------------------------------------------
 * SelectBoxÀÇ ¿É¼ÇÀ» Ãß°¡
 * ------------------------------------------------------------------------------------------------ */
function addOption(obj,text,value,selected)
{
    if (obj!=null && obj.options!=null)
    {
        var options = new Object();
        if (hasOptions(obj)) {
            for (var i=0; i<obj.options.length; i++) {
                options[obj.options[i].value] = obj.options[i].text;
            }

            if (options[value] == null || options[value] == "undefined" || options[value]!=text) {
                obj.options[obj.options.length] = new Option(text, value, false, selected);
            }
        }

        sortSelect(obj);
        obj.selectedIndex = -1;
    }
}

/* ------------------------------------------------------------------------------------------------
 * SelectBoxÀÇ ¿É¼ÇÀ» Á¤·Ä
 * ------------------------------------------------------------------------------------------------ */
function sortSelect(obj)
{
    var o = new Array();
    if (!hasOptions(obj)) { return; }
    for (var i=0; i<obj.options.length; i++) {
        o[o.length] = new Option( obj.options[i].text, obj.options[i].value, obj.options[i].defaultSelected, obj.options[i].selected);
    }
    if (o.length==0) { return; }
    o = o.sort( 
        function(a,b) { 
            if ((a.text+"") < (b.text+"")) { return -1; }
            if ((a.text+"") > (b.text+"")) { return 1; }
            return 0;
        } 
    );

    for (var i=0; i<o.length; i++) {
        obj.options[i] = new Option(o[i].text, o[i].value, o[i].defaultSelected, o[i].selected);
    }
}

/* ------------------------------------------------------------------------------------------------
 * SelectBoxÀÇ ¿É¼ÇÁ¸Àç À¯¹«
 * ------------------------------------------------------------------------------------------------ */
function hasOptions(obj)
{
    if (obj!=null && obj.options!=null) { return true; }
    return false;
}


/* ------------------------------------------------------------------------------------------------
 * ÄíÅ°ÀúÀå, ÄíÅ° °¡Á®¿À±â
 * ------------------------------------------------------------------------------------------------ */
function setCookie(name, value, day) {
    var expdate = new Date();
    expdate.setTime(expdate.getTime() + 1000 * 60 * 60 * 24 * day); // 1900ÀÌ»ó µÇ¾î¾ß ÄíÅ° »ý¼ºµÊ
    var cookieStr = name + "=" + escape(value) + ((expdate == null)?"":("; path=/; expires=" + expdate.toGMTString()));
    document.cookie = cookieStr;
}

function getCookie(name) {
    var first;
    var str = name + "=";
    if(document.cookie.length > 0) {
        find = document.cookie.indexOf(str)
        if(find == -1)
            return null;
        first = find + str.length;
        end = document.cookie.indexOf(";", first) ;
        
        if(end == -1)
            end = document.cookie.length ;
    
        return unescape(document.cookie.substring(first, end)) ;
    }
}

function delCookie(name) {
	var expdate = new Date();

	expdate.setDate(expdate.getDate()-1);
	var cookieStr = name + "=" + "; expires=" + expdate.toGMTString() + "; path=/";
	document.cookie = cookieStr;
}


function addSetCookie(name, value){

	if(chkCookieVal(name, value)){

		var mValue = getCookie(name);

		if(mValue == "" || mValue == null)
			mValue = value;
		else
			mValue = mValue + "," + value;

		setCookie(name, mValue, 1);
	}
}

function chkCookieVal(name, value){

	var mValue = getCookie(name);

	if(mValue != null){
		
		var arrVal = mValue.split(",");

		for(var i=0; i < arrVal.length; i++){
			if(arrVal[i] == value)
				return false;
		}
	}
	return true;
}


/* -------------------------------------------------------
 * ¼Ò¼öÁ¡ ÀÌÇÏ ÀÚ¸®¼ö Ã¼Å©
 * ------------------------------------------------------- */
function checkDecimal (input, digit) {
	var str = Trim (input.value);
	var len = str.length - 1;
	var dot = str.indexOf (".");
	if (dot == -1)
		return;

	if (digit == 0) {
		alert ("Á¤¼ö¸¸ ÀÔ·ÂÇØ¾ß ÇÕ´Ï´Ù.");
		str = str.substring (0, dot);
		input.value = str;
		return false;
	}

	if ((len - dot) > digit) {
		alert ("ÀÔ·Â°ªÀº ¼Ò¼öÁ¡ ¾Æ·¡ " + digit + "ÀÚ¸®±îÁö Çã¿ëµË´Ï´Ù.");
		str = str.substring (0, dot + digit + 1);
		input.value = str;
		return false;
	}
	return true;
}

/**
 * ÀÔ·Â°ª¿¡ Æ¯Á¤ ¹®ÀÚ(chars)°¡ ÀÖ´ÂÁö Ã¼Å©
 * Æ¯Á¤ ¹®ÀÚ¸¦ Çã¿ëÇÏÁö ¾ÊÀ¸·Á ÇÒ ¶§ »ç¿ë
 * ex) if (containsChars(form.name,"!,*&^%$#@~;")) {
 *         alert("ÀÌ¸§ ÇÊµå¿¡´Â Æ¯¼ö ¹®ÀÚ¸¦ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.");
 *     }
 */
function containsChars(input,chars) {
    for (var inx = 0; inx < input.value.length; inx++) {
       if (chars.indexOf(input.value.charAt(inx)) != -1)
           return true;
    }
    return false;
}

/**
 * ÀÔ·Â°ªÀÌ Æ¯Á¤ ¹®ÀÚ(chars)¸¸À¸·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
 * Æ¯Á¤ ¹®ÀÚ¸¸ Çã¿ëÇÏ·Á ÇÒ ¶§ »ç¿ë
 * ex) if (!containsCharsOnly(form.blood,"ABO")) {
 *         alert("Ç÷¾×Çü ÇÊµå¿¡´Â A,B,O ¹®ÀÚ¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.");
 *     }
 */
function containsCharsOnly(input,chars) {
    for (var inx = 0; inx < input.value.length; inx++) {
       if (chars.indexOf(input.value.charAt(inx)) == -1)
           return false;
    }
    return true;
}

/**
 * ÀÔ·Â°ªÀÌ ¾ËÆÄºªÀÎÁö Ã¼Å©
 * ¾Æ·¡ isAlphabet() ºÎÅÍ isNumComma()±îÁöÀÇ ¸Þ¼Òµå°¡
 * ÀÚÁÖ ¾²ÀÌ´Â °æ¿ì¿¡´Â var chars º¯¼ö¸¦
 * global º¯¼ö·Î ¼±¾ðÇÏ°í »ç¿ëÇÏµµ·Ï ÇÑ´Ù.
 * ex) var uppercase = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
 *     var lowercase = "abcdefghijklmnopqrstuvwxyz";
 *     var number    = "0123456789";
 *     function isAlphaNum(input) {
 *         var chars = uppercase + lowercase + number;
 *         return containsCharsOnly(input,chars);
 *     }
 */
function isAlphabet(input) {
    var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
    return containsCharsOnly(input,chars);
}

/**
 * ÀÔ·Â°ªÀÌ ¾ËÆÄºª ´ë¹®ÀÚÀÎÁö Ã¼Å©
 */
function isUpperCase(input) {
    var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    return containsCharsOnly(input,chars);
}

/**
 * ÀÔ·Â°ªÀÌ ¾ËÆÄºª ¼Ò¹®ÀÚÀÎÁö Ã¼Å©
 */
function isLowerCase(input) {
    var chars = "abcdefghijklmnopqrstuvwxyz";
    return containsCharsOnly(input,chars);
}

/**
 * ÀÔ·Â°ª¿¡ ¼ýÀÚ¸¸ ÀÖ´ÂÁö Ã¼Å©
 */
function isNumber(input) {
    var chars = "0123456789";
    return containsCharsOnly(input,chars);
}

/**
 * ÀÔ·Â°ªÀÌ ¾ËÆÄºª,¼ýÀÚ·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
 */
function isAlphaNum(input) {
    var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
    return containsCharsOnly(input,chars);
}

/**
 * ÀÔ·Â°ªÀÌ ¼ýÀÚ,´ë½Ã(-)·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
 */
function isNumDash(input) {
    var chars = "-0123456789";
    return containsCharsOnly(input,chars);
}

/**
 * ÀÔ·Â°ªÀÌ ¼ýÀÚ,ÄÞ¸¶(,)·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
 */
function isNumComma(input) {
    var chars = ",0123456789";
    return containsCharsOnly(input,chars);
}

/**
 * Ä¡È¯ 
 
function replaceAll(str, from, to){
	var idx = str.indexOf( from );
	while ( idx > -1 ) {
		str = str.replace(from, to);
		idx = str.indexOf(from);
	}
	return str;
}
*/

//Ä¡È¯ Á¤±Ô½Ä  »ç¿ë¹ý : temp.replaceAll("a","b");
String.prototype.replaceAll = replaceAll;
function replaceAll(from, to){
	var str = this;
	str = str.replace(new RegExp(from,"g"),to);
	return str;
}

