﻿// JScript 파일
// Main Frame Page Check
function CheckMainFrame()
{
//    if(parent.frames.length <= 0) { top.location.href="/index.htm"; }
}
// /Message폴더에서 Message ID를 이용하여 Message내용을 읽어온다
function GetCommonErrorMessage(pMsgCode, pLanguage)
{
    var rtnMsg;
    var XmlMsgFileName = "/Message/Message.xml";
    var xmlDoc = new ActiveXObject("MSXML.DOMDocument");
    xmlDoc.async = false;
    xmlDoc.load(XmlMsgFileName);

    var xroot = xmlDoc.documentElement;

    if (xroot.hasChildNodes) 
    {
        for(i=0 ; i<xroot.childNodes.length; i++)
        {
            var attrs = xroot.childNodes[i].attributes;
            var attrID = attrs.getNamedItem("ID");
            if(attrID.value == pMsgCode)
            {
                if (pLanguage == "ENG")
                {
                    rtnMsg = xroot.childNodes[i].childNodes[1].text;
                }
                else if (pLanguage == "CHN")
                {
                    rtnMsg = xroot.childNodes[i].childNodes[2].text;
                }
                else if (pLanguage == "JPN")
                {
                    rtnMsg = xroot.childNodes[i].childNodes[3].text;
                }
                else
                {
                    rtnMsg = xroot.childNodes[i].childNodes[0].text;
                }
                break;
            }
        }
    } 
    if(rtnMsg == "")
    {
        rtnMsg = GetCommonErrorMessage("5", pLanguage)
    }
    return rtnMsg;
}

/************************************************************************
함수명		: fn_OpenModalDialog()
작성목적	: Modal형식으로 Window를 Open한다.
파라미터    : 
            openURL     : Modal로 Open할 페이지 URL
            windowTitle : window 타이틀
            param       : showModalDialog의 두번째 인자
            features    : showModalDialog의 세번째 인자로 창을 Open할때 Window의 환경설정
Sample      : 
			var sURL = escape('../Request/Default.aspx');
			var sTitle = 'ModalDialog 테스트';
			
			var param = new Object();
			param["ID"] = 'htkim';
			param["RefreshYN"] = 'N';
			
			var features = "dialogWidth:410px;dialogHeight:256px;scroll:no";
			var returnVal = fn_OpenModalDialog(sURL, sTitle, param, features);
*************************************************************************/
function fn_OpenModalDialog(openURL, windowTitle, param, features)
{
	try
	{
		var strReturn = "";
		var height = fn_OpenModalDialogParseHeight(features);
		
        var queryParam = "WinHeight=" + height + "&Title=" + windowTitle + "&URL=" + openURL;
        var url = "/Common/ModalDialog.htm?" + queryParam;
        
        strReturn = window.showModalDialog( url, param, features);

        return strReturn;
	}
	catch(exception)
	{
		fn_OpenErrorMessage(exception.description);
	}
}

//=============================================================
//	modal
//=============================================================	
function fn_ShowModalDialog(url, feature)
{
	return window.showModalDialog("/Common/ModalDialog.htm", url, feature);
}

/************************************************************************
함수명		: fn_OpenModalDialogParseHeight()
작성목적	: IE7.0을 지원하기 위해 추가된 함수
              Modal형식으로 Window를 Open한다.
              
파라미터    : 
            features    : showModalDialog의 세번째 인자로 창을 Open할때 Window의 환경설정
Sample      : 
            var height = fn_OpenModalDialogParseHeight(features);
*************************************************************************/
function fn_OpenModalDialogParseHeight(features)
{
    //dialogWidth:410pxscroll:no;dialogHeight:256;
    try
    {
        var defaultWindowHeight = 256;              //기본 window Height
        
        var tempString = features.toUpperCase();
        var firstIndex = tempString.split(';');
        
        var selectIndex = null;
        for (i = 0; i <= firstIndex.length; i++)
        {
            if (firstIndex[i].substring(0, 12).toUpperCase() == "DIALOGHEIGHT")
            {
                selectIndex = i;
                break;
            }
        }
        if (selectIndex == null)
        {
            returnValue = defaultWindowHeight;
            return returnValue;
        }
        else
        {
            var secondString = firstIndex[selectIndex];
            var secondIndex = secondString.lastIndexOf(':');
            var thirdIndex = secondString.lastIndexOf('P');
            var tempValue = secondString.substring(secondIndex+1);
            
            if (tempValue.search("PX") != -1)
            {
                tempIndex = tempValue.lastIndexOf('P');
                returnValue = tempValue.substring(0, tempIndex);
                return returnValue;
            }
            else
            {
                return returnValue;
            }
        }
    }
    catch (exception)
    {
        fn_OpenErrorMessage(exception.description);
    }    
}

/************************************************************************
함수명		: fn_OpenModaless()
작성목적	: Confirm 대화상자를 Open 합니다.
              
파라미터    : 
            openURL     : Open할 페이지
            title       : Modal ID
            width       : Modal의 가로크기
            height      : Modal의 세로크기
            scrollbars  : scrollbar 사용여부 (yes or no)
수정내역	: 
Sample      : 
            
*************************************************************************/
function fn_OpenModaless(openURL, title, width, height, scrollbars)
{
    try
    {
	    var screenWidth = window.screen.availWidth;
	    var screenHeight = window.screen.availHeight;
    	
	    var top = (screenHeight-height-20)/2;
	    var left = (screenWidth-width)/2;
    	
    	title = window.open(openURL, title, 'top = '+top+', left = '+left+',width='+width+', height='+height+', resizable=no, status=yes, toolbar=no, menubar=no, scrollbars=' + scrollbars);
	    title.focus();
	}
	catch (exception)
    {
        //fn_OpenErrorMessage(exception.description);
    }    
}

/************************************************************************
함수명		: fn_OpenModaless()
작성목적	: Confirm 대화상자를 Open 합니다.
              
파라미터    : 
            openURL     : Open할 페이지
            title       : Modal ID
            width       : Modal의 가로크기
            height      : Modal의 세로크기
            scrollbars  : scrollbar 사용여부 (yes or no)
수정내역	: 
Sample      : 
            
*************************************************************************/
function fn_OpenModaless02(openURL, title, width, height, top, left, scrollbars)
{
    try
    {
    	title = window.open(openURL, title, 'top = '+top+', left = '+left+',width='+width+', height='+height+', resizable=no, status=yes, toolbar=no, menubar=no, scrollbars=' + scrollbars);
	    title.focus();
	}
	catch (exception)
    {
        //fn_OpenErrorMessage(exception.description);
    }    
}

/************************************************************************
함수명		: fn_OpenWindow()
작성목적	: Confirm 대화상자를 Open 합니다.
              
파라미터    : 
            openURL     : Open할 페이지
            title       : title
            width       : Window의 가로크기
            height      : Window의 세로크기
            scrollbars  : scrollbar 사용여부 (yes or no)
수정내역	: 
Sample      : 
            
*************************************************************************/
function fn_OpenWindow(openURL, title, width, height, scrollbars)
{
    try
    {
	    var screenWidth = window.screen.availWidth;
	    var screenHeight = window.screen.availHeight;
    	
	    var top = (screenHeight-height-20)/2;
	    var left = (screenWidth-width)/2;
    	
    	title = window.open(openURL, title, 'top = '+top+', left = '+left+',width='+width+', height='+height+', resizable=no, status=yes, toolbar=no, menubar=no, scrollbars=' + scrollbars);
	    title.focus();
	}
	catch (exception)
    {
        fn_OpenErrorMessage(exception.description);
    }    
}

