/*
' -----------------------------------------------------------------------------
' Function    : gfn_winOpen()
' Description : open Center Window
' CreateDate  : 2008-09-20
' Argument    : 
' Return      : 
' -----------------------------------------------------------------------------
*/
function gfn_winOpen() {
	var lo_arg = gfn_winOpen.arguments;
	var ls_url = (lo_arg[0] == undefined) ? "" : lo_arg[0];  // url 
	var ls_win = (lo_arg[1] == undefined) ? "" : lo_arg[1];  // windown name
	var li_w   = (lo_arg[2] == undefined) ? "" : lo_arg[2];  // width
	var li_h   = (lo_arg[3] == undefined) ? "" : lo_arg[3];  // height
	var ls_s   = (lo_arg[4] == undefined) ? "0" : lo_arg[4]; // scroll

	var li_width  = (screen.width  - li_w) / 2;
	var li_height = (screen.height - li_h) / 2;
	var lo_win = window.open(ls_url,ls_win,'status=yes,menubar=0,locationbar=0,toolbar=0,scrollbars=' + ls_s + ',resizable=0,left='+li_width+',top='+li_height+',width='+li_w+',height='+li_h);
	return lo_win;
}

/*
' -----------------------------------------------------------------------------
' Function    : gfn_nextFocus(aroThis,arsNext)
' Description : Next Control Focus
' CreateDate  : 2008-09-20
' Argument    : 
' Return      : 
' -----------------------------------------------------------------------------
*/
function gfn_nextFocus(aroThis,arsNext) {
	var li_maxLength = aroThis.maxLength;
	if(li_maxLength == aroThis.value.length) {
		document.getElementsByName(arsNext)[0].focus();
	}
}

/*
' -----------------------------------------------------------------------------
' Function    : gfn_nameChk(arsName)
' Description : name Check
' CreateDate  : 2008-09-20
' Argument    : 
' Return      : 
' -----------------------------------------------------------------------------
*/
function gfn_nameChk(arsName) {
	var lo_pattern = /[ ^@&#$*!%\\|.,\/?0-9a-zA-Z]/;
	return (lo_pattern.test(arsName)) ? false : true;
}

/*
' ------------------------------------------------------------------
' Function    : gfn_juminChk(arsStr)
' Description : ÁÖ¹Îµî·Ï¹øÈ£ Ã¼Å©
' Argument    : String Ã¼Å©ÇÒ ¹®ÀÚ
' Return      : Á¤»óÀûÀÌ¸é true ºñÁ¤»óÀûÀÌ¸é false
' ------------------------------------------------------------------
*/
function gfn_juminChk(arsStr) {
	// [¼ýÀÚ 6ÀÚ¸®] ´ÙÀ½ [-] ´ÙÀ½ [¼ýÀÚ 7 ÀÚ¸®] ÀÎÁö Ã¼Å©ÇÑ´Ù.
	var lo_pattern = /^([0-9]{6})-?([0-9]{7})$/; 
	if (!lo_pattern.test(arsStr)) return false;

	// - Á¦¿ÜÇÑ °ªÀ» ¹Þ´Â´Ù.
	var li_num   = RegExp.$1 + RegExp.$2;

	var li_sum   = 0;
	var li_last  = li_num.charCodeAt(12) - 0x30;
	var ls_bases = "234567892345";

	for (var i=0; i<12; i++)
	{
		// ¼ýÀÚ°¡ ¾Æ´Ï¸é false
		if (isNaN(li_num.substring(i,i+1))) return false;

		// ÀüÃ¼ÇÕ°è¸¦ ³½´Ù.
		li_sum += (li_num.charCodeAt(i) - 0x30) * (ls_bases.charCodeAt(i) - 0x30);
	}
	var li_mod = li_sum % 11;
	return ((11 - li_mod) % 10 == li_last) ? true : false;
}

/*
' ------------------------------------------------------------------
' Function    : gfn_numChk(arsStr)
' Description : ¼ýÀÚ¸¸ »ç¿ë°¡´É Ã¼Å©
' Argument    : String Ã¼Å©ÇÒ ¹®ÀÚ
' Return      : Á¤»óÀûÀÌ¸é true ºñÁ¤»óÀûÀÌ¸é false
' ------------------------------------------------------------------
*/
function gfn_numChk(arsStr) {
	var lo_pattern = /^[0-9]+$/;
	return (lo_pattern.test(arsStr)) ? true : false;
}

/*
' ------------------------------------------------------------------
' Function    : gfn_phoneChk(arsStr)
' Description : ÀüÈ­¹øÈ£ Ã¼Å©
' Argument    : String Ã¼Å©ÇÒ ¹®ÀÚ
' Return      : Á¤»óÀûÀÌ¸é true ºñÁ¤»óÀûÀÌ¸é false
' ------------------------------------------------------------------
*/
function gfn_phoneChk(arsStr) {
	var lo_pattern = /^([0]{1}[0-9]{1,2})-?([1-9]{1}[0-9]{2,3})-?([0-9]{4})$/;
	return (lo_pattern.test(arsStr)) ? true : false;   
}

/*
' ------------------------------------------------------------------
' Function    : gfn_emailChk(arsStr)
' Description : ÀÌ¸ÞÀÏ Ã¼Å©ÇÔ¼ö
' Argument    : String Ã¼Å©ÇÒ ¹®ÀÚ
' Return      : Á¤»óÀûÀÌ¸é true ºñÁ¤»óÀûÀÌ¸é false
' ------------------------------------------------------------------
*/
function gfn_emailChk(arsStr) {
	var lo_pattern = /^[_a-zA-Z0-9-\.]+@[\.a-zA-Z0-9-]+\.[a-zA-Z]+$/;
	return (lo_pattern.test(arsStr)) ? true : false;
}
