document.title="±¤ÁÖ±¤¿ª½Ã±³ÅëÁ¤º¸¼¾ÅÍ";


//*****************************************************************************
/* Popup */
//*****************************************************************************
function pop(url,name,w,h){ window.open(url,name,'width='+w+',height='+h+',scrollbars=auto') } //Popup(½ºÅ©·Ñ¹Ù¾øÀ½)
function pops(url,name,w,h){ window.open(url,name,'width='+w+',height='+h+',scrollbars=yes') } //Popup(½ºÅ©·Ñ¹ÙÀÖÀ½)
function popr(url,name,w,h){ window.open(url,name,'width='+w+',height='+h+',scrollbars=auto,resizable=1') } //Popup(½ºÅ©·Ñ¹ÙÀÖÀ½)
function popL(url,name,w,h,t,l){ window.open(url,name,'top='+t+',left='+l+',width='+w+',height='+h+',scrollbars=auto') } //Popup(½ºÅ©·Ñ¹Ù¾øÀ½), À§Ä¡ÁöÁ¤
function popsL(url,name,w,h,t,l){ window.open(url,name,'top='+t+',left='+l+',width='+w+',height='+h+',scrollbars=yes') } //Popup(½ºÅ©·Ñ¹ÙÀÖÀ½), À§Ä¡ÁöÁ¤


//*****************************************************************************
/* PNG Img */
//*****************************************************************************
function setPNG24(obj) {
	obj.width=obj.height=1;
	obj.className=obj.className.replace(/\bPNG24\b/i,'');
	obj.style.filter =
	"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+ obj.src +"',sizingMethod='image');"
	obj.src='';
	return '';
}

/* Select */
function selectShow(Name){
	selectObj = document.getElementById(Name);
	selectObj.style.display='block';
}

function selectHide(Name){
	selectObj = document.getElementById(Name);
	selectObj.style.display='none';
}
//*****************************************************************************
//Description : Image RollOver
//*****************************************************************************
function ImageOver(imgEL){
	imgEL.src = imgEL.src.replace("_off.gif", "_on.gif");
}
function ImageOut(imgEL){
	imgEL.src = imgEL.src.replace("_on.gif", "_off.gif");
}

//*****************************************************************************
//menu : Image RollOver
//*****************************************************************************

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

//*****************************************************************************
//menu : overflow
//*****************************************************************************
function fncInit()
{
    fncResize();
}


function fncResize()
{
    var obj = document.getElementById('TID');
    obj.rows= obj.value.split('\n').length;
}