/************************************************************************
함수명		: fn_OpenConfirm()
작성목적	: Confirm 대화상자를 Open 합니다.
              
파라미터    : 
            message    : 화면에 Display되는 메세지 입니다.
수정내역	: 
Sample      : 
            var retVal = fn_OpenConfirm("상품관리", "삭제하시겠습니까?");
            if (returnVal == true)
            {
                ...
            }
*************************************************************************/
function fn_OpenConfirm(title, message)
{
	try
	{
		var param = new Object();
		param["title"] = title;
		param["message"] = message;
		
		//var res = window.showModalDialog( "Common/ConfirmMessage.htm", param,"dialogWidth:405px;dialogHeight:260px;status=no;scroll=no");
		var res = window.confirm( message );
		return res;
	}
	catch(exception)
	{
		fn_OpenErrorMessage(exception.description);
	}
}

/************************************************************************
함수명		: fn_OpenConfirmBehind()
작성목적	: BasePage의 Confirm함수에서 사용 됩니다.
              this.Confirm("..")함수에서 fn_ConfrimPost() 함수를 자동으로 
              호출 하므로 fn_ConfrimPost() 함수는 반드시 aspx에 존재해야 합니다.
              
파라미터    : 
            title      : Showdialog 윈도우 Title 값 입니다. 
            message    : 화면에 Display되는 메세지 입니다.
Sample      : 
            .cs 페이지에서..
            this.Confirm("삭제하시겠습니까?");
            
            //aspx페이지에 fn_ConfrimPost 함수를 구현 합니다.
            function fn_ConfrimPost(res)
            {
                if (res == true)
                {
                    ....
                }
                else
                {
                    ....
                }
            }
*************************************************************************/
function fn_OpenConfirmBehind(title, message)
{
	try
	{
		var param = new Object();
		param["title"] = title;
		param["message"] = message;
		
		//var res = window.showModalDialog( "Common/ConfirmMessage.htm", param,"dialogWidth:405px;dialogHeight:260px;status=no;scroll=no");
		var res = window.confirm( message );
		
		fn_ConfrimPost(res);
	}
	catch(exception)
	{
		fn_OpenErrorMessage(exception.description);
	}
}


/************************************************************************
함수명		: fn_OpenInformation()
작성목적	: Inform 대화상자를 Open 합니다.
              
파라미터    : 
            message    : 화면에 Display되는 메세지 입니다.
Sample      : 
            fn_OpenInformation("상품관리", "삭제되었습니다.");
*************************************************************************/
function fn_OpenInformation(title, message)
{
	try
	{
	    var param = new Object();
		param["message"] = message;
		param["title"] = title;
		//window.showModalDialog("Common/InformationMessage.htm", param, "dialogWidth:405px;dialogHeight:260px;status=no;scroll=no");
		window.alert(message);
	}
	catch(exception)
	{
		fn_OpenErrorMessage(exception.description);
	}
}

/************************************************************************
함수명		: fn_OpenErrorMessage()
작성목적	: Error 대화상자를 Open 합니다. 
파라미터    : 
            errMessage    : 화면에 Display되는 메세지 입니다.
            detailMessage : DetailView에 사용되는 메세지 입니다.
Sample      : 
            fn_OpenErrorMessage("Input Default Error Message", "Input Detail Error Message");
            OR
            fn_OpenErrorMessage("Input Error Message");
*************************************************************************/
function fn_OpenErrorMessage(errMessage, detailMessage)
{
	try
	{
	    if (detailMessage == null) 
	            detailMessage = '';
	    
	    var newstr1 = detailMessage.fn_Replace('§<', '(');
	    var newstr2 = newstr1.fn_Replace('§>', ')');
	    
        var param = new Object();
		param["message"] = errMessage;
		param["detailMessage"] = newstr2;
		
		//window.showModalDialog("Common/ErrorMessage.htm",param, "dialogWidth:405px;dialogHeight:260px;status=no;scroll=no");
		window.alert(errMessage);
	}
	catch(exception)
	{
		window.alert("Error ! Please Refresh..");
	}
}

/************************************************************************
함수명		: fn_InsertComma()
작성목적	: 숫자로된 데이타에 ','를 추가 해서 반환 합니다.
파라미터    : 
            sValue   : ','를 추가할 원본 데이터 입니다.
Sample      : 
			var srcData = "23456";
			var result = fn_InsertComma(srcData);
			결과 : 23,456
*************************************************************************/
function fn_InsertComma(sValue)
{
	if (sValue == null)
	{
		return "";
	}
	
    num1 = sValue.toString().length;        

	if (num1 > 0)
	{
		FirstNum = sValue.toString().substring(0,1);
		FirstNum2 = sValue.toString().substring(1,num1);

		if(FirstNum == "0")
		{
			sValue = parseFloat(sValue.toString());
		}

		loop = /^\$|,/g; 
		sValue = sValue.toString().replace(loop, ""); 

		var fieldnum = '' + sValue;    

		if ( isNaN(fieldnum) )
		{
			//alert("숫자만 입력하실 수 있습니다.");        
			//fn_OpenInformation(document.title, "숫자만 입력하실 수 있습니다.");
			return "";
		}
		else 
		{
			var comma = new RegExp('([0-9])([0-9][0-9][0-9][,.])');
			var data = fieldnum.split('.');
			data[0] += '.';
			do 
			{
				data[0] = data[0].replace(comma, '$1,$2');
			} while ( comma.test(data[0]) );
		
			if (data.length > 1) 
			{
				return data.join('');
			}
			else 
			{
				return data[0].split('.')[0];
			}
		}
	}
	else
	{
		return "";
	}
}

/************************************************************************
함수명		: fn_DeleteComma()
작성목적	: ,데이타를 삭제 합니다.
파라미터    : 
Sample      : 
			var srcData = "23456";
			var result = fn_InsertComma(srcData);
			결과 : 23,456
*************************************************************************/
function fn_DeleteComma(src)
{
	return src.replace(/\,/g, "");
}

/************************************************************************
함수명		: fn_Left()
작성목적	: 해당문자를 왼쪽에서부터 len만큼 가져옵니다.
              VisualBasic의 Left함수를 구현 합니다.
파라미터    : 
            str : 원본문자열
            len : 자리수Return
Sample      : 
			var srcData = "가나다";
			var result = fn_Left(srcData,2);
			결과 : 가나
*************************************************************************/
function fn_Left(str, len)
{
	if (len <= 0)
		return "";
	else if (len > String(str).length)
		return str;
	else
		return String(str).substring(0,len);
}

/************************************************************************
함수명		: fn_Right()
작성목적	: 해당문자를 오른쪽에서부터 len만큼 가져온다.
              VisualBasic의 Right함수를 구현 합니다.   
파라미터    : 
            str : 원본문자열
            len : 자리수Return
Sample      : 
			var srcData = "가나다";
			var result = fn_Right(srcData,2);
			결과 : 나다
*************************************************************************/	
function fn_Right(str, len)
{
	if (len <= 0)
		return "";
	else if (len > String(str).length)
		return str;
	else
	{
		var iLen = String(str).length;
		return String(str).substring(iLen, iLen - len);
	}
}

/************************************************************************
함수명		: fn_CheckNumberTextBox()
작성목적	: text box에 입력값이 숫자일 경우에만 입력 받는다.
파라미터    : 
Sample      : document.all.txtPrice.onkeypress = fn_CheckNumberBox
									OR
			  onkeypress="fn_CheckNumberTextBox();"
*************************************************************************/	
function fn_CheckNumberTextBox()
{
	try
	{
		// 허용키 : 8, 13, 27, 48 ~ 57
		if ( window.event.keyCode >= 48 && window.event.keyCode <= 57 )
		{
			window.event.returnValue = true;
			return;
		}
		if ( window.event.keyCode == 8 && window.event.keyCode == 13 && window.event.keyCode == 27 )
		{
			window.event.returnValue = true;
			return;
		}
		window.event.returnValue = false;
	}
	catch ( exception )
	{
	}	
}

