<!--

/********************************************************
*	Method	 			: String.prototype.trim
*	Remark				: ¾ç³¡´Ü °ø¹éÁ¦°Å ¸Þ¼Òµå
*	Use					: value.trim();
***	value		: string value
********************************************************/

String.prototype.trim=function() {
	return this.replace(/^\s+|\s+$/g,'');
}

/********************************************************
*	Method	 			: String.prototype.number_format
*	Remark				: number format
*	Use					: value.number_format();
***	value		: int value
********************************************************/

String.prototype.number_format=function() {
	return this.replace(/(\d)(?=(?:\d{3})+(?!\d))/g,'$1,');
}

/********************************************************
*	Function			: void onlyNo(obj)
*	Remark				: ¼ýÀÚÃ¼Å©
*	Use					: onlnyNo(obj)
***	obj			: object
********************************************************/

function onlyNo(obj) {
	obj.value	 = obj.value.replace(/\D/g,'');
}


/********************************************************
*	Function			: bool regCheck(string regular,object obj)
*	Remark				: Á¤±ÔÇ¥Çö½Ä Ã¼Å© ÇÔ¼ö
*	Use					: regCheck(regular,obj);
***	regular		: Á¤±ÔÇ¥Çö½Ä
***	obj			: object
********************************************************/

function regCheck(regular,obj) {
	var v = obj.value.trim();

	var regularEmail			=	/^\w+@[._a-zA-Z0-9]+\.[a-zA-Z]{2,4}$/;
	var regularID				=	/^[a-zA-Z]+[_a-zA-Z0-9]{1,19}$/;
	var regularPwd			=  /^\S{4,12}$/
	var regularHomepage	=	/^([a-zA-Z]+:\/\/)?([_a-zA-Z0-9]+\.[_a-zA-Z0-9]+)+(\/[\S]+)?/;
	var regularProtocol		=	/^[a-zA-Z]+:[\/]{2}/;
	var regularNumber		=  /^[0-9]*$/;
	var regularAlphabet		=	/^[a-zA-Z]*$/;
	var regularTable			=	/^[a-zA-Z]+[_a-zA-Z0-9]{1,19}$/;
	var regexYear				= /^\d{4}$/;
	
	var msg						= "";

	switch (regular) {
		case 'regularNumber' :
			msg='¼ýÀÚ·Î¸¸ ÀÔ·ÂÇØÁÖ¼¼¿ä';
		break;
		case 'regularID' :
			msg='¾ÆÀÌµðÀÇ Ã¹¹®ÀÚ´Â ¿µ¹®ÀÌ°í 20ÀÚ ÀÌÇÏ ¼ýÀÚ¿Í ¿µ¹®ÀÚ·Î ÀÔ·ÂÇØÁÖ¼¼¿ä';
		break;
		case 'regularAlphabet' :
			msg='¿µ¹®ÀÚ¸¸ ÀÔ·ÂÇÏ¼¼¿ä';
		break;
		case 'regularEmail' :
			msg='¿Ã¹Ù¸¥ email ÁÖ¼Ò°¡ ¾Æ´Õ´Ï´Ù.';
		break;
		case 'regularHomepage' :
			msg='¿Ã¹Ù¸¥ URL ÁÖ¼Ò°¡ ¾Æ´Õ´Ï´Ù.';
		break;
		case 'regularProtocol' :
			msg='¿Ã¹Ù¸¦ protocolÀÌ ¾Æ´Õ´Ï´Ù.';
		break;
		case 'regexYear' :
			msg='4ÀÚ¸®ÀÇ ¼ýÀÚ·Î ÀÔ·ÂÇØÁÖ¼¼¿ä.';
		break;
		case 'regularPwd' : 
			msg='4~12 ÀÚ¸®·Î ÀÔ·ÂÇØÁÖ¼¼¿ä';
		break;
	}

	var regular = eval(regular);

	if(regular.test(v))
		return true;
	else{
		alert(msg);
		obj.value="";
		obj.focus();
		return false;
	}

}

