/**
  ³»  ¿ë : ¾îµð¼­³ª Àû¿ëÇÒ¼öÀÖ´Â ÇÁ·ÎÅäÅ¸ÀÔ ¼±¾ð
  Âü  °í : javascript prototype 1.4 ¸Þ´º¾ó ÂüÁ¶
           http://www.sergiopereira.com/articles/prototype.js.html   (¿µ¹®»çÀÌÆ®)
		   http://openframework.or.kr/framework_reference/prototype_js/1.4.0/prototype.js.html (ÇÑ±Û»çÀÌÆ®)
		   À§ÀÇ »çÀÌÆ®¿¡¼­ ¹èÆ÷ÇÏ´Â prototype.js ¸¦ ±âº»À¸·Î ·Îµå ÇØÁØÈÄ ¾Æ·¡ÀÇ ÇÁ·ÎÅäÅ¸ÀÔÀ» »ç¿ëÇØ¾ßÇÑ´Ù

  ÀÛ¼ºÀÚ : ±èÁ¾Áø
  ÀÛ¼ºÀÏ : 2007-08-28
**/

function gScript()
{
}//end function gScript

gScript.prototype = {

	/**
	 ±â  ´É : ÆÐÅÏÀ» °Ë»çÇÑ´Ù
	 ÇÔ¼ö¸í : _ckPatten
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. nStr :[String] ¹®ÀÚ¿­
			  2. nPattern :[String] °Ë»öÇÒ ÆÐÅÏ
			  3. nMent :[String] °á°ú¸ÇÆ®
	 ¸®ÅÏ°ª : 1. nState : [boolen]
	 Âü  °í :
		var nStr = "asdfghgfds123456@#$%";
		var nPattern = /([a-zA-Z])/;
		var nMent = "¿µ¹®ÀÚ¸¸ ÀÔ·ÂÇÏ¼¼¿ä!";

		if(this._ckPatten(nStr, nPattern, nMent) == false)
		{
			Àû¿ëÇÒ ¾×¼Ç
		}
	**/
	_ckPatten : function(nStr, nPattern, nMent)
	{
		if(nStr.length == 0)
		{
			alert("³»¿ëÀ» ÀÔ·ÂÇÏ¼¼¿ä!");
			return nState = false;
		}else{
			for(var i=0; i<nStr.length; i++)
			{
				var nVal = nStr.charAt(i);
				var nMat = nVal.match(nPattern);

				if(nMat == null)
				{
					alert(nMent);
					return nState = false;
					break;
				}//end if
			}//end for
		}//end if
	},


	/**
	 ±â  ´É : ÁöÁ¤ ÆäÅÏ ¹Ýº¹ Ã¼Å©
	 ÇÔ¼ö¸í : _ckPattenCnt
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. nStr :[String] ¹®ÀÚ¿­
			  2. nPattern :[String] °Ë»öÇÒ ÆÐÅÏ
			  3. nMent :[String] °á°ú¸ÇÆ®
	 ¸®ÅÏ°ª : 1. nStCnt : [int] ¹Ýº¹°³¼ö
	 Âü  °í :
			var nStr = "1234dfdsa!@#$R#$%@";
			var nPatternEng = /([a-zA-Z])/;
			var nPatternNum = /([0-9])/;
			var nEng = this._ckPattenCnt(nStr, nPatternEng, nMent);
			var nNum = this._ckPattenCnt(nStr, nPatternNum, nMent);
	**/
	_ckPattenCnt : function(nStr, nPattern, nMent)
	{
		if(nStr.length == 0)
		{
			alert("³»¿ëÀ» ÀÔ·ÂÇÏ¼¼¿ä!");
			return nState = false;
		}else{
			var nCkCnt = 0;

			for(var i=0; i<nStr.length; i++)
			{
				var nVal = nStr.charAt(i);
				var nMat = nVal.match(nPattern);

				if(nMat != null)
				{
					nCkCnt ++;

				}//end if
			}//end for
			return nStCnt = nCkCnt;
		}
	},


	/**
	 ±â  ´É : ¾ËÆÄºª¸¸ ÀÔ·Â¹ÞÀ½
	 ÇÔ¼ö¸í : _ckAlpha
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. nObj :[String] ´ë»ó ¿ÀºêÁ§Æ® id ¸í
	 ¸®ÅÏ°ª : ¾øÀ½
	 Âü  °í :
			_ckAlpha('objectid');
	**/
	_ckAlpha : function (nObj)
	{
		var nObj = document.getElementById(nObj);
		var nStr = nObj.value;
		var nPattern = /([a-zA-Z])/;
		var nMent = "¿µ¹®ÀÚ¸¸ ÀÔ·ÂÇÏ¼¼¿ä!";

		if(this._ckPatten(nStr, nPattern, nMent) == false)
		{
			nObj.value = "";
			nObj.focus();

			return false;
		}else{
			return true;
		}
	},


	/**
	 ±â  ´É : ¼ýÀÚ¸¸ ÀÔ·Â¹ÞÀ½
	 ÇÔ¼ö¸í : _ckNum
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. nObj :[String] ´ë»ó ¿ÀºêÁ§Æ® id ¸í
	 ¸®ÅÏ°ª : ¾øÀ½
	 Âü  °í :
			_ckNum('objectid');
	**/
	_ckNum : function (nObj)
	{
		var nObj = document.getElementById(nObj);
		var nStr = nObj.value;
		var nPattern = /([0-9])/;
		var nMent = "¼ýÀÚ¸¸ ÀÔ·ÂÇÏ¼¼¿ä!";

		if(this._ckPatten(nStr, nPattern, nMent) == false)
		{
			nObj.value = "";
			nObj.focus();

			return false;
		}else{
			return true;
		}
	},


	/**
	 ±â  ´É : ¾ËÆÄºª, ¼ýÀÚ¸¸ ÀÔ·Â¹ÞÀ½
	 ÇÔ¼ö¸í : _ckAlphaNum
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. nObj :[String] ´ë»ó ¿ÀºêÁ§Æ® id ¸í
	 ¸®ÅÏ°ª : ¾øÀ½
	 Âü  °í :
			_ckAlphaNum('objectid');
	**/
	_ckAlphaNum : function (nObj)
	{
		var nObj = document.getElementById(nObj);
		var nStr = nObj.value;
		var nPattern = /([a-zA-Z])|([0-9])/;
		var nMent	= "¿µ¹®ÀÚ¿Í ¼ýÀÚ¸¸ ÀÔ·ÂÀÌ °¡´ÉÇÕ´Ï´Ù!";

		if(this._ckPatten(nStr, nPattern, nMent) == false)
		{
			nObj.value = "";
			nObj.focus();
		}else{

			var nPatternEng = /([a-zA-Z])/;
			var nPatternNum = /([0-9])/;
			var nEng = this._ckPattenCnt(nStr, nPatternEng, nMent);
			var nNum = this._ckPattenCnt(nStr, nPatternNum, nMent);

			if( nEng < 2 || nEng == false )
			{
				alert("¿µ¹®ÀÚ¸¦ ÃÖ¼Ò 2ÀÚ ÀÌ»ó ÀÔ·Â ÇÏ¼¼¿ä!");
				nObj.value = "";
				nObj.focus();
			}else{

				if( nNum < 2 || nNum == false )
				{
					alert("¼ýÀÚ¸¦ ÃÖ¼Ò 2ÀÚ ÀÌ»ó ÀÔ·Â ÇÏ¼¼¿ä!");
					nObj.value = "";
					nObj.focus();
				}//end if
			}//end if
		}//end if
	},


	/**
	 ±â  ´É : °ø¹éÀÌ ÀÖ´ÂÁö Ã¼Å©ÇÏ¿© ºó°ªÀ¸·Î Ã³¸®ÇÑ´Ù
	 ÇÔ¼ö¸í : _ckNull
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. nObj :[String] ´ë»ó ¿ÀºêÁ§Æ® id ¸í
	 ¸®ÅÏ°ª : ¾øÀ½
	 Âü  °í :
			_ckNull('objectid');
	**/
	_ckNull : function (nObj)
	{
		var nObj = document.getElementById(nObj);
		var nStr = nObj.value;
		var nStr2 = nStr.replace(/(^\s*)|(\s*)|(\s*$)/g,"");

		if(nStr2.length == 0 || !nStr2)
		{
			alert("³»¿ëÀ» ÀÔ·ÂÇÏ¼¼¿ä!");

			nObj.value = "";
			nObj.focus();
			return false;
		}else{
			return true;
		}

	},


	/**
	 ±â  ´É : ÀÔ·ÂµÈ ÃÖ¼Ò ÀÚ¸±¼ö¸¦ Ã¼¿ï¼ö ÀÖ°Ô °Ë»çÇÑ´Ù
	 ÇÔ¼ö¸í : _ckMinChip
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. nObj :[String] ´ë»ó ¿ÀºêÁ§Æ® id ¸í
			  2. nCnt :[int] ÀÔ·Â¹ÞÀ» ÃÖ¼Ò ÀÚ¸´¼ö
	 ¸®ÅÏ°ª : ¾øÀ½
	 Âü  °í :
			_ckMinChip('objectid',6);
	**/
	_ckMinChip : function(nObj,nCnt)
	{
		var nObj = document.getElementById(nObj);
		var nStr = nObj.value;
		if(nStr.length < nCnt)
		{
			alert("ÃÖ¼Ò "+ nCnt +"ÀÚ¸¦ ÀÔ·ÂÇØ¾ß ÇÕ´Ï´Ù!");
			nObj.focus();
			return false;
		}else{
			return true;
		}
	},


	/**
	 ±â  ´É : ÁÂ¿ì °ø¹é Á¦°Å
	 ÇÔ¼ö¸í : _setTrim
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. nStr :[String] ÁÂ¿ì °í¾×À» Á¦°ÅÇÒ ´ë»ó ¹®ÀÚ¿­
	 ¸®ÅÏ°ª : ¾øÀ½
	 Âü  °í :
			var nStr = " sdfasdfasd ";
			var nStr2 = _setTrim(nStr);
	**/
	_setTrim : function (nStr)
	{
		return nStr.replace(/(^\s*)|(\s*$)/g, "");
	},


	/**
	 ±â  ´É : ¿øÇÏ´Â ÀÚ¸´¼ö¸¸Å­ Ã¼¿ì°í ´ÙÀ½ ¿ÀºêÁ§Æ®·Î Æ÷Ä¿½º ÀÌµ¿
	 ÇÔ¼ö¸í : _setFullChipMove
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. nObj :[String] ´ë»ó ¿ÀºêÁ§Æ® id ¸í
			  2. nCnt :[int] ÀÔ·Â¹ÞÀ» ÃÖ¼Ò ÀÚ¸´¼ö
			  3. nNobj :[String] ÀÚ¸®¼ö°¡ Ã¼¿öÁ³À¸¸é ÀÌµ¿µÉ ¿ÀºêÁ§Æ® id
	 ¸®ÅÏ°ª : ¾øÀ½
	 Âü  °í :
			onKeyup ="gjs._setFullChipMove('objectid',5,'objectid2');"
	**/
	_setFullChipMove : function (nObj,nCnt,nNobj)
	{
		var nObj = document.getElementById(nObj);
		var nNObj = document.getElementById(nNobj);

		var nStrCnt = nObj.value;

		if(nStrCnt.length == nCnt)
		{
			nNObj.focus();
		}
	},


	/**
	 ±â  ´É : ¿£ÅÍÀÔ·ÂµÇ¸é ´ÙÀ½ °´Ã¼·Î Æ÷Ä¿½º ÀÌµ¿
	 ÇÔ¼ö¸í : _setEnterMoveFocus
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. event :[event] ÀÌº¥Æ®
              2. nNobj :[String] ÀÌµ¿µÉ ¿ÀºêÁ§Æ® id
	 ¸®ÅÏ°ª : ¾øÀ½
	 Âü  °í :
			onKeyup ="gjs._setEnterMoveFocus(event'objectid2');"
	**/
	_setEnterMoveFocus : function (event,nNobj)
	{
		if(event.keyCode == 13)
		{
			var nNObj = document.getElementById(nNobj);
			nNObj.focus();
		}//end if

	},

	/**
	 ±â  ´É : ÆË¾÷À¸·Î »õÃ¢¿­±â
	 ÇÔ¼ö¸í : _setOpenWin
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. nUrl :[String] ¿ÀÇÂµÉ À©µµ¿ì¿¡ Àû¿ëµÉ ÁÖ¼Ò
			  2. nNm :[String] ¿ÀÇÂµÉ À©µµ¿ì ÀÌ¸§
			  3. nW :[int] ¿ÀÇÂµÉ À©µµ¿ì ³ÐÀÌ
			  4. nH :[int] ¿ÀÇÂµÉ À©µµ¿ì ³ôÀÌ
			  5. nScroll :[String] ¿ÀÇÂµÉ À©µµ¿ì ½ºÅ©·Ñ¿©ºÎ
			  6. nResize :[String] ¿ÀÇÂµÉ À©µµ¿ì ¸®»çÀÌÂ¡ ¿©ºÎ
	 ¸®ÅÏ°ª : ¾øÀ½
	 Âü  °í :
			var nUrl = "http://www.test.com";
			var nNm = "testWin";
			var nW = 100;
			var nH = 200;
			var nScroll = "yes";
			var nResize = "yes";
			function (nUrl,nNm,nW,nH,nScroll,nResize);
	**/
	_setOpenWin : function (nUrl,nNm,nW,nH,nScroll,nResize)
	{
		window.open(nUrl,nNm,"toolbar=no,location=no,status=no,menubar=no,scrollbars="+nScroll+",resizable="+nResize+",width="+nW+",height="+nH);
	},


	/**
	 ±â  ´É : ·¹ÀÌ¾î ¿ÀºêÁ§Æ® »ý¼º
	 ÇÔ¼ö¸í : _setBlankDiv
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. nNm :[String] »ý¼ºµÉ ·¹ÀÌ¾î id
			  2. nX :[int] »ý¼ºµÉ ·¹ÀÌ¾î xÁÂÇ¥
			  3. nY :[int] »ý¼ºµÉ ·¹¸®¾î yÁÂÇ¥
			  4. nParent :[String] Æ¯Á¤ ¸ð°´Ã¼ ³»ºÎ¿¡ »ý¼ºÇÒ°æ¿ì ¸ð°´Ã¼ ¾ÆÀÌµð
	 ¸®ÅÏ°ª : ¾øÀ½
	 Âü  °í :
			<a href="javascript:gjs._setBlankDiv('blankLayer1',50,100);">ºó·¹ÀÌ¾î»ý¼º</a>
	**/
	_setBlankDiv : function (nNm,nX,nY,nParent)
	{
		var nCkObj = document.getElementById(nNm);
		var newElem = "";

		if(!nCkObj)
		{
			newElem = document.createElement("div");
			newElem.id = nNm;
			newElem.innerHTML = "<span></span>";

			if(!nParent)
			{
				with(newElem.style)
				{
					position = "absolute";
					display = "block";
					top = nY+"px";
					left = nX+"px";
					width = "0px";
					height = "0px";
					padding = "0px";
					margin = "0px";
					zIndex = "10000";
				}//end with
				document.body.appendChild(newElem);
			}else{
				with(newElem.style)
				{
					position = "static";
					display = "block";
					width = "0px";
					height = "0px";
					padding = "0px";
					margin = "0px";
					zIndex = "10000";
				}//end with
				var xxx = document.getElementById(nParent);
				xxx.appendChild(newElem);
			}//end if
		}//end if
	},


	/**
	 ±â  ´É : È­¸é»ó¿¡ º¸ÀÌ´Â ¿ÀºêÁ§Æ® Á¦°Å
	 ÇÔ¼ö¸í : _setRemoveEl
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. nId :[String] Á¦°ÅÇÒ ¿ÀºêÀèÆ® id
	 ¸®ÅÏ°ª : ¾øÀ½
	 Âü  °í :
			<a href="javascript:gjs._setRemoveEl('blankLayer1');">ºó·¹ÀÌ¾îÁ¦°Å</a> <br />
	**/
	_setRemoveEl : function(nId)
	{
		var nObj = document.getElementById(nId);
		nObj.parentNode.removeChild(nObj);
	},


	/**
	 ±â  ´É : È­¸é»ó¿¡ º¸ÀÌ´Â ¿ÀºêÁ§Æ® ¼û±â±â, Ç¥½ÃÇÏ±â
	 ÇÔ¼ö¸í : _setDivDpCnt
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. nObj :[String] ´ë»ó ¿ÀºêÁ§Æ® id ¸í
			  2. nMethod :[String] y(Ç¥½Ã), n(°¨Ãß±â)

	 ¸®ÅÏ°ª : ¾øÀ½
	 Âü  °í :
			<span onMouseOver="gjs._setDivDpCnt('xxxt','y');"  onMouseOut="gjs._setDivDpCnt('xxxt','n');" style="cursor:pointer">·¹ÀÌ¾î º¸¿´´Ù °¨Ãß±â1</span> <br />
			<span onMouseOver="gjs._setDivDpCnt('blankLayer1','y');"  onMouseOut="gjs._setDivDpCnt('blankLayer1','n');" style="cursor:pointer">»ý¼ºµÈ ·¹ÀÌ¾î º¸¿´´Ù °¨Ãß±â2</span> <br />
	**/
	_setDivDpCnt : function(nObjID,nMethod)
	{
		var nObj = document.getElementById(nObjID);
		switch(nMethod)
		{
			case "y" :
				nObj.style.display = "block";
			break;

			case "n" :
				nObj.style.display = "none";
			break;
		}
	},


	/**
	 ±â  ´É : ÀÌº¥Æ®°¡ ¹ß»ýÇÑ À§Ä¡¿¡ ·¹ÀÌ¾î»ý¼º
	 ÇÔ¼ö¸í : _setDivXYDP
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. e :[event] Å¬¸¯µî ¹ß»ýµÈ ÀÌº¥Æ® ¸®¼Ò½º
			  2. nNm :[String] »ý¼ºµÉ ·¹ÀÌ¾îid
	 ¸®ÅÏ°ª : ¾øÀ½
	 Âü  °í :
			<span onclick="gjs._setDivXYDP(event,'testDiv');" onMouseOut="gjs._setRemoveEl('testDiv');" style="cursor:pointer">¸¶¿ì½º Å¬¸¯3</span> <br />

			function qqq(e,nNm)
			{
				var obj = document.getElementById(nNm);

				if(!obj)
				{
					gjs._setDivXYDP(e,nNm);
				}else{
					gjs._setRemoveEl(nNm);
				}
			}
			<span onclick="qqq(event,'testDiv');" style="cursor:pointer">¸¶¿ì½º Å¬¸¯4</span> <br />
	**/
	_setDivXYDP : function (e,nNm)
	{
		var nXY = this._getMouseXY(e);
		this._setBlankDiv(nNm,nXY.x,nXY.y);
	},


	/**
	 ±â  ´É : ¸¶¿ì½º ÁÂÇ¥°ª ±¸ÇÏ±â
	 ÇÔ¼ö¸í : _getMouseXY
	 ÀÛ¼ºÀÚ : ±èÁ¾Áø
	 ÀÛ¼ºÀÏ : 2007-08-29
	 ÀÎ  ÀÚ : 1. e :[event] Å¬¸¯µî ¹ß»ýµÈ ÀÌº¥Æ® ¸®¼Ò½º
	 ¸®ÅÏ°ª : 1. x,y ÁÂÇ¥°ª
	 Âü  °í :
			function xxxx(e)
			{
				var tmp = gjs._getMouseXY(e);

				var aaa = tmp.x;
				var bbb = tmp.y;

				alert(aaa + " , " + bbb);
			}
			<span onclick="xxxx(event);" style="cursor:pointer">¸¶¿ì½º Å¬¸¯2</span> <br />
	**/
	_getMouseXY : function(e)
	{
		var nowX = e.clientX;
		var nowY = e.clientY+10;

		var nXY = {"x":nowX,"y":nowY};

		return nXY;
	}

};//end standard.prototype

var gjs = new gScript();