/************************************************************************
함수명		: fn_GetCheckedValues(containerID)
작성목적	: 테이블 및 기타 CheckBox 컨트롤을 포함하고 있는 컨네이터 내의
			  Check된 CheckBox의 값을 배열로 반환 합니다.
파라미터    : 
Sample      : var checkedValues = fn_GetCheckedValues("tableID1");
			  if (checkedValues == null)
			  {
				//Checked된게 없음
				....
			  }
			  else
			  {
				for(int i=0;i<checkedValues.length;i++)
				{
					....
				}
			  }
*************************************************************************/	
function fn_GetCheckedValues(containerID)
{
	var strColDelimiter = "|^|";
	var oContainer;
	var oContainer = eval('document.all.' + containerID);
	var strValues = "";
	
	for ( var i = 0 ; i < oContainer.all.length ; i++ )
	{
		oItem = oContainer.all[i];
		
		if ( oItem.tagName.toUpperCase() == "INPUT")
		{
			if ( oItem.getAttribute("type").toUpperCase() == "CHECKBOX" )
			{
				if (oItem.checked == true)
				{
					if (fn_TrimAll(oItem.value) != "")
					{
						strValues += oItem.value + strColDelimiter;
					}
				}
			}
		}
	}
	
	var arrValues = strValues.split(strColDelimiter);
	if (arrValues == null) return null;
	
	var arrReturn = null;
	if (arrValues.length == 1)
	{
		return null;
	}
	else
	{
		arrReturn = new Array(arrValues.length - 1);
		for(var j=0;j<arrValues.length - 1;j++)
		{
			arrReturn[j] = arrValues[j];
		}
	}
	
	return arrReturn;
}

/************************************************************************
함수명		: 오버로드 되었습니다.
			  fn_GetCheckedValues(containerID, exceptControlIDs)
작성목적	: 테이블 및 기타 CheckBox 컨트롤을 포함하고 있는 컨네이터 내의
			  Check된 CheckBox의 값을 배열로 반환 합니다.
파라미터    : 
				containerID      : CheckBox를 검색할 Container Id입니다.
				exceptControlIDs : 제외할 CheckBox 컨트롤 Id 입니다.
								   하나 이상일 경우 콤마(,)로 구분 합니다.
Sample      : var checkedValues = fn_GetCheckedValues("tableID1");
			  if (checkedValues == null)
			  {
				//Checked된게 없음
				....
			  }
			  else
			  {
				for(int i=0;i<checkedValues.length;i++)
				{
					....
				}
			  }
*************************************************************************/
function fn_CheckedExceptControlID(exceptID, exceptControlIDs)
{
	var arrControls = exceptControlIDs.split(',');
	var result = false;
	
	for(var i=0;i<arrControls.length;i++)
	{
		if (fn_Trim(exceptID) == fn_Trim(arrControls[i]))
		{
			result = true;
			break;
		}
	}
	return result;
}
function fn_GetCheckedValues(containerID, exceptControlIDs)
{
	var strColDelimiter = "|^|";
	var oContainer;
	var oContainer = eval('document.all.' + containerID);
	var strValues = "";
	
	for ( var i = 0 ; i < oContainer.all.length ; i++ )
	{
		oItem = oContainer.all[i];
		
		if ( oItem.tagName.toUpperCase() == "INPUT")
		{
			if ( oItem.getAttribute("type").toUpperCase() == "CHECKBOX" )
			{
				if (oItem.checked == true)
				{
					if (fn_TrimAll(oItem.value) != "")
					{
						if (exceptControlIDs != null && fn_Trim(exceptControlIDs).length > 0)
						{
							//제외대상 여부 확인
							if (fn_CheckedExceptControlID(oItem.id, exceptControlIDs) == false)
							{
								strValues += oItem.value + strColDelimiter;
							}
						}
						else
						{
							strValues += oItem.value + strColDelimiter;
						}
					}
				}
			}
		}
	}
	
	var arrValues = strValues.split(strColDelimiter);
	if (arrValues == null) return null;
	
	var arrReturn = null;
	if (arrValues.length == 1)
	{
		return null;
	}
	else
	{
		arrReturn = new Array(arrValues.length - 1);
		for(var j=0;j<arrValues.length - 1;j++)
		{
			arrReturn[j] = arrValues[j];
		}
	}
	
	return arrReturn;
}

/************************************************************************
함수명		: fn_SetCheckBoxAllChecked(containerID)
작성목적	: 테이블 및 기타 CheckBox 컨트롤을 포함하고 있는 컨네이터 내의
			  모든값을 checked 시킵니다.
파라미터    : 
Sample      : var checkedValues = fn_SetCheckBoxAllChecked("tableID1");
*************************************************************************/	
function fn_SetCheckBoxAllChecked(containerID)
{
	var oContainer;
	var oContainer = eval('document.all.' + containerID);
	var strValues = "";
	
	for ( var i = 0 ; i < oContainer.all.length ; i++ )
	{
		oItem = oContainer.all[i];
		
		if ( oItem.tagName.toUpperCase() == "INPUT")
		{
			if ( oItem.getAttribute("type").toUpperCase() == "CHECKBOX" )
			{
				oItem.checked = true;
			}
		}
	}
}

/************************************************************************
함수명		: fn_SetCheckBoxAllCheckedToggle(containerID)
작성목적	: 테이블 및 기타 CheckBox 컨트롤을 포함하고 있는 컨네이터 내의
			  모든값을 checked 시킵니다.
파라미터    : 
Sample      : var checkedValues = fn_SetCheckBoxAllChecked("tableID1");
*************************************************************************/	
function fn_SetCheckBoxAllCheckedToggle(containerID)
{
	var oContainer;
	var oContainer = eval('document.all.' + containerID);
	var strValues = "";
	var count = 0;
	
	for ( var i = 0 ; i < oContainer.all.length ; i++ )
	{
		oItem = oContainer.all[i];
		
		if ( oItem.tagName.toUpperCase() == "INPUT")
		{
			if ( oItem.getAttribute("type").toUpperCase() == "CHECKBOX" )
			{
			    if(!oItem.checked)
			    {
				    oItem.checked = true;
				    count++;
				}
			}
		}
	}
	
	if(count == 0)
	{
	    for ( var i = 0 ; i < oContainer.all.length ; i++ )
	    {
		    oItem = oContainer.all[i];
    		
		    if ( oItem.tagName.toUpperCase() == "INPUT")
		    {
			    if ( oItem.getAttribute("type").toUpperCase() == "CHECKBOX" )
			    {   
				    oItem.checked = false;
			    }
		    }
	    }
	}
}

/************************************************************************
함수명		: fn_TrimAll()
작성목적	: 해당문자열의 모든 공백을 제거 합니다.
파라미터    : 
Sample      : var val = fn_TrimAll("  abc def ghi  ");
			  결과값 : "abcdefghi"
*************************************************************************/	
function fn_TrimAll(str) 
{
	var re = / /gim;
	return str.replace(re,"");
}

/************************************************************************
함수명		: fn_LTrim()
작성목적	: 해당문자열의 왼쪽 공백을 제거 합니다.
파라미터    : 
Sample      : var val = fn_LTrim("  abc def ghi  ");
			  결과값 : "abc def ghi  "
*************************************************************************/	
function fn_LTrim(str)
{
	return str.replace(/^\s[ \t]*/,"");
}

/************************************************************************
함수명		: fn_RTrim()
작성목적	: 해당문자열의 오른쪽 공백을 제거 합니다.
파라미터    : 
Sample      : var val = fn_RTrim("  abc def ghi  ");
			  결과값 : "  abc def ghi"
*************************************************************************/	
function fn_RTrim(str)
{
	return str.replace(/\s[ \t]*$/,"");
}

/************************************************************************
함수명		: fn_Trim()
작성목적	: 해당문자열의 오른쪽, 왼쪽 공백을 제거 합니다.
파라미터    : 
Sample      : var val = fn_Trim("  abc def ghi  ");
			  결과값 : "abc def ghi"
*************************************************************************/	
function fn_Trim(str)
{
	return str.replace(/^\s[ \t]*|\s[ \t]*$/g, "")
}