/********************************************************
*	Function			: bool objCheck(object obj [, string msg [, string regular]])
*	Remark				: form °´Ã¼ Ã¼Å© ÇÔ¼ö
*	Use					: objCheck(obj,msg,reg); ( ex : if(!objCheck(obj,msg,reg)) return false; )
***	obj			: object
***	msg			: null value ÀÏ°æ¿ìÀÇ massege, msg ¾øÀ»°æ¿ì null check ½ÇÇà ¾ÈÇÔ
***	regular		: Á¤±Ô Ç¥Çö½Ä
********************************************************/
function objCheck(obj,msg,regular) {
	if(obj && !obj.disabled) {
		var v = obj.value.trim();
		if(!v && msg) {
			alert(msg);
			if(obj.type!='hidden')
				obj.focus();

			return false;
		}
		else{
			if(regular && v) {
				if(regCheck(regular,obj))
					return true;
				else
					return false;
			}else
				return true;
		}
	}else
		return true;
}


function boxObjCheck(obj,msg) {
	if(obj) {

		var result = false;
		var cnt = obj.length;
		
		if(cnt > 0) {
		
			for(var i=0; i < cnt; i++) {
				if(obj[i].checked) {
					result = true;
					break;
				}
			}

			if(!result) {
				alert(msg);
			}
			
			return result;
		}

		return true;
	
	}

	return true;

}

/********************************************************
*	Function			: bool confirmCheck(string url, string msg [, string target])
*	Remark				: confirm check ÇÔ¼ö
*	Use					: confirmCheck(msg,url,target);
***	msg		: message
***	url		: url
***	target	: target
********************************************************/
function confirmCheck(url,msg,target) {
	target	= document.getElementsByName(target)[0];
	if(confirm(msg)) {
		if(!target)
			document.location.href=url;
		else
			target.document.location.href=url;
	}else
		return false;
}


/********************************************************
*	Function			: bool limitImageSize(object imgobj [, int x [, int y]]);
*	Remark				: ÀÌ¹ÌÁö Å©±â Á¦ÇÑ ÇÔ¼ö
*	Use					: limitImageSize(imgobj,x,y);
***	imgobj	: image object
***	x			: image width size
***	y			: image height size
********************************************************/
function limitImageSize(imgobj,x,y) {

	if(imgobj.value) {
		var limitX;
		var limitY;

		if(x > 0)
			limitX	= x;
		else
			limitX	= 0;
		if(y > 0)
			limitY	= y;
		else
			limitY	= 0;
		
		var img = new Image();
		img.src = imgobj.value;
		
		var width	= img.width;
		var height = img.height;
		var count=1;
		while(width < 1) {
			if(count > 10) break;
			var img = new Image();
			img.src = imgobj.value;
			width=img.width;
			height = img.height;
			count=count+1;
		}

		if(width > limitX || height > limitY) {
			alert("ÀÌ¹ÌÁö´Â °¡·Î " + limitX + ", ¼¼·Î " + limitY + " ÀÌÇÏ·Î Á¦ÇÑ µÇ¾îÀÖ½À´Ï´Ù..");
			return false;
		}
		else
			return true;
	}else
		return true;

}

/********************************************************
*	Function			: void stringAdd(string elementAdd, string elementArea [, string reg]);
*	Remark				: string Ãß°¡ ÇÔ¼ö
*	Use					: stringAdd(elementAdd,elementArea,reg);
***	elementAdd		: string ÀÔ·Â¹Þ´Â°÷ÀÇ element name
***	elementArea	: ÀÔ·Â¹ÞÀº stringÀÌ Àû¿ëµÇ´Â elements name
***	reg					: ÀÔ·Â¹ÞÀº stringÀÇ Á¤±ÔÇü Ç×¸ñ
********************************************************/
function stringAdd(elementAdd,elementArea,reg) {
	var addElement;
	var addArea;
	var addAreaValue;

	addElement			= document.getElementsByName(elementAdd)[0];
	addArea				= document.getElementsByName(elementArea)[0];
	addAreaValue		= addArea.value.split(",");

	if(!objCheck(addElement,"Ãß°¡µÉ °ªÀÌ ¾ø½À´Ï´Ù.",reg)) return false;

	for(var i=0;i<addAreaValue.length;i++) {
		if(addAreaValue[i] == addElement.value) {
			alert("ÀÌ¹Ì Ãß°¡µÇ¾îÀÖ½À´Ï´Ù.");
			addElement.value='';
			addElement.focus();
			return false;
		}
	}

	addArea.value	=	addArea.value+addElement.value+',';
	addElement.value='';
	addElement.focus();

}