//*****************************************************************************
//
//*****************************************************************************
function MM_showHideLayers() { //v9.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) 
  with (document) if (getElementById && ((obj=getElementById(args[i]))!=null)) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

var ContextRoot = "";

//------------------------------------------------------------------------------------------------------
//
//  					             Date°ü·ÃÇÔ¼ö                    
//
//------------------------------------------------------------------------------------------------------

/***********************************************************************************************
desc   : ¿À´Ã ³¯Â¥¸¦ ±¸ÇÏ´Â ÇÔ¼ö
syntax : cfGetToday('1')
param  : pType  - 0: YYYYMMDD, 1: YYYY-MM-DD, 2: YYYY/MM/DD
return : dateReturn
************************************************************************************************/
function cfGetToday(pType) {
	var current = new Date();

	tmpyear = current.getFullYear();
	str0 = "";
	str1 = str0.concat(tmpyear);

	tmpmon = current.getMonth() + 1;
	if(tmpmon < 10) {
		str4 = "0";
		str5 = str4.concat(tmpmon);
	}
	else {
		str5 = tmpmon;
	}

	tmpday = current.getDate();
	if(tmpday < 10) {
	  str6 = "0";
	  str7 = str6.concat(tmpday);
	}
	else {
		str7 = tmpday;
	}

	if (pType == "1") str1+="-";
	else if (pType == "1") str1+="/";
	str2 = str1.concat(str5);

	if (pType == "1") str2+="-";
	else if (pType == "1") str1+="/";
	str3 = str2.concat(str7);

	return(str3);
}

/**********************************************************************************************
desc   : ÇöÀç ½Ã°£À» ¾Ë·ÁÁØ´Ù
***********************************************************************************************
syntax : cfCurTime()     
param  :   
return : String
***********************************************************************************************/
function cfCurTime() {
  var now=new Date()
  var hrs=now.getHours()
  var min=now.getMinutes()
  var sec=now.getSeconds()
  var don="AM"
  if (hrs>=12){ don="PM" }
  if (hrs>12) { hrs-=12 }
  if (hrs==0) { hrs=12 }
  if (hrs<10) { hrs="0"+hrs }
  if (min<10) { min="0"+min }
  if (sec<10) { sec="0"+sec }
  clock.innerHTML=hrs+":"+min+":"+sec+" " + don
  setTimeout("cfCurTime()",1000)
}

/***********************************************************************************************
desc   : ÇöÀç½Ã°£,ºÐ,ÃÊ °¡Á®¿À´Â ÇÔ¼ö
syntax : cfToDayTime(0)
param  : pType  - 0:½Ã°£, 1:ºÐ, 2:ÃÊ
return : time
************************************************************************************************/
function cfToDayTime(pType){
	var current = new Date();
	var tmpHours = current.getHours();	
	var tmpMinutes = current.getMinutes();
	var tmpSeconds = current.getSeconds();
	var result;
	
	if(tmpHours < 10){
		str1 = "0";
		str4 = str1.concat(tmpHours);
	}else{
		str4 = tmpHours;
	}
	
	if(tmpMinutes < 10){
		str2 = "0";
		str5 = str2.concat(tmpMinutes);
	}else{
		str5 = tmpMinutes;
	}
	
	if(tmpHours < 10){
		str3 = "0";
		str6 = str3.concat(tmpSeconds);
	}else{
		str6 = tmpSeconds;
	}
	
	switch(pType){
		case 0 : result = str4;
			break;
		case 1 : result = str5;
			break;
		case 2 : result = str6;
			break;
		default: result = "";
			break;
	}
	return result;
}

/***********************************************************************************************
desc   : ÇØ´ç ³¯Â¥¿¡¼­ ÁöÁ¤µÈ ÀÏ¼ö¸¸Å­ÀÇ ³¯Â¥¸¦ ±¸ÇÏ´Â ÇÔ¼ö
syntax : cfGetDate('20090820', '7', '1'), cfGetDate('20090820', '-7', '1')
param  : pDateStr - ÁöÁ¤ÇÑ ³¯Â¥
param  : pInterval - ³¯Â¥°£°Ý
param  : pType  - 0: YYYYMMDD, 1: YYYY-MM-DD, 2: YYYY-MM-DD (¿äÀÏ) 3: YYYY/MM/DD (¿äÀÏ)
return : dateReturn
************************************************************************************************/
function cfGetDate(pDateStr, pInterval, pType) {
	var WEEK = ["ÀÏ", "¿ù", "È­", "¼ö", "¸ñ", "±Ý", "Åä" ];
	var dateObj = new Date(pDateStr.substring(0,4), pDateStr.substring(4,6) -1, pDateStr.substring(6,8));
	var dateReturn = new Date(dateObj.getTime() + (86400000*pInterval));

	if (pType == "0" || typeof(pType) == "undefined" || pType == "")	{
		return dateReturn.getYear() + "" + (dateReturn.getMonth()+1 < 10 ? "0" + (dateReturn.getMonth()+1) : (dateReturn.getMonth()+1)) + "" + (dateReturn.getDate() < 10 ? "0" + (dateReturn.getDate()) : (dateReturn.getDate()));
	} else if (pType == "1") {
		return dateReturn.getYear() + "-" + (dateReturn.getMonth()+1 < 10 ? "0" + (dateReturn.getMonth()+1) : (dateReturn.getMonth()+1)) + "-" + (dateReturn.getDate() < 10 ? "0" + (dateReturn.getDate()) : (dateReturn.getDate()));
	} else if (pType == "2") {
		return dateReturn.getYear() + "-" + (dateReturn.getMonth()+1 < 10 ? "0" + (dateReturn.getMonth()+1) : (dateReturn.getMonth()+1)) + "-" + (dateReturn.getDate() < 10 ? "0" + (dateReturn.getDate()) : (dateReturn.getDate())) + " (" + WEEK[dateReturn.getDay()] + ")";
	} else if (pType == "3") {
		return dateReturn.getYear() + "/" + (dateReturn.getMonth()+1 < 10 ? "0" + (dateReturn.getMonth()+1) : (dateReturn.getMonth()+1)) + "/" + (dateReturn.getDate() < 10 ? "0" + (dateReturn.getDate()) : (dateReturn.getDate())) + " (" + WEEK[dateReturn.getDay()] + ")";
	} else {
		return dateReturn.getYear() + "" + (dateReturn.getMonth()+1 < 10 ? "0" + (dateReturn.getMonth()+1) : (dateReturn.getMonth()+1)) + "" + (dateReturn.getDate()+1 < 10 ? "0" + (dateReturn.getDate()+1) : (dateReturn.getDate()+1));
	}
	return dateReturn;
}

/***********************************************************************************************
desc   : ½ÃÀÛÀÏ°ú Á¾·áÀÏÀÇ ÀÏ¼ö °è»ê
syntax : cfGetInterval(fDate.value, tDate.value)
param  : fDate - ½ÃÀÛ³¯Â¥
param  : tDate - Á¾·á°£°Ý
return : int
************************************************************************************************/
function cfGetInterval (fDate, tDate)
{
	if ( !cfDateCompare ( fDate, tDate ) ) return -1;

	var start = new Date(fDate.substring(0,4), fDate.substring(4,6)-1, fDate.substring(6,8));
	var thisMonth = start.getMonth();
	var thisDay = start.getDate();

	var thenTime = Date.UTC(tDate.substring(0,4), tDate.substring(4,6)-1, tDate.substring(6,8));
	var result = (parseInt((thenTime - Date.UTC(fDate.substring(0,4),thisMonth,thisDay))/(3600000*24)));

	return result;
}

/**********************************************************************************************
desc   : ±â°£Ã¼Å© ( to_date°¡ from_dateº¸´Ù ÀÌÈÄ³¯Â¥ÀÎÁö È®ÀÎ)
***********************************************************************************************
syntax : cfDateCompare('20071010','20081010')       
param  : fromDate-½ÃÀÛÀÏ, toDate-Á¾·áÀÏ
return : true/falsse
***********************************************************************************************/
function cfDateCompare (fromDate, toDate) {
	var f_year  = parseInt( fromDate.substr(0,4), 10 );
  var f_month = parseInt( fromDate.substr(4,2), 10 );
  var f_day   = parseInt( fromDate.substr(6,2), 10 );
  var t_year  = parseInt( toDate.substr(0,4), 10 );
  var t_month = parseInt( toDate.substr(4,2), 10 );
  var t_day   = parseInt( toDate.substr(6,2), 10 );
  
  if( f_year > t_year )
      return false;
  else if( f_year == t_year && f_month > t_month )
      return false;
  else if( f_year == t_year && f_month == t_month && f_day > t_day )
      return false;

  return true;
}


//------------------------------------------------------------------------------------------------------
//
//  									   String°ü·ÃÇÔ¼ö                    
//
//------------------------------------------------------------------------------------------------------
//¹®ÀÚ¿­ Trim ±â´É Á¤ÀÇ
String.prototype.trim = function(){   
  return this.replace(/^\s+|\s+$/g,"");   
}   

String.prototype.ltrim = function(){   
  return this.replace(/^\s+/,"");      
}   
 
String.prototype.rtrim = function(){   
  return this.replace(/\s+$/,"");      
}

/***********************************************************************************************
desc   : left ½ºÆ®¸µÇÔ¼ö
syntax : cfLeft("aabb",2) = "aa"               
param  : str - ¹®ÀÚ, i -¾ç¼ö  
return : true/flase
***********************************************************************************************/
function cfLeft(str, n){
	if (n <= 0)
	    return "";
	else if (n > String(str).length)
	    return str;
	else
	    return String(str).substring(0,n);
}

/***********************************************************************************************
desc   : right ½ºÆ®¸µÇÔ¼ö
syntax : cfRight("aabb",2) = "aa"               
param  : str - ¹®ÀÚ, i -¾ç¼ö
return : true/flase
***********************************************************************************************/
function cfRight(str, n){
  if (n <= 0)
     return "";
  else if (n > String(str).length)
     return str;
  else {
     var iLen = String(str).length;
     return String(str).substring(iLen, iLen - n);
  }
}



/**********************************************************************************************
desc   : ¹®ÀÚ¿­ÀÇ Btye¼ö ¸®ÅÏ  
***********************************************************************************************
syntax : cfLengthB(txt_01.value)       
param  : sVal - byte Ã¼Å©ÇÒ value
return : int
***********************************************************************************************/
function cfLengthB(sVal){

  var iCount = 0;
  for (var i=0; i<sVal.length; i++) {

      if (sVal.charCodeAt(i) > 128)
          iCount = iCount + 2 ; // ÇÑ±ÛÀÏ°æ¿ì 2Byte
      else
          iCount = iCount + 1 ; // ¿µ¹®ÀÏ°æ¿ì 1Byte
  }
  return iCount;

}
/**********************************************************************************************
desc   : ¸Þ¼¼Áö ±æÀÌ¿¡ µû¶ó ÀÔ·Â°¡´É ¿©ºÎ ¸®ÅÏ  
***********************************************************************************************
syntax : cfMsgCount(txt_01.value)       
param  : sVal - byte Ã¼Å©ÇÒ value
return : int
***********************************************************************************************/
function cfMsgCount(obj, event, iNum) {
	var msgValue = document.getElementById(obj.id).value;
	var smsCnt = cfGetBytes(iNum, msgValue);
	var smsMaxLength = fnGetLength(msgValue);

	if (smsCnt < 0) {
		alert(iNum + "Byte ±îÁö¸¸ ÀÔ·Â °¡´ÉÇÕ´Ï´Ù.");
		$(obj).value = msgValue.substr(0,smsMaxLength);	
		$(td_sms_cnt).innerHTML = "³²Àº ±ÛÀÚ¼ö : " + cfGetBytes(iNum, $(obj).value) + " Byte";
		return false;
	}else{
		$(td_sms_cnt).innerHTML = "³²Àº ±ÛÀÚ¼ö : " + smsCnt + " Byte";
	}
	return true;
}
/**********************************************************************************************
desc   : ÀÔ·Â°¡´ÉÇÑ ³²Àº Btye¼ö ¸®ÅÏ  
***********************************************************************************************
syntax : cfGetBytes(txt_01.value)       
param  : sVal - byte Ã¼Å©ÇÒ value
return : int
***********************************************************************************************/
function cfGetBytes(iCount, sVal){
	for (var i = 0; i < sVal.length; i++) {
		if (sVal.charCodeAt(i) > 128) {
			iCount = iCount - 2 ; // ÇÑ±ÛÀÏ°æ¿ì 2Byte
		} else {
			iCount = iCount - 1 ; // ¿µ¹®ÀÏ°æ¿ì 1Byte
		}
	}
	return iCount;
}

/**********************************************************************************************
desc   : ÀÔ·Â°¡´ÉÇÑ ³²Àº ±æÀÌ
***********************************************************************************************
syntax : fnGetLength(txt_01.value)       
param  : sVal - byte Ã¼Å©ÇÒ value
return : int
***********************************************************************************************/
function fnGetLength(sVal){
	var iCount = 90;
	var lengCount = 0;
	for (var i = 0; i < sVal.length; i++) {
		if (sVal.charCodeAt(i) > 128) {
			iCount = iCount - 2 ; // ÇÑ±ÛÀÏ°æ¿ì 2Byte
		} else {
			iCount = iCount - 1 ; // ¿µ¹®ÀÏ°æ¿ì 1Byte
		}

		if( iCount > - 1){
			lengCount = lengCount + 1;
		}
	}
	return lengCount;
}
/**********************************************************************************************
desc   : ÀÔ·Â¹®ÀÚ ±æÀÌ Ã¼Å© 
***********************************************************************************************
syntax : cfgChkValueLen(txt_01,"³»¿ë",4000)       
param  : obj-Ã¼Å©ÇÒ ¿ÀºêÁ§Æ® id, objName-¸Þ¼¼Áö¿¡ ³ªÅ¸³¯ ¿ÀºêÁ§Æ®¸í, iSize-Ã¼Å©ÇÒ ¹®ÀÚ±æÀÌ(Byte·Î ÀÔ·Â)
return : alert
***********************************************************************************************/
function cfgChkValueLen(obj, objNm, iSize){
  if ( cfLengthB(obj.value) > iSize ) {
    alert( objNm +"(\uC740)\uB294 \uD55C\uAE00"+Math.floor(iSize/2)+"\uC790, \uC601\uBB38"
  		  +iSize+"\uC790 \uC774\uD558\uB85C \uC785\uB825 \uAC00\uB2A5\uD569\uB2C8\uB2E4.");
  }
}

/***********************************************************************************************
desc   : ¹®ÀÚ + ¼ýÀÚ Á¶ÇÕÀÇ ¹®ÀÚ¿­¿¡¼­ ¹®ÀÚ¸¸À» ÃßÃâ
syntax : cfGetStringOnly(txt_01.value)
param  : value - ¹®ÀÚ¸¸ ÃßÃâÇÏ°íÀÚÇÏ´Â value
return : ¹®ÀÚ¿­ value
************************************************************************************************/
function cfGetStringOnly(value) {
	var result = "";
	var chkstr = "0123456789";
	for (var i = 0; i < value.length; i++) {
		if( !cfIsInt(value.substring(i, i + 1)) ){
			result = result + value.substring(i, i + 1);
		}		
	}
	return result;
}

/***********************************************************************************************
desc   : ¹®ÀÚ + ¼ýÀÚ Á¶ÇÕÀÇ ¹®ÀÚ¿­¿¡¼­ ¼ýÀÚ¸¸À» ÃßÃâ
syntax : cfGetNumberOnly(txt_01.value)
param  : value - ¼ýÀÚ¸¸ ÃßÃâÇÏ°íÀÚÇÏ´Â value
return : ¼ýÀÚÇü ¹®ÀÚ¿­ value
************************************************************************************************/
function cfGetNumberOnly(value){
	var result = "";
	var chkstr = "0123456789";
	for (var i = 0; i < value.length; i++) {
		if( cfIsInt(value.substring(i, i + 1)) ){
			result = result + value.substring(i, i + 1);
		}		
	}
	return result;	
}

//------------------------------------------------------------------------------------------------------
//
//  									   validation°ü·ÃÇÔ¼ö                    
//
//------------------------------------------------------------------------------------------------------
/***********************************************************************************************
desc   : null Ã¼Å©
syntax : cfIsNull(txt_01.value, 0)
param  : value - nullÀÎÁö ¾Æ´ÑÁö Ã¼Å©ÇÏ°íÀÚÇÏ´Â value, type-¸®ÅÏÅ¸ÀÔ(v:value, b:boolean)
return : null/value
************************************************************************************************/
function cfIsNull(value, type) {

	if (type == 'v') {
		if (value == "" || typeof(value) == "undefined" || value == null) {
		    return "";
		} else {
		    return value;
		}
	} else if (type == 'b') {
		if (value == "" || typeof(value) == "undefined" || value == null) {
		    return true;
		} else {
		    return false;
		}
	}

}

/***********************************************************************************************
desc   : ¼ýÀÚÀÎ°¡¸¦ Ã¼Å©ÇÏ´Â ÇÔ¼ö
syntax : cfIsInt(txt_01.value)
param  : value(Ã¼Å©´ë»ó ¹®ÀÚ)
return : boolean
************************************************************************************************/
function cfIsInt(value) {
	var _intValue = '0123456789';
	var j;
	for(j = 0; j < _intValue.length ; j++){
		if(value == _intValue.charAt(j)) {
			return true;
		}
	}
	return false;
}

/***********************************************************************************************
desc   : ¼ýÀÚ·Î¸¸ ±¸¼ºµÇ¾î ÀÖ´ÂÁö¸¦ °Ë»ç
syntax : IsNumeric(txt_01.value)
param  : ÃøÁ¤´ë»ó°ª
return : boolean
************************************************************************************************/
function IsNumeric(value) {
	var result = true;
	for(var i = 0; result && (i < value.length); i++) {
		if((value.substring(i, i + 1) < "0") || (value.substring(i, i + 1) > "9")) {
			result = false;
		}
	}
	return result;
}

/**********************************************************************************************
desc   : ÇØ´ç ¿ÀºêÁ§Æ®¿¡ ¼ýÀÚ¸¸ ÀÔ·ÂµÇ¾ú´ÂÁö À¯È¿¼ºÀ» Ã¼Å©ÇÑ´Ù.
syntax : cfValidateNumber(text01)       
param  : inputBoxId-ÀÔ·ÂµÈ ¿ÀºêÁ§Æ®  
return : boolean
***********************************************************************************************/
function cfValidateNumber(obj) {

	var code = window.event.keyCode;
	
	if ( (code > 34 && code < 41) || (code > 47 && code < 58) || (code > 95 && code < 106)
          || code == 8 || code == 9 || code == 13 || code == 46 || (event.ctrlKey && code == 67)
          || (event.ctrlKey && code == 86) || (event.ctrlKey && code == 88) ) {
              
      window.event.returnValue = true;
      return true;
      
  } else {
  	window.event.returnValue = false;
  	alert("\uC22B\uC790\uB9CC \uC785\uB825\uAC00\uB2A5\uD569\uB2C8\uB2E4.");
  	$(obj).value = "";
  	
  	return false;
  }   
	
}

/**********************************************************************************************
desc   : ¿µ¹®¸¸ ÀÔ·ÂµÇ¾ú´ÂÁö Ã¼Å©
**********************************************************************************************
syntax : cfCheckEnglishOnly(obj.id)   
param  : ÀÔ·ÂµÈ ¿ÀºêÁ§Æ®
return : boolean
***********************************************************************************************/
function cfCheckEnglishOnly( englishChar ) {  
  
	if ( englishChar == null ) return false ;
     
  for( var i=0; i < englishChar.length;i++){     
     var c=englishChar.charCodeAt(i);
     
     if( !( (  0x61 <= c && c <= 0x7A ) || ( 0x41 <= c && c <= 0x5A ) ) ) {         
      return false ;       
     }
  }      
  return true ;     
}

/**********************************************************************************************
desc   : ÇÑ±Û¸¸ ÀÔ·ÂµÇ¾ú´ÂÁö Ã¼Å©
syntax : cfCheckKoreanOnly(obj.id)   
param  : ÀÔ·ÂµÈ ¿ÀºêÁ§Æ®
return : boolean
***********************************************************************************************/
function cfCheckKoreanOnly( koreanChar ) {
	   
	if ( koreanChar == null ) return false ;
 
	for(var i=0; i < koreanChar.length; i++){ 

	var c=koreanChar.charCodeAt(i); 

   	//( 0xAC00 <= c && c <= 0xD7A3 ) ÃÊÁßÁ¾¼ºÀÌ ¸ðÀÎ ÇÑ±ÛÀÚ 
   	//( 0x3131 <= c && c <= 0x318E ) ÀÚÀ½ ¸ðÀ½ 
		if( !( ( 0xAC00 <= c && c <= 0xD7A3 ) || ( 0x3131 <= c && c <= 0x318E ) ) ) {      
	        return false ; 
		}
	}  
	return true ;
}

/**********************************************************************************************
name   : cfCheckEnglishNumber(sVal)
**********************************************************************************************
syntax : cfCheckEnglishNumber(sVal)   
param  : 
desc   : ¿µ¾î¿Í ¼ýÀÚ¸¸ ÀÔ·Â
return :
refer  : 
***********************************************************************************************/
function cfCheckEnglishNumber(str)
{	
	for(var i=0; i<str.length; i++)
	{
		if (  
				(str.charCodeAt(i) >= 48 && str.charCodeAt(i) <=57)			//¼ýÀÚ 
				|| (str.charCodeAt(i) >=65 && str.charCodeAt(i) <= 90) 		//¿µ¹®´ë¹®ÀÚ
				|| (str.charCodeAt(i) >= 97 && str.charCodeAt(i) <= 122)	//¿µ¹®¼Ò¹®ÀÚ
		   ) 
		{
			
		} else {
			return false;
		}
	}
	return true;
}

/**********************************************************************************************
desc   : ¾ÆÀÌµð ¿µ¹®Á¶ÇÕ ¹× ±æÀÌ(3~9)¸¦ Ã¼Å©ÇÑ´Ù.
syntax : cfValidateUserId(text_01.value)       
param  : userId-ÀÔ·ÂµÈ °ª  
return : boolean
***********************************************************************************************/
function cfValidateUserId(userId) {
	var regex = /^[\a-zA-Z]{1}[\a-zA-Z0-9]{2,9}$/;
	var isMatch = regex.test($(userId));

	if(!isMatch) {
		alert("¾ÆÀÌµð´Â ¿µ¹®, ¼ýÀÚ Á¶ÇÕÀ¸·Î 3~9ÀÚ·Î ÀÔ·ÂÇØÁÖ¼¼¿ä");
		return false;
	}
	else {		
		return true;
	}
}

/**********************************************************************************************
desc   : ºñ¹Ð¹øÈ£ ÀÔ·Â±æÀÌ(4~12)¸¦ Ã¼Å©ÇÑ´Ù.
syntax : cfValidatePassword(text_01.value)       
param  : passwd-ÀÔ·ÂµÈ °ª  
return : boolean
***********************************************************************************************/
function cfValidatePassword(passwd) {
	var regex = /^[\a-zA-Z0-9]{4,12}$/;
	var isMatch = regex.test($(passwd));
	if(!isMatch) {
		alert("ºñ¹Ð¹øÈ£´Â 4-12ÀÚ·Î ÀÔ·ÂÇØÁÖ¼¼¿ä");
		return false;
	}
	else {		
		return true;
	}		
}

/**********************************************************************************************
desc   : ³¯Â¥ À¯È¿¼ºÀ» Ã¼Å©ÇÑ´Ù.
syntax : cfMakeDateDash(text_01.value,text_01)       
param  : numValue-ÀÔ·ÂµÈ °ª, inputBoxId-ÀÔ·ÂµÈ ¿ÀºêÁ§Æ®ID  
return : String
***********************************************************************************************/
function cfMakeDateDash(date, inputBoxId) {
	var result = date.value;
	var regex = /^[0-9]{0,8}$/;
	var isMatch = regex.test(result);
	
	if (!isMatch) {		
		result = '';
	}
	
	if (result.length == 8) {
		result = cfGetDate(result, '0', '1');
	}
	$(inputBoxId).value = result;		
}

/**********************************************************************************************
desc   : Á¶È¸±â°£ÀÇ ³Î°ª ¹× ½ÃÀÛ/Á¾·áÀÏÀÇ À¯È¿¼ºÀ» Ã¼Å©ÇÑ´Ù.
syntax : cfValidateFromToDate(text_01,text_02)       
param  : fromDate-½ÃÀÛÀÏ, toDate-Á¾·áÀÏ  
return : true/false
refer  : cfDateCompare(fromDate,toDate)
***********************************************************************************************/
function cfValidateFromToDate(fromDate, toDate) {

	if (fromDate.value == '') {
		alert("\uC2DC\uC791\uC77C\uC744 \uC785\uB825\uD558\uC138\uC694.");
		return false;		
	} else if (toDate.value == '') {
		alert("\uC885\uB8CC\uC77C\uC744 \uC785\uB825\uD558\uC138\uC694.");
		return false;
	} else {
		var result = cfDateCompare(fromDate.value.replace(/-/g,""), toDate.value.replace(/-/g,""));
		
		if (!result) {
			alert("\uC2DC\uC791\uC77C\uC740 \uC885\uB8CC\uC77C\uBCF4\uB2E4 \uC774\uC804\uB0A0\uC9DC\uB85C \uC120\uD0DD\uD558\uC138\uC694.");
			return false;
		}
		return true;
	}
}

/**********************************************************************************************
desc   : ÀÌ¸ÞÀÏ À¯È¿¼ºÀ» Ã¼Å©ÇÑ´Ù.
syntax : cfValidateEmail(text_01.value)       
param  : inputBox-ÀÔ·ÂµÈ ¿ÀºêÁ§Æ® value  
return : boolean
***********************************************************************************************/
function cfValidateEmail(result) {
	 var regex = /^[\w\.-_\+]+@[\w_]+(\.\w{2,4})+$/;
	 var isMatch = regex.test(result);

	 if(!isMatch) {
		 alert("\uC774\uBA54\uC77C \uD615\uC2DD\uC774 \uC798\uBABB\uB418\uC5C8\uC2B5\uB2C8\uB2E4.");
		 return false;
	 }
	 
	 return true;
}

/**********************************************************************************************
desc   : ÇØ´ç ¿ÀºêÁ§Æ®¿¡ ¼ýÀÚ¸¸ ÀÔ·ÂµÇ¾ú´ÂÁö À¯È¿¼ºÀ» Ã¼Å©ÇÑ´Ù.
syntax : cfValidateNumberFormat(text_01)       
param  : inputBox-ÀÔ·ÂµÈ ¿ÀºêÁ§Æ®ID  
return : boolean
***********************************************************************************************/
function cfValidateNumberFormat(inputBox) {
	var result = inputBox.value;
	var regex = /^[0-9]{0,20}$/;
	var isMatch = regex.test(result);
	
	if (!isMatch) {
		alert("\uC22B\uC790\uB9CC \uC785\uB825\uAC00\uB2A5\uD569\uB2C8\uB2E4.");
		$(inputBox).value = "";
		return false;
	}
	return true;	
}

/**********************************************************************************************
desc   : ÀÔ·ÂµÈ Å°ÄÚµå·Î ¼ýÀÚ¿©ºÎ ¸®ÅÏ
syntax : cfOnylInputNum(0)       
param  : Æ÷ÇÔ¿©ºÎ(2:'.', 1:'-', 0:¹ÌÆ÷ÇÔ)
return : boolean
***********************************************************************************************/
function cfOnylInputNum(arg) {
	var keyList = "";	//¼ýÀÚÅ° ¸®½ºÆ®
	
	//ctrl+cÀÎ °æ¿ì true
	if ( event.ctrlKey && event.keyCode == 67 ) {
		return true;
	}
	
	//ctrl+xÀÎ °æ¿ì true
	if ( event.ctrlKey && event.keyCode == 88 ) {
		return true;
	}
	
	//ctrl+vÀÎ °æ¿ì true
	if ( event.ctrlKey && event.keyCode == 86 ) {
		return true;
	}
	
	if (arg == "2") {
		keyList = [48, 49, 50, 51, 52, 53, 54, 55, 56, 57,  
	               8, 35, 36, 37, 38, 39, 40, 45, 46, 190,
	               9, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 110];
	}
	else if ( arg == "1" ) {
		keyList = [48, 49, 50, 51, 52, 53, 54, 55, 56, 57,  
	               8, 35, 36, 37, 38, 39, 40, 45, 46, 189,
	               9, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105];
	} else if ( arg == "0" ){
		keyList = [48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 
	               8, 35, 36, 37, 38, 39, 40, 45, 46,
	               9, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105];
	}

	//tab, Backspace , End, Home, left, up, right, down,  insert, delete, dash, number pad
	for(var i = 0; i < keyList.length; i++){		
		if( event.keyCode == keyList[i])
			return true;
	}
	return false;
}

//------------------------------------------------------------------------------------------------------
//
//  									   Object°ü·ÃÇÔ¼ö                    
//
//------------------------------------------------------------------------------------------------------
/***********************************************************************************************
desc   : ±×·ì´ÜÀ§·Î enable/disable ÇÏ°íÀÚ ÇÒ¶§ »ç¿ëÇÔ
syntax : cfSetEnableAll(div01,false)               
param  : ParentObject - ÇØ´ç ¿ÀºêÁ§Æ®, Status - »óÅÂ
return : true/flase
***********************************************************************************************/
function cfSetEnableAll(ParentObject, Status) {
	for (i in ParentObject.all) {
		if (ParentObject.all[i].id == null || ParentObject.all[i].id == "") continue; 
		cfEnable($(ParentObject.all[i]),Status);
  }
}
/***********************************************************************************************
desc   : ¿ÀºêÁ§Æ® »óÅÂ enable/unable·Î ¼¼ÆÃ
syntax : cfEnable("txt_01",false)               
param  : ObjectItem - ÇØ´ç ¿ÀºêÁ§Æ®, Status - »óÅÂ
return : true/flase
***********************************************************************************************/
function cfEnable(ObjectItem,Status){
switch (ObjectItem.tagName) {
  case 'DIV':
  	ObjectItem.disabled = (!Status);
      ObjectItem.style.backgroundColor=(!Status)?"#EFEFEF":"";
  case 'BODY':
  case 'TABLE':
  case 'INPUT':
    if(ObjectItem.type.toUpperCase()=="BUTTON"){
      ObjectItem.disabled = (!Status);
      ObjectItem.style.backgroundColor=(!Status)?"#EFEFEF":"";
    }else{
      ObjectItem.disabled = (!Status);
      ObjectItem.style.backgroundColor=(!Status)?"#EFEFEF":"";
    }
    break;
  case 'SELECT':
    ObjectItem.disabled = (!Status);
    ObjectItem.style.backgroundColor=(!Status)?"#EFEFEF":"";
  case 'TEXTAREA':
    ObjectItem.disabled = (!Status);
    ObjectItem.style.backgroundColor=(!Status)?"#EFEFEF":"";
    break;
  case 'IMG':
    ObjectItem.disabled = (!Status);
    break;
  case 'OBJECT':
  case 'object' :
    switch(ObjectItem.classid.toUpperCase()){
    //Wise Grid
    case "CLSID:0CE50171-51F4-4b1e-992B-4ECC8E0BE537" : 
      ObjectItem.Editable=(Status);
      break;
    }
    break;
}
}

/**********************************************************************************************
desc   : ÇØ´ç ¿ÀºêÁ§Æ® ¿µ¿ª ³»¿¡ ÀÖ´Â ¸ðµç ¿ÀºêÁ§Æ®ÀÇ ³»¿ëÀ» ÃÊ±âÈ­ÇÑ´Ù.
syntax : cfInitObjectValue(div_01)       
param  : ÃÊ±âÈ­ ÇÒ ¿µ¿ªÀÇ ¿ÀºêÁ§Æ®(div)
return : null
***********************************************************************************************/
function cfInitObjectValue(obj) {
	for (i in obj.all) {		
		switch (obj.all[i] == null ? "" : obj.all[i].tagName) {
		case 'INPUT':
			obj.all[i].value = "";
	        break;
	    case 'SELECT':
	    	if( obj.all[i].options != null)
	    		obj.all[i].options[0].selected = true;
	    	break;
	    case 'TEXTAREA':
	    	  obj.all[i].value = "";
	        break;
		}
	}
}

/**********************************************************************************************
desc   : ÇØ´ç ¿ÀºêÁ§Æ®¿¡ '¿ù'À» ¼¼ÆÃÇÑ´Ù
syntax : cfMonthCombo('se_01')       
param  : objId-ÀÔ·ÂµÈ ¿ÀºêÁ§Æ®ID
***********************************************************************************************/
function cfMonthCombo(monthField){
	var today=new Date();	
	var monthField=document.getElementById(monthField);

	var thisyear = today.getMonth();

  for (var y=0; y<12; y++){
  	if (y<9) {
  		monthField.options[y]=new Option('0'+(y+1)+'¿ù', '0'+(y+1)+'¿ù');
    	} else {
    		monthField.options[y]=new Option((y+1)+'¿ù', (y+1)+'¿ù');
    	}
  }
  monthField.options[thisyear].selected = true;
}

/**********************************************************************************************
desc   : ÇØ´ç ¿ÀºêÁ§Æ®¿¡ '½Ã'½Ã°£À» ¼¼ÆÃÇÑ´Ù
syntax : cfHoursCombo('se_01')       
param  : objId-ÀÔ·ÂµÈ ¿ÀºêÁ§Æ®ID
***********************************************************************************************/
function cfHoursCombo(hoursField){
	var today=new Date();	
	var hoursField=document.getElementById(hoursField);

	var thisyear = today.getHours();

  for (var y=0; y<24; y++){
  	if (y<10) {
  		hoursField.options[y]=new Option('0'+y, '0'+y);
    	} else {
    		hoursField.options[y]=new Option(y, y);
    	}    	
  }
  hoursField.options[thisyear].selected = true;
}

/**********************************************************************************************
desc   : ÇØ´ç ¿ÀºêÁ§Æ®¿¡ 'ºÐ'½Ã°£À» ¼¼ÆÃÇÑ´Ù (select box)
syntax : cfMinutesCombo('se_01')       
param  : objId-ÀÔ·ÂµÈ ¿ÀºêÁ§Æ®ID
***********************************************************************************************/
function cfMinutesCombo(minutesField){
	var today=new Date();
	var monthtext=['00','01','02','03','04','05','06','07','08','09',
	               '10','11','12','13','14','15','16','17','18','19',
	               '20','21','22','23','24','25','26','27','28','29',
				   '30','31','32','33','34','35','36','37','38','39',
				   '40','41','42','43','44','45','46','47','48','49',
				   '50','51','52','53','54','55','56','57','58','59'];

	var minutesField=document.getElementById(minutesField);
	
	    for (var m=0; m<60; m++) {
	        minutesField.options[m]=new Option(monthtext[m], monthtext[m]);
	    }
}

/**********************************************************************************************
desc   : ÇØ´ç ¿ÀºêÁ§Æ®¿¡ 'ºÐ'½Ã°£À» ¼¼ÆÃÇÑ´Ù (input box)
syntax : cfMinutesInput('inputbox_01', setTime, 'calType')       
param  : objId-ÀÔ·ÂµÈ ¿ÀºêÁ§Æ®ID
***********************************************************************************************/
function cfMinutesInput(minutesField, setTime, calType){
	var today=new Date();	
	var minTime = eval(today.getMinutes() + calType + setTime);
	var minutesField=document.getElementById(minutesField);
	if( minTime > 59){
		minTime = 59;
	}else if( minTime < 10 ) {
		minTime = '0' + minTime;
	}
	minutesField.value = minTime;
}

/**********************************************************************************************
desc   : ÇØ´ç ¿ÀºêÁ§Æ®¿¡ 'ÃÊ'½Ã°£À» ¼¼ÆÃÇÑ´Ù
syntax : cfSecondsCombo('se_01')       
param  : objId-ÀÔ·ÂµÈ ¿ÀºêÁ§Æ®ID
***********************************************************************************************/
function cfSecondsCombo(secondsField){
	var today=new Date();
	var secondsField=document.getElementById(secondsField);
	
	    for (var i=0; i<60; i++) {
	    		if (i<10) {
	        	secondsField.options[i]=new Option('0'+i, '0'+i);
	      	} else {
	      		secondsField.options[i]=new Option(i, i);
	      	}
	    }
}

/**********************************************************************************************
desc   : ÆÄÀÏ¸í¼¼ÆÃ
syntax : cfSetFileName(file_name)       
param  : fObj:ÆÄÀÏ¿ÀºêÁ§Æ®, vObj-ÆÄÀÏ¸íÀ» ¹ÝÈ¯ÇÒ ¿ÀºêÁ§Æ®
return : String
***********************************************************************************************/
function cfSetFileName(fObj, vObj) {

	var filePath = $(fObj).value;	
	var src = cfGetFileType(filePath);	// È®ÀåÀÚ Ã¼Å©

	if (src == "") {
		alert('¿Ã¹Ù¸¥ ÆÄÀÏÀ» ÀÔ·ÂÇÏ¼¼¿ä');
		return;
	} else if ( !((src.toLowerCase() == "jpg") || (src.toLowerCase() == "bmp") || (src.toLowerCase() == "avi") 
	    	|| (src.toLowerCase() == "wmv") || (src.toLowerCase() == "wav") || (src.toLowerCase() == "mpeg") || (src.toLowerCase() == "gif")) ) {
		alert("Áö¿øÇÏÁö ¾Ê´Â Çü½ÄÀÔ´Ï´Ù.");
		return;
	}

	var orgFileName =  cfOrgFileName(filePath);
	$(vObj).value  = orgFileName;
}

/**********************************************************************************************
desc   : ÆÄÀÏ¸í °¡Á®¿À±â
syntax : fnOriFileName(file_name)       
param  : file_name-ÆÄÀÏ¸í
return : String
***********************************************************************************************/
function cfOrgFileName(filePath) {
	var idx = filePath.lastIndexOf("\\");
	var fileName = filePath.substring( idx+1, filePath.length );	// ½ÇÁ¦ ÆÄÀÏ¸í

	return fileName;
}

/**********************************************************************************************
desc   : ÆÄÀÏ È®ÀåÀÚ Ã¼Å©
syntax : cfGetFileType(file_name)       
param  : file_name-ÆÄÀÏ¸í
return : String
***********************************************************************************************/
function cfGetFileType(filePath) {
	var lastIndex = -1;
  lastIndex = filePath.lastIndexOf('.');
  var extension = "";

	if ( lastIndex != -1 ){
	    extension = filePath.substring( lastIndex+1, filePath.len );
	} else {
	    extension = "";
	}
  return extension;
}

/**********************************************************************************************
desc   : Á¤·ùÀå °Ë»ö ÆË¾÷ È£Ãâ
syntax : cfSearchStationPop(text_01, text02)       
param  : bit_id, station_id
return : 
***********************************************************************************************/
function cfSearchStationPop(obj1, obj2, str) {	
	var width= "800";
	var height="600";
	var stylePopup = "dialogWidth:" + width + "px; dialogHeight:" + height + "px;scroll:no;help:no; status:no;center:yes;";
	var url = ContextRoot + "/popup/comm_station_pop.jsp?"
  	    + "station_nm=" + obj2.value;
	var form = [obj1, obj2];
	var ret = window.showModalDialog(url, form, stylePopup);
	
	if ( typeof(ret) == "undefined" ) return;
	
	var arrRet = ret.split(",");
	obj1.value = arrRet[0];
	obj2.value = arrRet[1];
	
	if (str == "BIND") {
		parent.fnSetValueStation(obj1.id,obj2.id,obj1.value,obj2.value);
	}
}

/**********************************************************************************************
desc   : ÄÃ·¯ÇÈÄ¿ È£Ãâ
syntax : cfColorSelect(pushed_button, color_value_text_id)   
***********************************************************************************************/
var ColorSelectDialog = null;
function cfColorSelect(pushed_button, color_value_text_id) {
  if (ColorSelectDialog==null) {
      var ColorSelectDialog = document.createElement("OBJECT");
      ColorSelectDialog.classid = "clsid:3050f819-98b5-11cf-bb82-00aa00bdce0b";
      ColorSelectDialog.style.width = 0;
      ColorSelectDialog.style.height = 0;
      document.body.appendChild(ColorSelectDialog);
  }

  var color_value_obj = document.getElementById(color_value_text_id);
  var inputed_color = color_value_obj.value;

  if (inputed_color == '')    var selected_color = ColorSelectDialog.ChooseColorDlg();
  else                        var selected_color = ColorSelectDialog.ChooseColorDlg(inputed_color);

  selected_color = selected_color.toString(16);
  if (selected_color.length < 6)
  {
      var tmp = "000000".substring(0,6-selected_color.length);
      selected_color = tmp.concat(selected_color);
  }

  color_value_obj.value = '#' + selected_color.toUpperCase();
  pushed_button.style.backgroundColor = selected_color;
  
	//2010.04.02.SSH. ±×¸®µå ¹ÙÀÎµùÀ» ÇØ¾ßÇÏ´Â °æ¿ì ºÎ¸ðÃ¢ÀÇ ÇÔ¼öÈ£Ãâ.	
	parent.fnSetValueColor(color_value_text_id, '#' + selected_color.toUpperCase());
	
}

/**********************************************************************************************
desc   : ÄÃ·¯ÇÈÄ¿ »ö»ó°ª ÀÔ·Â Ã¼Å©
syntax : cfCheckColor(sVal)   
param  : »ö»óÄÚµå°ª
return : boolean
***********************************************************************************************/
function cfCheckColor(str)
{	
var keyList = "";	//¼ýÀÚÅ° ¸®½ºÆ®
	
	//ctrl+cÀÎ °æ¿ì true
	if ( event.ctrlKey && event.keyCode == 67 ) {
		return true;
	}
	
	//ctrl+xÀÎ °æ¿ì true
	if ( event.ctrlKey && event.keyCode == 88 ) {
		return true;
	}
	
	//ctrl+vÀÎ °æ¿ì true
	if ( event.ctrlKey && event.keyCode == 86 ) {
		return true;
	}
	
	//shift+#ÀÎ °æ¿ì true
	if ( event.shiftKey && event.keyCode == 48 ) {
		return false;
	} else  if ( event.shiftKey && event.keyCode == 49 ) {
		return false;
	} else if ( event.shiftKey && event.keyCode == 50 ) {
		return false;
	} else if ( event.shiftKey && event.keyCode == 51 ) {
		return true;
	} else if ( event.shiftKey && event.keyCode == 52 ) {
		return false;
	} else if ( event.shiftKey && event.keyCode == 53 ) {
		return false;
	} else if ( event.shiftKey && event.keyCode == 54 ) {
		return false;
	} else if ( event.shiftKey && event.keyCode == 55 ) {
		return false;
	} else if ( event.shiftKey && event.keyCode == 56 ) {
		return false;
	} else if ( event.shiftKey && event.keyCode == 57 ) {
		return false;
	}
	keyList = [48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 
             8, 35, 36, 37, 38, 39, 40, 45, 46,
             9, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
             65,66,67,68,69,70];


	//tab, Backspace , End, Home, left, up, right, down,  insert, delete, dash, number pad
	for(var i = 0; i < keyList.length; i++){		
		if( event.keyCode == keyList[i])
			return true;
	}
	return false;
}
function cfDisplayMenu(targetObjId,pageTabCount,topTabMax) {	
	var objStrId = cfGetStringOnly(targetObjId);
	var objIntId = parseInt( cfGetNumberOnly(targetObjId), 10);

	if ( objIntId <= topTabMax){			
		for (i = 1; i <= topTabMax; i++) {
		    if (objIntId == i) {
	    		thisMenu = eval(objStrId + objIntId + ".style");
	    		thisMenu.display = "";
	    	} 
	    	else {
	    		otherMenu = eval(objStrId + i + ".style"); 
	    		otherMenu.display = "none";
	    	}
	    }
	}else{
		for (i = topTabMax + 1 ; i <= pageTabCount; i++) {
		    if (objIntId == i) {
	    		thisMenu = eval(objStrId + objIntId + ".style");
	    		thisMenu.display = "";
	    	} 
	    	else {
	    		otherMenu = eval(objStrId + i + ".style"); 
	    		otherMenu.display = "none";
	    	}
	    }
	}    
}

//------------------------------------------------------------------------------------------------------
//
//  									   ±âÅ¸  ÇÔ¼ö                    
//
//------------------------------------------------------------------------------------------------------
/**********************************************************************************************
desc   : Á¶È¸ÀÌ¹ÌÁö ÃÊ±âÈ­, ½ÇÇà, Á¤Áö
syntax : coProgress.init();, coProgress.exec();     
param  : x-xÀ§Ä¡, y-yÀ§Ä¡
***********************************************************************************************/
var cfProgress = {
	iframeObj : null,
	errMsg : null,
	init : function (x,y){
		this.iframeObj = document.createElement('<iframe id="progressFrame" style="visibility:hidden; position:absolute; left:' + x + 'px; top:' + y + 'px;width:200px;height:40px;filter: alpha(opacity=100)" FrameBorder="0" src="/common/jsp/comm_wait.jsp" scroll="no"></iframe>');
	    document.body.insertBefore(this.iframeObj);
	},
		exec : function (type){
	  	document.all.progressFrame.src="";

	  	document.all.progressFrame.src= "/common/jsp/comm_wait.jsp?type="+type;
	  	document.all.progressFrame.style.bgcolor="white";
	  	document.all.progressFrame.style.visibility="visible";   
	},
	stop : function (){
		document.all.progressFrame.style.visibility="hidden";
	}

}

/**********************************************************************************************
desc   : AjaxÈ£ÃâÇÔ¼ö
syntax : cfAjaxRequest('/main.do', 'post', 'param=a', 'fnSuce', 'fnErr');    
param  : url-È£ÃâURL, type-get/post¹æ½Ä, successFn-¼º°ø½ÃÈ£ÃâÇÔ¼ö, errorFn-½ÇÆÐ½ÃÈ£ÃâÇÔ¼ö
***********************************************************************************************/
function cfAjaxRequest(url , type,  pars , successFn,  errorFn){	
	
	var myAjax = new Ajax.Request(
		url, 
		{
			method: type, 
			parameters: pars,			
			onSuccess : eval(successFn),
			onFailure: eval(errorFn)
		});
}

/**********************************************************************************************
desc   : AjaxÈ£ÃâÇÔ¼ö
syntax :  cfGetJsonData('/main.do', 'post', 'param=a', 'fnResult');    
param  : url-È£ÃâURL, type-get/post¹æ½Ä, pars-parameters, callFn-¿Ï·á½Ã È£ÃâÇÔ¼ö
***********************************************************************************************/
function cfGetJsonData(url, type, pars, callFn){	
	new Ajax.Request(url, 
	{   method:type,   
		parameters: pars,
		requestHeaders: {Accept: 'application/x-json'},   
		onSuccess: eval(callFn)
	});	
}


/**********************************************************************************************
desc   : Excel È£ÃâÇÔ¼ö(Flex¿¡¼­ È£Ãâ)
syntax :      
param  : str-¿¢¼¿ ½ºÆ®¸µ
***********************************************************************************************/
function fnSetExcel(str, grid_id) {
	window.clipboardData.setData('Text', str);
}
//ÄÞº¸¹Ú½º °´Ã¼ ±¸Á¶Ã¼
CP = function(cmbID, cId , cName, cVal, cLab){
	this.cmbID  = cmbID;	 // ÄÞº¸¹Ú½º ID
	this.cId    = cId;		 // ÄÞº¸¹Ú½º ID
	this.cName  = cName;	 // ÄÞº¸¹Ú½º NAME
	this.cValue = cVal;      // ÄÞº¸¹Ú½º VALUE
	this.cLabel = cLab;      // ÄÞº¸¹Ú½º LABEL
}
CP.prototype = {
		 setValue : function(cmbID, cId , cName, cVal, cLab){
	this.cmbID  = cmbID;	 // ÄÞº¸¹Ú½º ID
	this.cId    = cId;		 // ÄÞº¸¹Ú½º ID
	this.cName  = cName;	 // ÄÞº¸¹Ú½º NAME
	this.cValue = cVal;      // ÄÞº¸¹Ú½º VALUE
	this.cLabel = cLab;      // ÄÞº¸¹Ú½º LABEL
		 },	
		 	 toCmbID: function() {											
			    return this.cmbID;
			 },	
		 	 toID: function() {											
			    return this.cId;
			 },		 			
			 toName: function() {											
			    return this.cName;
			 },		 			
			 toValue: function() {											
			    return this.cValue;
			 },
			 toLabel: function() {											
			    return this.cLabel;
			 }
}