/************************************************************************
함수명		: fn_GetByteLength()
작성목적	: 문자열을 Byte길이로 반환 합니다.
			  한글을 2Byte 길이로 계산 합니다.
파라미터    : 
Sample      : var len = fn_GetByteLength("13-박지성");
			  결과값 : 9
*************************************************************************/	
function fn_GetByteLength(str)
{
	var len = str.length;
	var count = 0;

	for (k=0 ; k<len ; k++)
	{
		temp = str.charAt(k);

		if (escape(temp).length > 4)
		{
			count += 2;
		}
		else if (temp == '\r' && str.charAt(k+1) == '\n')
		{ 
			// \r\n일 경우
			count += 2;
		}
		else if (temp != '\n')
		{
			count++;
		}
	}
	return count;	
}

/************************************************************************
함수명		: fn_Print()
작성목적	: 페이지를 인쇄한다.
              
파라미터    : openURL      : 인쇄할 페이지
			  contentsDivs : 해당 페이지의 인쇄할 부분의 ID값(',' 구분된 스트링) 
Sample      :
              예1) 구매기획 결재함 상세보기 페이지 인쇄
			  var contentsDivs = "tdMainFrame";
			
			  fn_Print(contentsDivs);
*************************************************************************/
function fn_Print(contentsDivs)
{
	try
	{
		var p = window.createPopup()
		var pbody = p.document.body;
		
		p.document.createStyleSheet();
		p.document.styleSheets[0].cssText = document.styleSheets[0].cssText;
		
		var frame = p.document.createElement("iframe");
        frame.setAttribute("id", "pframe");
        frame.setAttribute("name", "pframe");
        frame.setAttribute("frameborder", "0");
        frame.setAttribute("marginheight", "0");
        frame.setAttribute("marginwidth", "0");
        p.document.appendChild(frame);
        
        frame.document.body.innerHTML = "<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td height='30'>대외비</td></tr></table>";
		
		var arrDivs = contentsDivs.split(',');
		for (var i=0; i<arrDivs.length; i++)
		{
			frame.document.body.innerHTML += document.all[arrDivs[i]].innerHTML + "<br>";
		}
		
		frame.document.frames.print();
	}
	catch(exception)
	{
		fn_OpenErrorMessage(exception.description);
	}
}

function fn_PrintInnerHtml(innerHtml)
{
	try
	{
		var p = window.createPopup()
		var pbody = p.document.body;
		
		p.document.createStyleSheet();
		p.document.styleSheets[0].cssText = document.styleSheets[0].cssText;
		
		var frame = p.document.createElement("iframe");
        frame.setAttribute("id", "pframe");
        frame.setAttribute("name", "pframe");
        frame.setAttribute("frameborder", "0");
        frame.setAttribute("marginheight", "0");
        frame.setAttribute("marginwidth", "0");
        p.document.appendChild(frame);
        
        frame.document.body.innerHTML = "<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td height='30'>대외비</td></tr></table>";
		frame.document.body.innerHTML += innerHtml + "<br>";
		
		frame.document.frames.print();
	}
	catch(exception)
	{
		fn_OpenErrorMessage(exception.description);
	}
}

/************************************************************************
함수명		:	GetObj()
작성목적	:	Form안에서 객체를 찾아 가져옵니다.
				document.all은 MSDOM에서만 사용하기 때문에 다른 웹브라우저에서는 정상적으로 작동하지 않을 수 있다.
				따라서 두군데 다 사용할 수 있도록 function을 만들었다.
				W3C DOM은 getElementById를 사용하도록 권고한다.
				주의사항) id를 주지않고 name만 줄경우 id는 name으로 자동 입력된다.
				즉 name이 같은 컨트롤이 여러개 있고, id를 할당하지 않은경우 첫번째 name을 가진 control만 return한다.
작성목적	: Form안에서 객체를 찾아 가져옵니다.
파라미터    : 
            objectId    : 화면에 사용된 컨트롤의 아이디입니다.
Sample      : 
            var name_vlaue = GetObj( "hdnName" ).value;
*************************************************************************/
function GetObj(objectId) 
{
	// 일반적인 페이지에서 컨텐츠플레이스홀더 프리픽스명 젼역변수가 없는것을 방지하기위한 변수선언.
	var vL_ContentPrefixID = "";
	var vL_MasterPrefixID = "";
	try
	{
		vL_ContentPrefixID = vG_ContentPrefixID;
	}
	catch(e){}
	
	try
	{
		vL_MasterPrefixID = vG_MasterPrefixID;
	}
	catch(e){}
	
	// checkW3C DOM, then MSIE 4, then NN 4.
	
	// 1. 일반적인 경우 또는 2. 유저컨트롤로 개발된 컨트롤의 ID가 변경안된 경우
	if(document.getElementById && document.getElementById(objectId)) 
	{
		return document.getElementById(objectId);
	}
	else if (document.all && document.all(objectId)) 
	{
		return document.all(objectId);
	}
	else if (document.layers && document.layers[objectId]) 
	{
		return document.layers[objectId];
	}

	// ContentPlaceHolder 안에 속한경우( 위 2번 경우는 예외 ) 
	else if(document.getElementById && document.getElementById(vL_ContentPrefixID  + objectId)) 
	{
		return document.getElementById(vL_ContentPrefixID  + objectId);
	}
	else if (document.all && document.all(vL_ContentPrefixID  + objectId)) 
	{
		return document.all(vL_ContentPrefixID  + objectId);
	}
	else if (document.layers && document.layers[vL_ContentPrefixID  + objectId]) 
	{
		return document.layers[vL_ContentPrefixID  + objectId];
	}	
	//Master에 있는 것
	else if(document.getElementById && document.getElementById(vL_MasterPrefixID  + objectId)) 
	{
		return document.getElementById(vL_MasterPrefixID  + objectId);
	}
	else if (document.all && document.all(vL_MasterPrefixID  + objectId)) 
	{
		return document.all(vL_MasterPrefixID  + objectId);
	}
	else if (document.layers && document.layers[vL_MasterPrefixID  + objectId]) 
	{
		return document.layers[vL_MasterPrefixID  + objectId];
	}	
	else 
	{
		// 두 경우에 다 속하지 못한다면 Error
		return false;
	}
}


/************************************************************************
함수명		: GetParent_by_Tag()
작성목적	: event.srcElement 또는 obj 를 기준으로 특정 태그명을 갖는 부모 컨트롤을 찾아 가져옵니다.
파라미터    : 
            tag_name    : 찾고자 하는 부모컨트롤의 태그명입니다.
            obj			: 현재 컨트롤 또는 찾기를 시작하는 컨트롤 객체입니다. 입력하지 않으면 기본으로 이벤트를 발생시킨 컨트롤 부터 시작합니다.
Sample      : 
            var this_row = GetParent_by_Tag( "TR" );
            thi_row.cells[0].innerText = "";
*************************************************************************/
function GetParent_by_Tag( tag_name, obj ) {
	var src;
	if( obj != null ) src = obj;
	else src = event.srcElement;
	var tag_name = tag_name.toUpperCase();
	if( src.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement;
	}
	else if( src.parentElement.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement.parentElement;
	}
	else if( src.parentElement.parentElement.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement.parentElement.parentElement;
	}
	else if( src.parentElement.parentElement.parentElement.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement.parentElement.parentElement.parentElement;
	}
	else if( src.parentElement.parentElement.parentElement.parentElement.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement.parentElement.parentElement.parentElement.parentElement;
	}
	else if( src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement;
	}
	else if( src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement;
	}
	else if( src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement;
	}
	else if( src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement;
	}
	else if( src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement;
	}
	else if( src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement;
	}
	else if( src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement;
	}
	else if( src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement;
	}
	else if( src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.tagName.toUpperCase() == tag_name ) {
		return src.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement;
	}
	return null;
}


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];}
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}