/********************************************************
*	Function			: void stringDel(string elementDel, string elementArea [, string reg]);
*	Remark				: string »èÁ¦ ÇÔ¼ö
*	Use					: stringDel(elementDel,elementArea,reg);
***	elementDel		: string ÀÔ·Â¹Þ´Â°÷ÀÇ element name
***	elementArea	: ÀÔ·Â¹ÞÀº stringÀÌ Àû¿ëµÇ´Â elements name
***	reg					: ÀÔ·Â¹ÞÀº stringÀÇ Á¤±ÔÇü Ç×¸ñ
********************************************************/
function stringDel(elementDel,elementArea,reg) {

	var delElement;
	var delArea;
	var delAreaValue;
	var innerValue;

	delElement			= document.getElementsByName(elementDel)[0];
	delArea				= document.getElementsByName(elementArea)[0];
	delAreaValue		= delArea.value.split(",");

	if(!objCheck(delElement,"»èÁ¦µÉ °ªÀÌ ¾ø½À´Ï´Ù.",reg)) return false;

	innerValue	= '';
	for(i=0; i<delAreaValue.length-1;i++) {
		if(delAreaValue[i] != delElement.value)
			innerValue += delAreaValue[i]+",";
	}

	delArea.value=innerValue;
	delElement.value='';
	delElement.focus();

}

/********************************************************
*	Function			: void stringAllDelete(string deleteArea);
*	Remark				: string ÀüÃ¼»èÁ¦ ÇÔ¼ö
*	Use					: stringAllDelete(deleteArea);
***	deleteArea		: »èÁ¦µÉ °÷ÀÇ element name
********************************************************/
function stringAllDelete(deleteArea) {
	var area	= document.getElementsByName(deleteArea)[0];
	if(confirm('»èÁ¦ÇÏ½Ã°Ú½À´Ï±î?'))
		area.value='';
	else
		return false;
}

/********************************************************
*	Function			: void multiCheck(void);
*	Remark				: ÀüÃ¼ ¼±ÅÃ,ÇØÁ¦ ÇÔ¼ö
*	Use					: multiCheck(); return false;
********************************************************/

var checkEleName	= "listChk[]";
var clickEleName		= "checkState";
function multiCheck() {
	var listChk	= document.getElementsByName(checkEleName);
	var checkCount	=listChk.length;
	if(document.getElementsByName(clickEleName)[0].checked)
		document.getElementsByName(clickEleName)[0].checked=false;
	else
		document.getElementsByName(clickEleName)[0].checked=true;

	if(document.getElementsByName(clickEleName)[0].checked) {
		for(var i=0; i < checkCount; i++)
			listChk[i].checked	 = true;
	}
	else{
		for(var i=0; i < checkCount; i++)
			listChk[i].checked	 = false;
	}
}

/********************************************************
*	Function			: bool checkingCheck(void);
*	Remark				: ¼±ÅÃ Ã¼Å©ÇÔ¼ö
*	Use					: checkingCheck(); ( ex : if(!checkingCheck()) return false; )
********************************************************/

function checkingCheck() {
var listChk			= document.getElementsByName(checkEleName);
var checkCount	= listChk.length;
var state				= false;

	for(var i=0; i < checkCount; i++) {
		if(state	= listChk[i].checked)
			break;
	}

	if(!state)
		return false;
	else
		return true;
}







