window.onerror = function(a,b,c) {return true;}
function calcDateDiff( mode, date1, date2 )   //  mode : 'day', 'week', 'month', 'year'
{
    var year1, year2, month1, month2, day1, day2;
    var date1, date2;
    var innerText = "";
    var oMonthDiff
	
    year1 = parseInt(date1.substring(0,4));
    year2 = parseInt(date2.substring(0,4));
    month1 = parseInt(date1.substring(4,6));
    month2 = parseInt(date2.substring(4,6));
    day1 = parseInt(date1.substring(6,8));
    day2 = parseInt(date2.substring(6,8));
    
    date1 = new Date(year1, month1-1, day1);
    date2 = new Date(year2, month2-1, day2);
	
    if( mode=="day" )
        return Math.floor((date2 - date1) / (1000 * 60 * 60 * 24 ));
    else if( mode=="week" )
        return Math.floor((date2 - date1) / (1000 * 60 * 60 * 24 * 7));
    else if( mode=="month" )
		{
			if((year2 - year1) == 0)
			{
				oMonthDiff = ((month2 - month1) * -1 )
			}
			else
			{
				oMonthDiff = (month2 - month1)
			}
			
        return (((year2 - year1) * 12 + oMonthDiff));
		}
    else if( mode=="year" )
        return (year2 - year1);

	
}

function textCounter(evt,field, countfield, maxlimit) {
	
	if (field.value.length > maxlimit) // if too long...trim it!
		
		// otherwise, update 'characters left' counter
		if (
			((evt.keyCode >= 35) && (evt.keyCode <= 40)) ||	// arrow and home,end
			(evt.keyCode == 45)||	(evt.keyCode == 46)||	// insert, delete
			(evt.keyCode == 8) ||	(evt.keyCode == 144) 	// BS, NumLock
			)
			{
				
			}
			else
			{
				evt.returnValue = false;
				if (evt.cancelable ) 
				{
				evt.preventDefault();
				}
			if (field.value.length > maxlimit)
			{
				field.value = field.value.substring(0, maxlimit);
			}
		}
	else
	{
		if(countfield != "")
			countfield.value = maxlimit - field.value.length;
	}
}

function textCounter2(evt,obj, maxlimit) {
	var ofield = obj;
	var ocountfield = obj;
	var oTD = obj;
	var olen = 0;
	
	while (oTD.tagName.toLowerCase() != "td")
	{oTD = oTD.parentNode}
	
	if(oTD.tagName.toLowerCase() == "td")
	{
		olen = oTD.children.length
		
		for (var i = 0; i < olen; i++)
		{		
			if(oTD.children[i].id.substring(0,3).toLowerCase() == "ctr")
			{
				ocountfield = oTD.children[i]
			}
		}
	}
	
	if (ofield.value.length > maxlimit) // if too long...trim it!
		
		// otherwise, update 'characters left' counter
		if (
			((evt.keyCode >= 35) && (evt.keyCode <= 40)) ||	// arrow and home,end
			(evt.keyCode == 45)||	(evt.keyCode == 46)||	// insert, delete
			(evt.keyCode == 8) ||	(evt.keyCode == 144) 	// BS, NumLock
			)
			{
				
			}
			else
			{
				evt.returnValue = false;
				if (evt.cancelable ) 
				{
				evt.preventDefault();
				}
			if (ofield.value.length > maxlimit)
			{
				ofield.value = ofield.value.substring(0, maxlimit);
			}
		}
	else
	{
		if(ocountfield != "")
			ocountfield.value = maxlimit - ofield.value.length;
	}
}

function textLimit(evt, maxlimit) {
	
	var oSrc = (evt.target) ? evt.target : evt.srcElement
	if (oSrc.value.length > maxlimit) // if too long...trim it!
	
		if (
			((evt.keyCode >= 35) && (evt.keyCode <= 40)) ||	// arrow and home,end
			(evt.keyCode == 45)||	(evt.keyCode == 46)||	// insert, delete
			(evt.keyCode == 8) ||	(evt.keyCode == 144) 	// BS, NumLock
			)
			{
				
			}
			else
			{
				evt.returnValue = false;
				if (evt.cancelable ) 
				{
				evt.preventDefault();
				}
			if (oSrc.value.length > maxlimit)
			{
				oSrc.value = oSrc.value.substring(0, maxlimit);
			}
	}
}





function restore_form(obj)
{
	document.forms[obj].reset()
}

function is_available_element(el)
{
	try
	{
		el = ""+el+"";
		if(typeof(el)!='string') {
			alert("argument is not string type.");
			return false;
		}

		var arr = el.split(".");
		var elname='';
		for(var i=0;i<arr.length;i++) {
			if(i==0) elname = arr[i];
			else elname = elname+'.'+arr[i];
			var atype = typeof(eval(elname));
			if(atype=='undefined' || atype=='unkown') 
				return false;
		}
		return true;
	}
	catch (e)
	{
		return false;
	}
}