//=======================================================
//	Removes the warning message.
//=======================================================
function RemoveWarningMessage()
{
    if (document.all("cmmWarningMessage") != undefined)
        document.body.removeChild(document.getElementById("cmmWarningMessage"));
    //document.body.bgColor = "#ffffff";
}

//=======================================================
//	Removes the information message.
//=======================================================
function RemoveInformationMessage()
{
    if (document.all("cmmInformationMessage") != undefined)
        document.body.removeChild(document.getElementById("cmmInformationMessage"));
    //document.body.bgColor = "#ffffff";
        
}

//=======================================================
//	Removes the confirm message.
//=======================================================
function RemoveConfirmMessage()
{
    if (document.all("cmmConfirmMessage") != undefined)
        document.body.removeChild(document.getElementById("cmmConfirmMessage"));
    //document.body.bgColor = "#ffffff";
}        

//=======================================================
//	Warning message
//=======================================================
function WarningMessage(message, callbackScript, language)
{
    var scrollHeight;
    var languageType;
    
    message = message.ReplaceAll("\n", "<br/>");
    if (language == undefined)
	    languageType = "KOR";
	else
	    languageType = language;
	    
    if (document.all("cmmWarningMessage") == undefined){
        
        if (document.body.scrollHeight > document.body.offsetHeight)
            scrollHeight = document.body.scrollHeight;
        else
            scrollHeight = document.body.offsetHeight;
	        
	    if (scrollHeight < 400 )
	        scrollHeight = 400;
	        
	    var nWidth = 412;
	    var nHeight = 310;
	    var siteurl = document.location.protocol + "//"+document.location.host;
        var cmmWarningHtml;
        var Warning_img01;
        var Confirm_btn;
        var languageType;
        
        if (languageType == "KOR")
        {
            Warning_img01 = "/images/A_Warning_img01.gif";
            Confirm_btn = "/images/A_Confirm_btn.gif";
        }
        else if (languageType == "ENG")
        {
            Warning_img01 = "/images/eng/Alert/A_Warning_img01.gif";
            Confirm_btn = "/images/eng/Alert/A_Confirm_btn.gif";
        }
        
        cmmWarningHtml="<div style=\"background-color:;width:100%;height:"+scrollHeight+";filter:alpha(opacity=100);z-index: 97;left: 0%; position: absolute; top: 0%\">\r\n";        
        cmmWarningHtml+="<table border=\"0\" width=\"100%\" style=\"height:100%;\"><tr><td align=\"center\" valign=\"middle\"> ";
        cmmWarningHtml+="<div style=\"width:"+nWidth+"px;height:"+nHeight+"px;filter:alpha(opacity=100);z-index: 98;position:relative;top:0%;left:0%;\">\r\n";
        cmmWarningHtml+="<iframe scrolling=\"no\" frameborder=\"0\" src=\"/Blank.htm\" style=\"position:relative;top:0%;left:0%;width:"+nWidth+"px;height:"+nHeight+"px;\"></iframe>";
        cmmWarningHtml+="<div style=\"width:100%;height:100%;filter:alpha(opacity=100);z-index: 99;position:absolute;top:0%;left:0%;\">\r\n";
        cmmWarningHtml+= "<table width=\"412\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n";
        cmmWarningHtml+="	<tr>\r\n";
        cmmWarningHtml+="		<td><img src=\"" + Warning_img01 + "\" width=\"412\" height=\"116\" alt=\"\" /></td>\r\n";
        cmmWarningHtml+="	</tr>\r\n";
        cmmWarningHtml+="	<tr>\r\n";
        cmmWarningHtml+="		<td align=\"center\" background=\"" + siteurl + "/images/A_Information_img02.gif\" style=\"height:48px;\">\r\n";
        cmmWarningHtml+="			<table width=\"351\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n";
        cmmWarningHtml+="				<tr>\r\n";
        cmmWarningHtml+="					<td style=\"height:2px;\"><img src=\"/images/A_Confirm_dot01.gif\" width=\"351\" height=\"2\" alt=\"\" /></td>\r\n";
        cmmWarningHtml+="				</tr>\r\n";
        cmmWarningHtml+="				<tr>\r\n";
        cmmWarningHtml+="					<td background=\"" + siteurl + "/images/A_Confirm_dot02.gif\" style=\"height:69px;\" align=\"center\"> \r\n";
        cmmWarningHtml+="						<table width=\"100%\" style=\"height:100%;\" border=\"0\" cellpadding=\"0\" cellspacing=\"10\">\r\n";
        cmmWarningHtml+="          		            <tr>\r\n";
        cmmWarningHtml+="            		            <td valign=\"middle\"><div style=\"overflow:auto;width:330px;height:80px;padding-left:6px;text-align: left;\" class=\"Rspink\">"+message+"</div></td>\r\n";
        cmmWarningHtml+="          		            </tr>\r\n";
        cmmWarningHtml+="        		        </table>\r\n";
        cmmWarningHtml+="		    	    </td>\r\n";
        cmmWarningHtml+="				</tr>\r\n";
        cmmWarningHtml+="				<tr>\r\n";
        cmmWarningHtml+="					<td style=\"height:2px;\"><img src=\"/images/A_Confirm_dot01.gif\" width=\"351\" height=\"2\" alt=\"\" /></td>\r\n";
        cmmWarningHtml+="				</tr>\r\n";
        cmmWarningHtml+="			</table>\r\n";
        cmmWarningHtml+="		</td>\r\n";
        cmmWarningHtml+="	</tr>\r\n";
        cmmWarningHtml+="  <tr>\r\n";
        cmmWarningHtml+="    <td background=\"" + siteurl + "/images/A_Information_img02.gif\" style=\"height:46px;\" align=\"right\" valign=\"bottom\">\r\n";
        cmmWarningHtml+="  		<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n";
        cmmWarningHtml+="      	<tr>\r\n";
        cmmWarningHtml+="        	<td align=\"right\">\r\n";
        cmmWarningHtml+="    		    <a href=\"javascript:RemoveWarningMessage();"+callbackScript+"\" ><img src=\"" + Confirm_btn + "\" style=\"border:none;\" /></a></td> \r\n";
        cmmWarningHtml+="        	<td style=\"width:33px;height: 23px\">&nbsp;</td>\r\n";
        cmmWarningHtml+="      	</tr>\r\n";
        cmmWarningHtml+="     	</table>\r\n";
        cmmWarningHtml+="  	</td>\r\n";
        cmmWarningHtml+="  </tr>\r\n";
        cmmWarningHtml+="  <tr>\r\n";
        cmmWarningHtml+="    <td style=\"height:23px;\"><img src=\"/images/A_Information_img03.gif\" width=\"412\" height=\"23\" alt=\"\" /></td>\r\n";
        cmmWarningHtml+="  </tr>\r\n";
        cmmWarningHtml+="</table>\r\n";
        cmmWarningHtml+="</div></div>\r\n";
        cmmWarningHtml+="</td></tr></table>\r\n";
        cmmWarningHtml+="</div>";
        
        var div = document.createElement('div');
        div.id = "cmmWarningMessage";
        div.innerHTML = cmmWarningHtml;
        document.body.appendChild(div);
        window.scrollTo((document.body.clientWidth/2),(document.body.clientHeight/4));
        window.focus();
        window.cmmWarningMessage.focus();
    }           
}