// ÁÖ¹Î¹øÈ£
function juminCheck(juminno) {
        if(juminno=="" || juminno==null || juminno.length!=13) {
                alert("ÁÖ¹Îµî·Ï¹øÈ£¸¦ Àû¾îÁÖ¼¼¿ä.");
                return false;
        }
        var jumin1 = juminno.substr(0,6);
        var jumin2 = juminno.substr(6,7);
        var yy           = jumin1.substr(0,2);        // ³âµµ
        var mm     = jumin1.substr(2,2);        // ¿ù
        var dd     = jumin1.substr(4,2);        // ÀÏ
        var genda  = jumin2.substr(0,1);        // ¼ºº°
        var msg, ss, cc;

        // ¼ýÀÚ°¡ ¾Æ´Ñ °ÍÀ» ÀÔ·ÂÇÑ °æ¿ì
        if (!isNumeric(jumin1)) {
                alert("ÁÖ¹Îµî·Ï¹øÈ£ ¾ÕÀÚ¸®¸¦ ¼ýÀÚ·Î ÀÔ·ÂÇÏ¼¼¿ä.");
                return false;
        }
        // ±æÀÌ°¡ 6ÀÌ ¾Æ´Ñ °æ¿ì
        if (jumin1.length != 6) {
                alert("ÁÖ¹Îµî·Ï¹øÈ£ ¾ÕÀÚ¸®¸¦ ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
                return false;
        }
        // Ã¹¹øÂ° ÀÚ·á¿¡¼­ ¿¬¿ùÀÏ(YYMMDD) Çü½Ä Áß ±âº» ±¸¼º °Ë»ç
        if (yy < "00" || yy > "99" ||
                mm < "01" || mm > "12" ||
                dd < "01" || dd > "31") {
                alert("ÁÖ¹Îµî·Ï¹øÈ£ ¾ÕÀÚ¸®¸¦ ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
                return false;
        }
        // ¼ýÀÚ°¡ ¾Æ´Ñ °ÍÀ» ÀÔ·ÂÇÑ °æ¿ì
        if (!isNumeric(jumin2)) {
                alert("ÁÖ¹Îµî·Ï¹øÈ£ µÞÀÚ¸®¸¦ ¼ýÀÚ·Î ÀÔ·ÂÇÏ¼¼¿ä.");
                return false;
        }
        // ±æÀÌ°¡ 7ÀÌ ¾Æ´Ñ °æ¿ì
        if (jumin2.length != 7) {
                alert("ÁÖ¹Îµî·Ï¹øÈ£ µÞÀÚ¸®¸¦ ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
                return false;
        }
        // ¼ºº°ºÎºÐÀÌ 1 ~ 4 °¡ ¾Æ´Ñ °æ¿ì
        if (genda < "1" || genda > "4") {
                alert("ÁÖ¹Îµî·Ï¹øÈ£ µÞÀÚ¸®¸¦ ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
                return false;
        }
        // ¿¬µµ °è»ê - 1 ¶Ç´Â 2: 1900³â´ë, 3 ¶Ç´Â 4: 2000³â´ë
        cc = (genda == "1" || genda == "2") ? "19" : "20";
        // Ã¹¹øÂ° ÀÚ·á¿¡¼­ ¿¬¿ùÀÏ(YYMMDD) Çü½Ä Áß ³¯Â¥ Çü½Ä °Ë»ç
        if (isYYYYMMDD(parseInt(cc+yy), parseInt(mm), parseInt(dd)) == false) {
                alert("ÁÖ¹Îµî·Ï¹øÈ£ ¾ÕÀÚ¸®¸¦ ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
                return false;
        }
        // Check Digit °Ë»ç
        if (!isSSN(jumin1, jumin2)) {
                alert("ÀÔ·ÂÇÑ ÁÖ¹Îµî·Ï¹øÈ£¸¦ °ËÅäÇÑ ÈÄ, ´Ù½Ã ÀÔ·ÂÇÏ¼¼¿ä.");
                return false;
        }
        return true;
}

function isYYYYMMDD(y, m, d) {
        switch (m) {
        case 2:        // 2¿ùÀÇ °æ¿ì
                if (d > 29) return false;
                if (d == 29) {
                        // 2¿ù 29ÀÇ °æ¿ì ´çÇØ°¡ À±³âÀÎÁö¸¦ È®ÀÎ
                        if ((y % 4 != 0) || (y % 100 == 0) && (y % 400 != 0))
                                return false;
                }
                break;
        case 4:        // ÀÛÀº ´ÞÀÇ °æ¿ì
        case 6:
        case 9:
        case 11:
                if (d == 31) return false;
        }
        // Å« ´ÞÀÇ °æ¿ì
        return true;
}
function isNumeric(s) {
        for (i=0; i<s.length; i++) {
                c = s.substr(i, 1);
                if (c < "0" || c > "9") return false;
        }
        return true;
}
function isLeapYear(y) {
        if (y < 100)
        y = y + 1900;
        if ( (y % 4 == 0) && (y % 100 != 0) || (y % 400 == 0) ) {
                return true;
        } else {
                return false;
        }
}
function getNumberOfDate(yy, mm) {
        month = new Array(29,31,28,31,30,31,30,31,31,30,31,30,31);
        if (mm == 2 && isLeapYear(yy)) mm = 0;
        return month[mm];
}
function isSSN(s1, s2) {
        n = 2;
        sum = 0;
        for (i=0; i<s1.length; i++)
                sum += parseInt(s1.substr(i, 1)) * n++;
        for (i=0; i<s2.length-1; i++) {
                sum += parseInt(s2.substr(i, 1)) * n++;
                if (n == 10) n = 2;
        }
        c = 11 - sum % 11;
        if (c == 11) c = 1;
        if (c == 10) c = 0;
        if (c != parseInt(s2.substr(6, 1))) return false;
        else return true;
}
//-->