// URLEncoding
function urlencode(str)
{
	var temp = str;
	temp = temp.replace(/\%/g, '%25');
	temp = temp.replace(/&/g,  '%26');
	temp = temp.replace(/=/g,  '%3D');
	temp = temp.replace(/\//g, '%2F');
	temp = temp.replace(/\'/g, '%27');
	temp = temp.replace(/ /g,  '%20');
	temp = temp.replace(/\"/g, '%22');
	temp = temp.replace(/@/g,  '%40');
	temp = temp.replace(/:/g,  '%3A');
	temp = temp.replace(/\?/g, '%3F');

	return temp;
}

// ¹®ÀÚ¿­ÀÇ ¾ÕµÚ °ø¹é Á¦°Å
function trim( strValue )
{
	var ReturnValue = "";
	strValue = ""+strValue+"";
	if( strValue == "" )
				return "";

	for(var i=0;i<strValue.length;i++)
	{
			if(strValue.charAt(i) != " ")
				  ReturnValue = ReturnValue + strValue.charAt(i);
	}

	return ReturnValue;
}



// ¹®ÀÚ¿­ÀÇ ¹ÙÀÌÆ® ¼ö¸¦ ¸®ÅÏ
// ÇÑ±Û¹®ÀÚ¸¦ 2¹ÙÀÌÆ®·Î Ã³¸®
function ByteCount(str) { 
	var i, j=0; 

	str = ""+str+"";
	for(i=0;i<str.length;i++) { 

		val=escape(str.charAt(i)).length; 

		if(val== 6) j++; 
		j++; 
	} 
	return j; 
}

// ¹®ÀÚ¿­¿¡ °ø¹éÀÌ Æ÷ÇÔµÇ¾î ÀÖ´ÂÁö °Ë»ç
function checkspace(str)
{
	str = ""+str+"";
	if (str.indexOf(" ") >= 0) return false;
	return true;
}

// ÄíÅ°°ª ÀúÀå
// sName : ÄíÅ°º¯¼ö¸í
// sValue : ÄíÅ° °ª
// nDays : º¸Á¸±â°£
function setCookie( sName, sValue, nDays ) {
	var expires = "";
	if ( nDays ) {
		var d = new Date();
		d.setTime( d.getTime() + nDays * 24 * 60 * 60 * 1000 );
		expires = "; expires=" + d.toGMTString();
	}

	document.cookie = sName + "=" + sValue + expires + "; path=/";
};


// ÄíÅ°°ª °¡Á®¿È
// sName : °¡Á®¿Ã ÄíÅ°º¯¼ö¸í
function getCookie(sName) {
	var re = new RegExp( "(\;|^)[^;]*(" + sName + ")\=([^;]*)(;|$)" );
	var res = re.exec( document.cookie );
	return res != null ? res[3] : null;
};

// ÄíÅ°°ª »èÁ¦
// sName : »èÁ¦ÇÒ ÄíÅ°º¯¼ö¸í
function removeCookie( name ) {
	setCookie( name, "", -1 );
};

function comma(numb){

  var str=int=deci='';
  numb = ""+numb+"" ;
 //  alert(numb);
  decicheck=false;
  minuscheck=false;
  m = 0 ;
  len=numb.length;
  //alert(len);

    
  for (i=0;i< len;i++){
    char=numb.substring(i,i+1);		// ÇÑ ±ÛÀÚ ÃßÃâ
    if (char=='.'){ decicheck=true;}	// ¼Ò¼öÁ¡ÀÌ ¹ß°ßµÇ¸é ¼Ò¼öÁ¡ÀÌ ÀÖ½¿ Ç¥½Ã
	if (char=='-'){ minuscheck=true; m = 1;}
	if( minuscheck)
	{
		minuscheck=false;
	}else{
		if (decicheck) deci+=char;		// ¼Ò¼öÁ¡ÀÌ ¹ß°ßµÇ¾úÀ¸¸é ¼Ò¼ö¿¡ ±ÛÀÚ Ãß°¡
	   	else int+=char;			// ¼Ò¼öÁ¡ÀÌ ¹ß°ß ¾ÈµÇ¾úÀ¸¸é Á¤¼ö¿¡ ±ÛÀÚ Ãß°¡	
	}
  }
  
  if( int.length > 3 )
  {
	  while (int>=1000){			// Á¤¼ö°¡ 1000 ÀÛÀ»¶§±îÁö ¹Ýº¹
    	hi=Math.floor(int/1000);		// ¸¶Áö¸· 3ÀÚ¸®ÀÇ ¼Ò¼öÁ¡ ¾ø´Â ±ÛÀÚ¸¦ ³ôÀº ¼öÄ¡ º¯¼ö¿¡
	    lostr='000'+int%1000;		// Á¤¼ö¸¦ 1000À¸·Î ³ª´©°í ³ª¸ÓÁö¿¡ ¾Õ¿¡ '0' ±ÛÀÚ Ãß°¡
    	len=lostr.length;
	    lostr=lostr.substring(len-3,len);	// 3ÀÚ¸® ¼öÄ¡¸¸ Ã¤ÅÃ
    	if (!str) str=lostr;			// ¸Ç ¸ÕÀú ½ºÆ®¸µÀº Á¦ÀÏ ³·Àº 3ÀÚ¸®¼ö
	    else str=lostr+','+str;		// ±× ´ÙÀ½ºÎÅÍ´Â ³·Àº¼ö 3ÀÚ¸®¼ö ¾Õ¿¡ ÄÞ¸¶(,) ³Ö°í ºÙÀÓ
    	int=Math.floor(int/1000);		// Ã³¸®ÇÑ µðÁþÆ® Á¦°Å
	  }
	  str=hi+','+str;				// ¸¶Áö¸·¿¡´Â Á¦ÀÏ ³ôÀº ÀÚ¸®¼ö¸¦ ¸Ç ¾Õ¿¡ ºÙÀÓ
  }else{
  	str = int;
  }
  if (decicheck) str+=deci;			// ¼Ò¼öÁ¡ÀÌ ÀÖÀ¸¸é ¼Ò¼öÁ¡À» ¸ÇµÚ¿¡ ºÙÀÓ
  if ( m==1 )
  {
	 str = "-" + str ; 	
  }
  //showA.innerHTML='<font color=blue>'+str+'</font>';// id ·Î ÁöÁ¤ÇÑ Ä­¿¡ html·Î ³Ö¾î ÁÜ
  //alert( str ) ;
  return str ;
}
function gbl_isLetter(evt,optspace) {
	// onkeydown="IsDigit()" style="ime-mode:disabled"
	//if(!evt)var evt = window.event;
	//alert("keycode : " + evt.keyCode)
	if (evt.shiftKey == 0)
	{
		//alert("evt.keyCode : " + evt.keyCode)	
		if(		   	
			((evt.keyCode >= 65) && (evt.keyCode <= 90)) || // letters
			((evt.keyCode >= 35) && (evt.keyCode <= 40)) ||	// arrow and home,end
			(evt.keyCode == 45)	||	(evt.keyCode == 46)||	// insert, delete
			(evt.keyCode == 8) 	||	(evt.keyCode == 144) || // BS, NumLock
			(evt.keyCode == 13)  || // BS, NumLock
			((optspace == 1) && (evt.keyCode == 32))
			) return true;//evt.returnValue = true;
		else 
		{	
			evt.returnValue = false;
			if (evt.cancelable ) 
			{
			evt.preventDefault();
			}
		}	
	}
	else
	{
		if((evt.keyCode >= 65) && (evt.keyCode <= 90) ||
			((optspace == 1) && (evt.keyCode == 32))					   
								   )
		{
			return true;
		}
		else
		{
			//alert("evt.keyCode : " + evt.keyCode)	
			evt.returnValue = false;
			if (evt.cancelable ) 
			{
			evt.preventDefault();
			}
		}
	}
}
// Å°ÀÔ·Â½Ã ¼ýÀÚÅ°ÀÎÁö¸¦ °Ë»ç
function gbl_IsMoney(evt) {
	// onkeydown="IsMoney()" style="ime-mode:disabled"	
	if(
		((evt.keyCode >= 48) && (evt.keyCode <= 57)) ||	// keyboard
		((evt.keyCode >= 96) && (evt.keyCode <= 105)) ||	// keypad
		(evt.keyCode == 9) ||	// tab
		(evt.keyCode == 10)||	// enter
		(evt.keyCode == 188)||	// ,
		(evt.keyCode == 190)||	// .
		(evt.keyCode == 110)||	// .
		((evt.keyCode >= 35) && (evt.keyCode <= 40)) ||	// arrow and home,end
		(evt.keyCode == 45)||	(evt.keyCode == 46)||	// insert, delete
		(evt.keyCode == 8) ||	(evt.keyCode == 144)	// BS, NumLock
		)
		{
		var oSrc = (evt.target) ? evt.target : evt.srcElement;
		return true;
		}
		else 
		{	
			evt.returnValue = false;
			if (evt.cancelable ) 
			{
			evt.preventDefault();
			}
		}		
}

// Å°ÀÔ·Â½Ã ¼ýÀÚÅ°ÀÎÁö¸¦ °Ë»ç
function gbl_isDigit(evt) {
	// onkeydown="IsDigit()" style="ime-mode:disabled"
	//if(!evt)var evt = window.event;
	//alert("keycode : " + evt.keyCode)
	if (evt.shiftKey == 0 && evt.altKey == 0)
	{
		if(
			((evt.keyCode >= 48) && (evt.keyCode <= 57)) || // keyboard
			((evt.keyCode == 17)) ||
			((evt.keyCode >= 96) && (evt.keyCode <= 105)) ||	// keypad
			(evt.keyCode == 9) ||	// tab
			(evt.keyCode == 10)||	// enter
			((evt.keyCode >= 35) && (evt.keyCode <= 40)) ||	// arrow and home,end
			(evt.keyCode == 45)||	(evt.keyCode == 46)||	// insert, delete
			(evt.keyCode == 8) ||	(evt.keyCode == 144) // BS, NumLock
			) return true;//evt.returnValue = true;
		else 
		{	
			evt.returnValue = false;
			if (evt.cancelable ) 
			{
			evt.preventDefault();
			}
		}	
	}
	else
	{
		evt.returnValue = false;
		if (evt.cancelable ) 
		{
		evt.preventDefault();
		}
	}
}

// Å°ÀÔ·Â½Ã ¼ýÀÚÅ°ÀÎÁö¸¦ °Ë»ç
function gbl_isDecimal(evt) {
	// onkeydown="IsDigit()" style="ime-mode:disabled"
	//if(!evt)var evt = window.event;
	if (evt.shiftKey == 0)
	{
		if(
			((evt.keyCode >= 48) && (evt.keyCode <= 57)) ||	// keyboard
			((evt.keyCode >= 96) && (evt.keyCode <= 105)) ||	// keypad
			(evt.keyCode == 9) ||	// tab
			(evt.keyCode == 10)||	// enter
			((evt.keyCode == 190)&&(tmp.value.length > 1)&&(tmp.indexOf(".") > 1 )) ||	// .
			((evt.keyCode == 110)&&(tmp.value.length > 1)&&(tmp.indexOf(".") > 1 )) ||	// .
			((evt.keyCode >= 35) && (evt.keyCode <= 40)) ||	// arrow and home,end
			(evt.keyCode == 45)||	(evt.keyCode == 46)||	// insert, delete
			(evt.keyCode == 8) ||	(evt.keyCode == 144)	// BS, NumLock
			) return true;//evt.returnValue = true;
		else 
		{	
			evt.returnValue = false;
			if (evt.cancelable ) 
			{
			evt.preventDefault();
			}
		}	
	}
	else
	{
		evt.returnValue = false;
		if (evt.cancelable ) 
		{
		evt.preventDefault();
		}
	}
}

function gbl_isAlpha(evt,optspace,ofunc) {
	// onkeydown="IsDigit()" style="ime-mode:disabled"
	//if(!evt)var evt = window.event;
	//alert("keycode : " + evt.keyCode)
	if (evt.shiftKey == 0) {	
		//alert("evt.keyCode : " + evt.keyCode)	
		if(		
		    ((evt.keyCode >= 48) && (evt.keyCode <= 57)) ||	// keyboard
			((evt.keyCode >= 96) && (evt.keyCode <= 105)) ||	// keypad
			((evt.keyCode >= 65) && (evt.keyCode <= 90)) || // letters
			((evt.keyCode >= 35) && (evt.keyCode <= 40)) ||	// arrow and home,end
			(evt.keyCode == 45)	||	(evt.keyCode == 46)||	// insert, delete
			(evt.keyCode == 8) 	||	(evt.keyCode == 144) || // BS, NumLock
			(evt.keyCode == 9) ||	// tab
			(evt.keyCode == 13)  || // BS, NumLock
			((optspace == 1) && (evt.keyCode == 32))
			) return true;//evt.returnValue = true;
		else {	
			evt.returnValue = false;
			if (evt.cancelable ) {
				evt.preventDefault();
			}
		}	
	}
	else {
		if((evt.keyCode >= 65) && (evt.keyCode <= 90) ||
			((optspace == 1) && (evt.keyCode == 32))					   
			) {
			return true;
		} else {
			//alert("evt.keyCode : " + evt.keyCode)	
			evt.returnValue = false;
			if (evt.cancelable ) {
				evt.preventDefault();
			}
		}
	}
}

// Convert Money to decimal value
function gbl_MoneyToDecimal(obj) {	
	var tmp = obj.value;
	var re = /[,]/g;    //Initialize pattern.
	tmp = tmp.replace( re ,"");
}

function gbl_KeypressSubmit(ofrm)
{
	if (event.keyCode == 13) {
		if (document.forms(ofrm))
			{ document.forms(ofrm).submit(); }
		else
			{ return false; }
	}
}