//=======================================================
//	Information message
//=======================================================
function InformationMessage(message, callbackScript, language)
{
    var scrollHeight;
    var languageType;
    message = message.ReplaceAll("\n", "<br/>");
    
    if (language == undefined)
	    languageType = "KOR";
	else
	    languageType = language;
	
    if (document.all("cmmInformationMessage") == undefined){
        
        if (document.body.scrollHeight > document.body.offsetHeight)
            scrollHeight = document.body.scrollHeight;
        else
            scrollHeight = document.body.offsetHeight;
	        
	    if (scrollHeight < 400 )
	        scrollHeight = 400 ;
	        
	    var nWidth = 412;
	    var nHeight = 310;
	    var siteurl = document.location.protocol + "//"+document.location.host;
	    var cmmInformationHtml;
	    var Information_img01;
	    var Confirm_btn;
	    if (languageType == "KOR")
	    {
	        Information_img01 = "/images/A_Information_img01.gif";
	        Confirm_btn = "/images/A_Confirm_btn.gif";
	    }
	    else if (languageType == "ENG")
	    {
	        Information_img01 = "/images/eng/Alert/A_Information_img01.gif";
	        Confirm_btn = "/images/eng/Alert/A_Confirm_btn.gif";
	    }
	    
        cmmInformationHtml="<div style=\"background-color:;width:100%;height:"+scrollHeight+";filter:alpha(opacity=100);z-index: 97;left: 0%; position: absolute; top: 0%\">\r\n";        
        cmmInformationHtml+="<table border=\"0\" width=\"100%\" style=\"height:100%;\"><tr><td align=\"center\" valign=\"middle\"> ";
        cmmInformationHtml+="<div style=\"width:"+nWidth+"px;height:"+nHeight+"px;filter:alpha(opacity=100);z-index: 98;position:relative;top:0%;left:0%;\">\r\n";
        cmmInformationHtml+="<iframe scrolling=\"no\" frameborder=\"0\" src=\"/Blank.htm\" style=\"position:relative;top:0%;left:0%;width:"+nWidth+"px;height:"+nHeight+"px;\" src=\"#\"></iframe>";
        cmmInformationHtml+="<div style=\"width:100%;height:100%;filter:alpha(opacity=100);z-index: 99;position:absolute;top:0%;left:0%;\">\r\n";
        cmmInformationHtml+="<table width=\"412\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n";
        cmmInformationHtml+="	<tr>\r\n";
        cmmInformationHtml+="	    <td><img src=\"" + Information_img01 + "\" width=\"412\" height=\"116\" alt=\"\" /></td>\r\n";
        cmmInformationHtml+="	</tr>\r\n";
        cmmInformationHtml+="	<tr>\r\n";
        cmmInformationHtml+="	    <td align=\"center\" background=\"" + siteurl + "/images/A_Information_img02.gif\" style=\"height:48px;\">\r\n";
        cmmInformationHtml+="		    <table width=\"351\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n";
        cmmInformationHtml+="			    <tr>\r\n";
        cmmInformationHtml+="				    <td style=\"height:2px;\"><img src=\"/images/A_Confirm_dot01.gif\" width=\"351\" height=\"2\" alt=\"\" /></td>\r\n";
        cmmInformationHtml+="				</tr>\r\n";
        cmmInformationHtml+="				<tr>\r\n";
        cmmInformationHtml+="				    <td align=\"center\" background=\"" + siteurl + "/images/A_Confirm_dot02.gif\" style=\"height:69px;\">\r\n";
        cmmInformationHtml+="					  	<table width=\"100%\" style=\"height:100%;\" border=\"0\" cellpadding=\"0\" cellspacing=\"10\">\r\n";
        cmmInformationHtml+="		                    <tr>\r\n";
        cmmInformationHtml+="		                        <td valign=\"middle\"><div style=\"overflow:auto;width:330px;height:80px;padding-left:6px;text-align: left;\">"+message+"</div></td>\r\n";
        cmmInformationHtml+="		                    </tr>\r\n";
        cmmInformationHtml+="					  	</table>\r\n";
        cmmInformationHtml+="					</td>\r\n";
        cmmInformationHtml+="				</tr>\r\n";
        cmmInformationHtml+="				<tr>\r\n";
        cmmInformationHtml+="				    <td style=\"height:2px;\"><img src=\"/images/A_Confirm_dot01.gif\" width=\"351\" height=\"2\" alt=\"\" /></td>\r\n";
        cmmInformationHtml+="				</tr>\r\n";
        cmmInformationHtml+="			</table>\r\n";
        cmmInformationHtml+="		</td>\r\n";
        cmmInformationHtml+="	</tr>\r\n";
        cmmInformationHtml+="	<tr>\r\n";
        cmmInformationHtml+="	  <td style=\"height:46px;\" align=\"right\" valign=\"bottom\" background=\"" + siteurl + "/images/A_Information_img02.gif\">\r\n";
        cmmInformationHtml+="	      <table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n";
        cmmInformationHtml+="	          <tr>\r\n";
        cmmInformationHtml+="	              <td align=\"right\">\r\n";
        cmmInformationHtml+="	                <a href=\"javascript:RemoveInformationMessage();"+callbackScript+"\" ><img src=\"" + Confirm_btn + "\" style=\"border:none;\" /></a></td>\r\n";
        cmmInformationHtml+="	              <td style=\"width:33px;height: 23px\">&nbsp;</td>\r\n";
        cmmInformationHtml+="	          </tr>\r\n";
        cmmInformationHtml+="	      </table>\r\n";
        cmmInformationHtml+="	  </td>\r\n";
        cmmInformationHtml+="	</tr>\r\n";
        cmmInformationHtml+="	<tr>\r\n";
        cmmInformationHtml+="		<td style=\"height:23px;\"><img src=\"/images/A_Information_img03.gif\" width=\"412\" height=\"23\" alt=\"\" /></td>\r\n";
        cmmInformationHtml+="	</tr>\r\n";
        cmmInformationHtml+="</table>\r\n";
        cmmInformationHtml+="</div></div>\r\n";
        cmmInformationHtml+="</td></tr></table>\r\n";
        cmmInformationHtml+="</div>";
        
        var div = document.createElement('div');
        div.id = "cmmInformationMessage";
        div.innerHTML = cmmInformationHtml;
        document.body.appendChild(div);
        window.scrollTo((document.body.clientWidth/2),(document.body.clientHeight/4));
        window.focus();
        window.cmmInformationMessage.focus();
    }
}

//=======================================================
//	Confirm message
//=======================================================
function ConfirmMessage(message, callbackScript, language)
{
    var scrollHeight;
    var languageType;
    
    message = message.ReplaceAll("\n", "<br/>");
    
    if (language == undefined)
	    languageType = "KOR";
	else
	    languageType = language;
	    
    if (document.all("cmmConfirmMessage") == undefined){
        
        if (document.body.scrollHeight > document.body.offsetHeight)
            scrollHeight = document.body.scrollHeight;
        else
            scrollHeight = document.body.offsetHeight;
	    
	    if (scrollHeight < 400 )
	        scrollHeight = 400 ;
	        
	    var nWidth = 376;
	    var nHeight = 245;
	    var siteurl = document.location.protocol + "//"+document.location.host;
	    var cmmConfirmHtml;
	    var Confirm_btn;
        var Cancel_btn;
        if (languageType == "KOR")
	    {
	        Confirm_btn = "/images/A_Confirm_btn.gif";
	        Cancel_btn = "/images/A_Cancel_btn.gif";
	    }
	    else if (languageType == "ENG")
	    {
	        Confirm_btn = "/images/eng/Alert/A_Confirm_btn.gif";
	        Cancel_btn = "/images/eng/Alert/A_Cancel_btn.gif";
	    }
        
        cmmConfirmHtml="<div style=\"background-color:;width:100%;height:"+scrollHeight+";filter:alpha(opacity=100);z-index: 97;left: 0%; position: absolute; top: 0%\">\r\n";        
        cmmConfirmHtml+="<table border=\"0\" width=\"100%\" style=\"height:100%;\"><tr><td align=\"center\" valign=\"middle\"> ";
        cmmConfirmHtml+="<div style=\"width:"+nWidth+"px;height:"+nHeight+"px;filter:alpha(opacity=100);z-index: 98;position:relative;top:0%;left:0%;\">\r\n";
        cmmConfirmHtml+="<iframe scrolling=\"no\" frameborder=\"0\" src=\"/Blank.htm\" style=\"position:relative;top:0%;left:0%;width:"+nWidth+"px;height:"+nHeight+"px;\"></iframe>";
        cmmConfirmHtml+="<div style=\"width:100%;height:100%;filter:alpha(opacity=100);z-index: 99;position:absolute;top:0%;left:0%;\">\r\n";
        cmmConfirmHtml+="<table width=\"376\" style=\"height:244px;\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n";
        cmmConfirmHtml+="  <tr>\r\n";
        cmmConfirmHtml+="    <td align=\"center\" background=\"" + siteurl + "/images/A_Confirm.gif\" >\r\n";
        cmmConfirmHtml+="        <table width=\"310\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n";
        cmmConfirmHtml+="            <tr>\r\n";
        cmmConfirmHtml+="                <td style=\"height:80px;\">&nbsp;</td>\r\n";
        cmmConfirmHtml+="            </tr>\r\n";
        cmmConfirmHtml+="            <tr>\r\n";
        cmmConfirmHtml+="                <td background=\"" + siteurl + "/images/A_Confirm_dotbg.gif\" style=\"width:310px;height:72px;padding-left:6px;\" class=\"Agreen\">\r\n";
        cmmConfirmHtml+="		            "+message+"</td>\r\n";
        cmmConfirmHtml+="            </tr>\r\n";
        cmmConfirmHtml+="          <tr>\r\n";
        cmmConfirmHtml+="            <td style=\"height:46px;\" align=\"right\" valign=\"bottom\">\r\n";
        cmmConfirmHtml+="                <table width=\"123\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n";
        cmmConfirmHtml+="                    <tr>\r\n";
        cmmConfirmHtml+="                        <td style=\"width:66px;\">\r\n";
        cmmConfirmHtml+="		                 <a href=\"javascript:RemoveConfirmMessage();"+callbackScript+"\" ><img src=\""+ Confirm_btn + "\" style=\"border:none;\" /></a></td>\r\n";
        cmmConfirmHtml+="                        <td style=\"width:57px;\">\r\n";
        cmmConfirmHtml+="                        <a href=\"javascript:RemoveConfirmMessage();\" ><img src=\"" + Cancel_btn + "\" style=\"border:none;\"/></a></td>\r\n";
        cmmConfirmHtml+="                    </tr>\r\n";
        cmmConfirmHtml+="                </table>\r\n";
        cmmConfirmHtml+="              </td>\r\n";
        cmmConfirmHtml+="          </tr>\r\n";
        cmmConfirmHtml+="        </table>\r\n";
        cmmConfirmHtml+="    </td>\r\n";
        cmmConfirmHtml+="  </tr>\r\n";
        cmmConfirmHtml+="</table>\r\n";
        cmmConfirmHtml+="</div></div>\r\n";
        cmmConfirmHtml+="</td></tr></table>\r\n";
        cmmConfirmHtml+="</div>";
        
        var div = document.createElement('div');
        div.id = "cmmConfirmMessage";
        div.innerHTML = cmmConfirmHtml;
        document.body.appendChild(div);
        window.scrollTo((document.body.clientWidth/2),(document.body.clientHeight/4));
        window.focus();
        window.cmmConfirmMessage.focus();             
    }
}

//=======================================================                                                                                                                                                                             
//	ProgressBar                                                                                                                                                                                                             
//=======================================================                                                                                                                                                                             
function ProgressBar(hint, language)                                                                                                                                                                                      
{
    var nWidth = 318;                                                                                                                                                                                                               
	var nHeight = 216;
	var flashName = "/images/Purchasing.swf";
	var scrollHeight;
	var languageType;
	
	if (language == undefined)
	    languageType = "KOR";
	else
	    languageType = language;
	        
    try
    {
        switch(hint){
            case "purchase":
                nWidh = 318;
                nHeight = 216;
                if (languageType == "KOR")
                    flashName = "/images/Purchasing.swf";  
                else if (languageType == "ENG")
                    flashName = "/images/eng/Alert/purchasing.swf";       
                break;
            case "progress":
                nWidh = 318;
                nHeight = 216;
                if (languageType == "KOR")
                    flashName = "/images/loading.swf";              
                else if (languageType == "ENG")
                    flashName = "/images/eng/Alert/loading.swf";
                  
                break;
        }
                                                                                                                                                                                                                       
        if (document.all("ProgressBar") == undefined){
                                                                                                                                    
            if (document.body.scrollHeight > document.body.offsetHeight)
                scrollHeight = document.body.scrollHeight;
            else
                scrollHeight = document.body.offsetHeight;                                                                                
    	                                                                                                                                                                                                                                    
	        if (scrollHeight < 400 )                                                                                                                                                                                                        
	            scrollHeight = 400;	                                                                                                                 
    	                                                                                                                                                                                                                                    
	        var protocol = document.location.protocol;                                                                                
    	                                                                                                                                                                                                                                    
            var progressHtml;                                                                                                                                                                                                                   
		    progressHtml="<div style=\"background-color:;width:100%;height:"+scrollHeight+";filter:alpha(opacity=100);z-index: 97;left: 0%; position: absolute; top: 0%\">\r\n";
		    progressHtml+="<table border=\"0\" width=\"100%\" style=\"height:100%;\"><tr><td align=\"center\" valign=\"middle\" > ";
		    progressHtml+="<div style=\"width:"+nWidth+"px;height:"+nHeight+"px;filter:alpha(opacity=100);z-index: 98;position:relative;top:0%;left:0%;\">\r\n";
		    progressHtml+="<iframe scrolling=\"no\" frameborder=\"0\" src=\"/Blank.htm\" style=\"position:relative;top:0%;left:0%;width:"+nWidth+"px;height:"+nHeight+"px;\"></iframe>";
		    progressHtml+="<div style=\"width:100%;height:100%;filter:alpha(opacity=100);z-index: 99;position:absolute;top:0%;left:0%;\">\r\n";
		    progressHtml+="<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\""+protocol+"//download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0\" width=\""+nWidth+"\" height=\""+nHeight+"\">";
		    progressHtml+="<param name=\"movie\" value=\""+flashName+"\">";
		    progressHtml+="<param name=\"quality\" value=\"high\" />";
		    progressHtml+="<param name=\"wmode\" value=\"transparent\" />";
		    progressHtml+="<embed src=\""+flashName+"\" quality=\"high\" pluginspage=\""+protocol+"www.macromedia.com/go/getflashplayer\" type=\"application/x-shockwave-flash\" width=\""+nWidth+"\" height=\""+nHeight+"\"></embed>";
		    progressHtml+="</object>";
		    progressHtml+="</div></div>\r\n";
		    progressHtml+="</td></tr></table>\r\n";
		    progressHtml+="</div>";                                                                                                                                            
                                                                                                                                                                                                                                          
            var div = document.createElement('div');                                                                                                                                                                                      
            div.id = "ProgressBar";                                                                                                                                                                                                 
            div.innerHTML = progressHtml;                                                                                                                                                                                               
            document.body.appendChild(div); 
            window.scrollTo((document.body.clientWidth/2),(document.body.clientHeight/4));
            window.focus();
            window.ProgressBar.focus();                                                                                                                                      
        } 
    }
    catch(e){}                                                                                                                                                                                                                                
}

//=======================================================
//	Removes the ProgressBar
//=======================================================
function RemoveProgressBar()
{
    if (document.all("ProgressBar") != undefined)
        document.body.removeChild(document.getElementById("ProgressBar"));
} 

function FlashMainbody(Ftrans,wid,hei) {
	mainbody = "<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0' width='"+ wid +"' height='"+ hei +"'>";
	mainbody += "<param name='movie' value='"+ Ftrans +"'>";
	mainbody += "<param name='quality' value='high'>";
	mainbody += "<param name='menu' value='false'>";
	mainbody += "<param name=wmode value=transparent>";
	mainbody += "<embed src='"+ Ftrans +"' wmode='transparent' quality='high' pluginspage='https://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='"+ wid +"' height='"+ hei +"'></embed>"
	mainbody += "</object>";

	//document.body.innerHTML = mainbody;
	document.write(mainbody);
	return;
}

function FlashMainbody02(Ftrans,wid,hei) {
	mainbody = "<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0' width='"+ wid +"' height='"+ hei +"'>";
	mainbody += "<param name='movie' value='"+ Ftrans +"'>";
	mainbody += "<param name='quality' value='high'>";
	mainbody += "<param name='menu' value='false'>";
	mainbody += "<embed src='"+ Ftrans +"' quality='high' pluginspage='https://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='"+ wid +"' height='"+ hei +"'></embed>"
	mainbody += "</object>";

	//document.body.innerHTML = mainbody;
	document.write(mainbody);
	return;
}

//	컨트롤과 그 하위 객체를 모두 비활성화 한다.
function fn_Enable_Change( control, isEnable ) {
	if( control.disabled != null ) {
		control.disabled = !isEnable;
	}
	if( control.all ) {
		for( var i = 0; i < control.all.length; i++ ) {
			if( control.all[i].disabled != null ) {
				control.all[i].disabled = !isEnable;
			}
		}
	}
}

//=======================================================
//	출발공항을 선택하면 도착 공항에서 같은 공항을 선택할 수 없도록 option에서 제거한다.
//	공항 선택 드롭다운에서만 사용한다.
//	출발 공항의 onchange이벤트에 이 함수를 걸고 도착 공항 object를 파라미터로 넘기면 된다.
//=======================================================
function fn_Airport_Bind( arrival_id ) {
	var departure = event.srcElement;
	var arrival = GetObj( arrival_id );
	for( var i = arrival.options.length - 1; i >= 0; i-- ) {
		arrival.options.remove(i);
	}
	for( var i = 0; i < departure.options.length; i++ ) {
		if( departure.options[i].selected != true ) { 
			arrival.options.add( new Option(departure.options[i].text, departure.options[i].value), i );
		}
	}
	
	//ICN-CJU 구간 임시 적용 20100323
	if(departure.options[departure.selectedIndex].value == "MWX|MWX" || departure.options[departure.selectedIndex].value == "GMP|SEL") 
	{
        for(var j=0; j<arrival.options.length; j++)
        {
            if (arrival.options[j].value == "CJU|CJU")
            {
                arrival.options[j].selected = true;
                break;
            }
        }
	}
}

//=======================================================
//	가는 여정 도착공항을 선택하면 오는 여정 출발 공항이 선택되어진다.
//	공항 선택 드롭다운에서만 사용한다.
//	가는 여정 도착 공항의 onchange이벤트에 이 함수를 걸고 오는 여정 출발 공항 object을 파라미터로 넘기면 된다.
//  Write by : mskim
//  Date : 2009.05.27 
//=======================================================
function fn_Airport_ReBind( departure_id) {
    var arrival= event.srcElement;
    var departure = GetObj( departure_id );
    var val;
    
    for (var i= 0; i < arrival.options.length; i++) {
        if (arrival.options[i].selected == true) {
            val = arrival.options[i].value;
            break;
            }
    }
    
    for (var i= 0; i < departure.options.length; i++) {
        if (departure.options[i].value == val) {
            departure.options[i].selected = true;
            break;
            }
    }
}

//문자에 있는 공백을 모두 제거하고 반환한다.
function fn_SpaceAllRemove(str)
{
    var index, len;
    while(true)
    {
        index = str.indexOf(" ");
        if (index == -1) break;
        len = str.length;
        str = str.substring(0, index) + str.substring((index+1),len);
    }
    return str;
}

//핸드폰 번호 벨리데이션
function checkMobile(value)
{
	value = value.replace(/-/gi, "");
	if(!(/^01[0-9]\d{3,4}\d{4}$/.test(value)))
		return false;
	else
		return true;
}



/************************************************************************
작성목적	: POST방식으로 화면이동할 때 값을 전달하기 위한 함수들
예
	var url = "RSV_Reservation.aspx";
	fn_AddParam("Adult", GetObj("ddlAdult").value);
	fn_AddParam("Child", GetObj("ddlChild").value);
	fn_ReDirect(url);
*************************************************************************/	
// 같은 윈도우에서 화면이동시 필요한 Form Tag를 구성한다.
// 이 함수는 화면에서 직접 사용하지 않는다
function fn_StartParam()
{
	var param = document.createElement("<form id='formParam' method='post'></form>");
	document.body.insertBefore(param);
}

// 같은 윈도우에서 화면이동시 필요한 Hidden Tag를 구성한다.
function fn_AddParam(key, value)
{
	if(!GetObj("formParam")) fn_StartParam();
	
	var frm  = GetObj("formParam");
	var param = document.createElement("<input id='" + key + "' name='" + key + "' type='hidden' value='" + value + "' />");
	frm.insertBefore(param);
}

function fn_ClearParam()
{
	if(GetObj("formParam") != false)
	{
		GetObj("formParam").innerHTML = "";
	}
}


// 화면이동함수 (SSL 또는 Popup이 아닌 경우 이 함수로 화면이동한다.)
function fn_ReDirect(url,frm_target) 
{
    if(frm_target == null)
        frm_target = "_self";
	if(!GetObj("formParam")) fn_StartParam();
	
	var frm  = GetObj("formParam");
	
	if(frm_target != "")
	{
	    frm.target	= frm_target;
	}
	frm.action	= url;
	frm.submit();
}

//	Radiobottons의 선택값을 가져온다.
function fn_GetSelectedValue_Radio( radio_name ) {
	var radios = document.getElementsByName( radio_name );
	if( radios == null || radios.length <= 0 )
		radios = document.getElementsByName( vG_ContentPrefixName + radio_name );
	for(var i = 0; i < radios.length; i++ ) {
		if( !radios[i].disabled && radios[i].checked ) {
			return radios[i].value;
		}
	}
	return "";
}

function fn_GetTrunc(origin, digit)
{
    origin = String(origin);
	var number_type = 'integer';
	var cnt = origin.length;
	var dot_level = 0;
	var cipher = 0;
	var convert_number = 0;
	
	if (digit >= 0 )
	{
		for(var i = 0; i < cnt ; i++)
		{
			if (origin.substr(i,1) == '.')
			{
				number_type = 'float';
				dot_level = i;
			}
		}
        
		if (number_type == 'integer')
		{ //정수
		    
			cipher = cnt - digit;
			convert_number = origin.substr(0, cipher);
			for(i = 1 ; i <= digit ; i++)
			{
				convert_number = convert_number + '0';
			}
			convert_number = Number(convert_number);
		}
		else
		{ //실수
			cipher = dot_level - digit;
			convert_number = origin.substr(0, cipher);
			for(i = 1 ; i <= digit ; i++)
			{
				convert_number = convert_number + '0';
			}
		}
	}
	else
	{ //소수점부분 버림
		for(var i = 1; i < cnt ; i++)
		{
			if (origin.substr(i, 1) == '.')
			{
				dot_level = i;
			}
		}
		cipger = dot_level - digit + 1;
		convert_number = origin.substr(0, cipger);
	}
	return convert_number;
}
function GetYYYYMMDD()
{
    var now = new Date();
    var year = now.getYear();
    var month = now.getMonth() + 1;
    var date = now.getDate();
    if((month+"").length < 2)
    {
	    month = "0" + month;
    }

    if((date+"").length < 2)
    {
	    date = "0" + date;
    }
    var today = year + "" + month + "" + date;
    
    return today;    
}


if (document.location.protocol == "http:")
{
    document.writeln("<script type='text/javascript' charset='euc-kr' src='http://log.inside.daum.net/dwi_log/js/dwi.js'></script>");
}
else if (document.location.protocal == "https:")
{
    document.writeln("<script type='text/javascript' charset='euc-kr' src='https://ssl.log.inside.daum.net/dwi_log/js/dwi.js'></script>");
}
_dwiPID="d-TzV-292";
if(typeof(_dwiCatch) == "function") 
{ 
    _dwiCatch();
}