/*INISEAL:[AtVYjEwhxmrLTcxqBD3mONOYjs8%3D%0A]*/
/*****************************************************************************
 * ÆÄÀÏ¸í : pbk-package.js
 * ÀÛ¼ºÀÏ : 2007. 12. 28
 * ÀÛ¼ºÀÚ : ork
 * ¼³   ¸í : ÇÏ³ªÀºÇà °³ÀÎ¹ðÅ· °øÅë namespace  ¹× Àü¿ª»ó¼ö Á¤ÀÇ
 * ===========================================================================
 * º¯°æÀÌ·Â:
 * DATE				AUTHOR		DESCRIPTION
 * ---------------------------------------------------------------------------
 * 2008.06.18		±èÈ¿¿ø		selectbox ÁÂÇ¥ Ã¼Å© ºÎºÐ¿¡ ÄÉÀÌ½º Ãß°¡
 * 2008.12.05       ¿À·û°æ       20081205-1 inline ¼±¾ðµÇ¾î ÀÖ´Â ÀÌº¥Æ® ÄÝ¹éÀ¸·Î ´ëÃ¼
 * 2008.12.12       ¿À·û°æ       20081212-1 , tiles °á°úÀÎÁö ¾Æ´ÑÁö  
 * 2009.02.11       ¿À·û°æ       setErrParsing ¹× ±âÅ¸ ÇÔ¼ö ¼öÁ¤ (±âº»¸Þ¼¼Áö/»ó¼¼¸Þ¼¼Áö ºÐ¸®¸¦ À§ÇØ) 
 * º¯°æ ÀÌ·ÂÀº ÀÌ°÷¿¡ Ãß°¡ ÇÕ´Ï´Ù.
 *****************************************************************************/

/**
 * Component ¿ë namaspace
 */
var hana = {}; 
/**
 * ¾÷¹«¿ë namespace
 */
var pbk = {
    /* onbeforeunload flag */
    isClickATag : false,

    /* Àü¿ª »ó¼ö */
	IS_NAV  : (navigator.appName == "Netscape"),
	IS_IE   : (navigator.appName == "Microsoft Internet Explorer"),	
	IS_WIN  : (navigator.userAgent.indexOf("Win") != -1),
	IS_MAC  : (navigator.userAgent.indexOf("Mac") != -1),
	IS_UNIX : (navigator.userAgent.indexOf("X11") != -1),
	// Master Page¿¡ µ¿ÀÏÇÑ »ó¼ö¸íÀ¸·Î Á¤ÀÇµÇ¾úÀ½
	// APPLICATION_CONTEXT_ROOT : "/Hanabank-PBK", // Context Root Directory
	LOGOUT_TIME_DIV   : 'logoutTimeDiv', // 1ºÐÀÌ µÆÀ» °æ¿ì º¸¿©ÁÙ Alert·¹ÀÌ¾î
	SHOW_TIME_DIV     : 'showTime',      // È­¸é¿¡ º¸¿©ÁÙ ³²Àº ½Ã°£ ·¹ÀÌ¾î
	ALERT_MINUTES_DIV : 'alertMinutes',  // 1ºÐÀÌ µÆÀ» °æ¿ì Alert·¹ÀÌ¾î¿¡ º¸¿©ÁÙ ³²Àº ½Ã°£ ·¹ÀÌ¾î
	ICON_CLOCK_DIV 	  : 'icon_clock',    // ³²Àº½Ã°£ º¸¿©ÁÙ ·¹ÀÌ¾î¿µ¿ª
	PAGE_WRAP         : 'WRAP',          // ÆÛºí¸®¼Å¿¡ ÀÇÇØ ±¸ÇöµÈ ·¹ÀÌ¾î
	SCREEN_WRAP       : 'ScreenWRAP',    // Page Content ¿µ¿ªÀ» °¡Áö°í ÀÖ´Â ·¹ÀÌ¾î
	CONTENT_WRAP      : 'HANA_CONTENT',  // Contents ºÎºÐ ·¹ÀÌ¾î
	LEFT_MENU_WRAP    : 'HANA_LEFT',     // LEFT ¸Þ´º ºÎºÐ ·¹ÀÌ

	MAIN_FRAME_ID   : 'hanaMainframe', // index.htmlÀÇ frameset name -- ³»¿ë
	HIDDEN_FRAME_ID : 'hanaSecureframe',// index.htmlÀÇ frameset name -- ºó ÇÁ·¹ÀÓ
		
	changeImageObject : null,  // sortTable¿¡¼­ ¼ÒÆ®»óÅÂ ÀÌ¹ÌÁöÁ¤º¸¸¦ Á¤ÀÇ
	
	sLoadingMasks : new Array(), // custom Loading Mask Á¤ÀÇ 

	/**
	 * ÄíÅ°¿¡ ÀúÀåµÈ °ªÀ» ¹ÝÈ¯ÇÑ´Ù.
	 * @param name ÄíÅ° ÀÌ¸§
	 * @return ÄíÅ° ÀÌ¸§¿¡ ´ëÇÑ °ªÀ» ¹ÝÈ¯. ¾ø´Â °æ¿ì¿¡´Â ""¸¦ ¹ÝÈ¯.
	 */
	 getCookie :  function(name) {
	    var arg = name + "=";
	    var alen = arg.length;
	    var clen = document.cookie.length;
	    var i = 0;
	    while (i < clen) {
	        var j = i + alen;
	        if (document.cookie.substring(i, j) == arg) {
	            return getCookieVal(j);
	        }
	        i = document.cookie.indexOf(" ", i) + 1;
	        if (i == 0) break;
	    }
	    return "";
	},
	
	
	/**
	 * ÄíÅ°¸¦ ÀúÀåÇÑ´Ù.
	 * @param name ÄíÅ° ÀÌ¸§
	 * @param value ÄíÅ° °ª
	 * @param expires ÄíÅ°ÀÇ À¯È¿ ÀÏ
	 * @param path
	 * @param domain
	 * @param secure
	 */
	 setCookie : function(name, value, expires, path, domain, secure) {
	    if (!path) {
	        path = "/";
	    }
	    document.cookie = name + "=" + escape (value) +
	                    ((expires) ? "; expires=" + expires : "") +
	                    ((path) ? "; path=" + path : "") +
	                    ((domain) ? "; domain=" + domain : "") +
	                    ((secure) ? "; secure" : "");
	},
	
	
	/**
	 * ÄíÅ°¸¦ »èÁ¦ÇÑ´Ù.
	 * @param name »èÁ¦ÇÒ ÄíÅ° ÀÌ¸§
	 * @param path
	 * @param domain
	 */
	deleteCookie : function(name, path, domain) {
	    if (!path) 
	        path = "/";
	
	    if (getCookie(name)) {
	        document.cookie = name + "=" +
	            ((path) ? "; path=" + path : "") +
	            ((domain) ? "; domain=" + domain : "") + 
	            "; expires=Thu, 01-Jan-70 00:00:01 GMT";
	    }
	},
	
	
	/**
	 * ÄíÅ°¸¦ ÀúÀåÇÒ ¶§ ÇÊ¿äÇÑ ÀûÇÕÇÑ Çü½ÄÀÇ À¯È¿±â°£À» ¹ÝÈ¯ÇÑ´Ù.
	 * @param days ÄíÅ°°¡ À¯È¿ÇÒ ÀÏ (¿¹¸¦ µé¾î 3 ÀÏ µ¿¾È À¯È¿ÇØ¾ß ÇÏ¸é 3À» ÀÔ·Â)
	 * @param hours ÄíÅ°°¡ À¯È¿ÇÒ ½Ã°£ (¿¹¸¦ µé¾î 2 ½Ã°£ µ¿¾È À¯È¿ÇØ¾ß ÇÏ¸é 2¸¦ ÀÔ·Â)
	 * @param minutes ÄíÅ°°¡ À¯È¿ÇÒ ºÐ (¿¹¸¦ µé¾î 30 ºÐ µ¿¾È À¯È¿ÇØ¾ß ÇÏ¸é 30À» ÀÔ·Â)
	 */
	getExpDate : function(days, hours, minutes) {
	    var expDate = new Date( );
	    if (typeof days == "number" && typeof hours == "number" &&
	        typeof hours == "number") {
	        expDate.setDate(expDate.getDate( ) + parseInt(days));
	        expDate.setHours(expDate.getHours( ) + parseInt(hours));
	        expDate.setMinutes(expDate.getMinutes( ) +
	        parseInt(minutes));
	        return expDate.toGMTString( );
	    }
	},

	/**
	 * ÄíÅ° °ªÀ» ÀÐÀ» ¶§ »ç¿ëÇÏ´Â º¸Á¶ ÇÔ¼ö
	 * @param {Object} offset
	 */	
	getCookieVal :  function(offset) {
	    var endstr = document.cookie.indexOf (";", offset);
	    if (endstr == -1) {
	        endstr = document.cookie.length;
	    }
	    return unescape(document.cookie.substring(offset, endstr));
	},
	
	/**
	 * ÀÔ·Â¹ÞÀ» ¼ö ÀÖ´Â °ªÀ» ÇÊÅÍ¸µÇÑ´Ù.
	 * ex : <input type="text" ..... onkeypress="filterKey('[0-9]', event)"> ; ¼ýÀÚ¸¸ Å°ÀÔ·ÂÀÌ °¡´ÉÇÑ text filed
	 * ex : <input type="text" ..... onkeypress="filterKey('[0-9a-zA-Z]', event)"> ; ¿µ¹®,¼ýÀÚ¸¸ Å°ÀÔ·ÂÀÌ °¡´ÉÇÑ text filed
	 * @param filter : ÇÊÅÍ¸µÇÒ Á¤±ÔÇ¥Çö½Ä ex) '[0-9]':0~9ÀÇ °ª¸¸ Çã¿ë, '[a-zA-Z]':¾ËÆÄºª¸¸ Çã¿ë
	 * @return 
	 */
	filterInputData : function(filter, e) { 
	    if (filter) {
            var evt = e || window.event;
            var kCode = evt.which || evt.keyCode;

            /* backspace ,tab(9),enter(13),shift(16),end(35),home(36),¹æÇâÅ°(ÁÂ(37),»ó(38),¿ì(49),ÇÏ(40)),delete(46) µîµî..*/
            var controlKeys = new Array(Event.KEY_BACKSPACE,Event.KEY_TAB,Event.KEY_RETURN,Event.KEY_ESC,Event.KEY_ESC,
                    Event.KEY_LEFT,Event.KEY_UP,Event.KEY_RIGHT,Event.KEY_DOWN,Event.KEY_DELETE,Event.KEY_HOME,
                    Event.KEY_END,Event.KEY_PAGEUP,Event.KEY_PAGEDOWN);

            /* Á¶ÀÛÅ°ÀÌ¸é Á¾·á */
            for (var i=0; i<controlKeys.length; i++) {
                if (controlKeys[i] == kCode) return;
            }
            
            var sKey = String.fromCharCode(kCode);
	        var re = new RegExp(filter);
	        if (!re.test(sKey)) {
                Event.stop(evt);
	        }
			var re = new RegExp('[¤¡-¤¾|¤¿-¤Ó|°¡-Èþ]');
	        if (re.test(sKey)) {
                Event.stop(evt);
	        }			
	    }
	},
	
	
	/**
	 * ÁÖ¾îÁø ÅØ½ºÆ®(source)¿¡ Æ¯Á¤ ¹®ÀÚ(query)°¡ ³ªÅ¸³ª´Â È½¼ö¸¦ ¹ÝÈ¯ÇÑ´Ù.
	 * @param source ´ë»óÀÌ µÇ´Â ÅØ½ºÆ®
	 * @param query °Ë»öÇÏ·Á´Â ÅØ½ºÆ®
	 * @return ÁÖ¾îÁø ÅØ½ºÆ®¿¡ Æ¯Á¤ ¹®ÀÚ°¡ ³ªÅ¸³ª´Â È½¼ö
	 */
	countInstances : function(source, query) {
	    var re = new RegExp(query, "g");
	    var result = source.match(re);
	    return (result) ? result.length : 0;
	},
	
	/**
	 * <div> ÅÂ±×ÀÇ ³»¿ë Áß Æ¯Á¤ ÅØ½ºÆ®(before)¸¦ Æ¯Á¤ ÅØ½ºÆ®(after)·Î º¯°æÇÑ´Ù.
	 * @param id <div> ÅÂ±×ÀÇ id ¼Ó¼º °ª
	 * @param before º¯°æ Àü ÅØ½ºÆ®
	 * @param after º¯°æ ÈÄ ÅØ½ºÆ®
	 */
	replaceTextInDiv : function(id, before, after) {
	    var element = document.getElementById(id).firstChild;
	    var re = new RegExp(before, "g");
	    element.nodeValue = element.nodeValue.replace(re, after);
	    return false;
	},
	
	/**
	 * textNode ¸¦ Ãß°¡ÇÑ´Ù. 
	 * @param {String} id
	 * @param {String} text
	 */
	writeTextInElement : function(id, text) {
	    var element = document.getElementById(id);
	    if (element.firstChild) {
	        element.firstChild.nodeValue = text;
	    } else {
	        var child = document.createTextNode(text);
	        element.appendChild(child);
	    }
	    return false;
	},
	
	/**
	 * ÀÔ·Â º¯¼ö¿¡ 3 ÀÚ¸®¸¶´Ù ÄÞ¸¶(,)¸¦ ºÙ¿© ¹ÝÈ¯ÇÑ´Ù.
	 * @param field ÄÞ¸¶¸¦ ºÙÀÏ °ª
	 */
	formatCommas : function(numString) {
	    var re = /,|\s+/g;
	    numString = numString.replace(re, "");
	
	    re = /(-?\d+)(\d{3})/;
	    while (re.test(numString)) {
	        numString = numString.replace(re, "$1,$2");
	    }
		
	    return numString;
	},
	
	/**
	 * ÄÞ¸¶(,)¸¦ Á¦°ÅÇÏ¿© ¹ÝÈ¯ÇÑ´Ù.
	 * @param {Object} numString ÄÞ¸¶¸¦ Á¦°ÅÇÒ °ª
	 */
	stripCommas : function(numString) {
	    var re = /,/g;
	    return numString.replace(re, "");
	},
	
	/**
	 * ÅØ½ºÆ® ÇÊµå¿¡ ÀÔ·ÂÇÑ °ª¿¡ 3ÀÚ¸®¸¶´Ù ÄÞ¸¶(,)¸¦ ºÙÀÎ´Ù.
	 * ÅØ½ºÆ® ÇÊµå¿¡ ¾Æ·¡¸¦ ±âÀÔÇÑ´Ù. onkeyup="toMoney(this)"
	 * @param field ÅØ½ºÆ® ÇÊµå
	 */
	toMoney : function(field) {
	    var value = field.value;
	    
	    //È®Àå E2E °¡ Àû¿ëµÈ ±Ý¾×ÇÊµå°¡ ÀÖÀ»°æ¿ì script ·Î °ªÀ» ¼ÂÆÃÇÒ¶§ Å°º¸µå ÀÔ·Â stroke ¸¦ Áö¿î´Ù.
	    if ($('_ExtE2E123_cipher_trnsAmt') != undefined && $('_ExtE2E123_cipher_trnsAmt') != null){
        	$('_ExtE2E123_cipher_trnsAmt').value = '';
        }
        //ÀÓ½Ã·Î IE8.0 ¿¡¼­ÀÇ ¹®Á¦·Î ÀÏ¹ÝÀÌÃ¼ Step01 ÀÇ ÆûÀ» ÇÏµåÄÚµùÇÑ´Ù.
        //TODO : ¼ÒÄ· ¸ðµâ ¾÷±×·¹ÀÌµå½Ã id µµ hidden ÇÊµå¿¡ ³Ö¾îÁØ´Ù°í ÇÏ´Ï ¾÷±×·¹ÀÌµå ÀÌÈÄ »èÁ¦ÇÒ°Í.
        //ÀÓ½Ã ±¸¹® Start
        try{
        	var formO = document.forms['General01Form'];
        	if (formO != undefined && formO != null){
        		if (formO._ExtE2E123_cipher_trnsAmt != undefined
			    	&& formO._ExtE2E123_cipher_trnsAmt != null){
		        	formO._ExtE2E123_cipher_trnsAmt.value = '';
		        }
        	}
	    } catch(e){ }
	    //ÀÓ½Ã ±¸¹® End
        
	    var indexOfPoint = value.indexOf(".");
	    if (indexOfPoint == -1) {
	        field.value = pbk.formatCommas(value);
	    } else {
	        field.value = pbk.formatCommas(value.substring(0, indexOfPoint)) +
	                        value.substring(indexOfPoint, value.length);
	    }
	},
	
	/**
	 * ¼ýÀÚÅ¸ÀÔÀÇ ¹®ÀÚ¸¦ ÇÑ±Û·Î Ç¥ÇöÇÑ´Ù. 
	 * @param {String} numStr  Number typeÀÇ String
	 * @param {String} targetDivId ÇÑ±Û·Î Ç¥ÇöµÉ DivId 
	 * @param {int} rangeLength Á¦ÇÑÀÚ¸´¼ö
	 * @param {HTMLElemtnt} targetEl ¿¡·¯½Ã ÃÊ±âÈ­ÇÒ Element (optional)
	 * @return {boolean} Á¦ÇÑÀÚ¸®¸¦ Åë°úÇß´ÂÁö ¿©ºÎ
	 * 
	 */
	toKoreanFromMoney : function (numStr,targetDivId,rangeLength, targetEl){
		var arrayNum=new Array("","ÀÏ","ÀÌ","»ï","»ç","¿À","À°","Ä¥","ÆÈ","±¸");
		var arrayUnit=new Array("","½Ê","¹é","Ãµ","¸¸ ","½Ê¸¸ ","¹é¸¸ ","Ãµ¸¸ ",		
		                    "¾ï ","½Ê¾ï ","¹é¾ï ","Ãµ¾ï ","Á¶ ","½ÊÁ¶ ","¹éÁ¶");
		var arrayStr= new Array();
		var numStr = pbk.stripCommas(numStr);
		var len = numStr.length;
		
		var isValid = true;
		// Á¦ÇÑ ÀÚ¸´¼ö°¡ ³ÑÀ¸¸é ¸®ÅÏÇÑ´Ù. 
		if (len > rangeLength) {
			// ¿À·ù¸Þ¼¼Áö¸¦ Ãâ·ÂÇÑ´Ù. 
			pbk.extJS.messageBox.infoMsgBox(
				{
					isConfirm: false,
					title: "ÀÔ·Â¿À·ù",
					message: "¹üÀ§¸¦ ÃÊ°úÇÏ¿´½À´Ï´Ù.",
					icon: 'info',
					callback: null								
				}
			);
			if (targetEl) {
				targetEl.value = "0";
			}
			isValid = false;
		} 
		
		
		var hanStr = "";
		if (isValid) {
			for (i = 0; i < len; i++) {
				arrayStr[i] = numStr.substr(i, 1)
			}
			code = len;
			for (i = 0; i < len; i++) {
				code--;
				tmpUnit = "";
				if (arrayNum[arrayStr[i]] != "") {
					tmpUnit = arrayUnit[code];
					if (code > 4) {
						if ((Math.floor(code / 4) == Math.floor((code - 1) / 4) &&
						arrayNum[arrayStr[i + 1]] != "") ||
						(Math.floor(code / 4) == Math.floor((code - 2) / 4) &&
						arrayNum[arrayStr[i + 2]] != "")) {
							tmpUnit = arrayUnit[code].substr(0, 1);
						}
					}
				}
				hanStr += arrayNum[arrayStr[i]] + tmpUnit;
			}
		}
		
		if (targetDivId && targetDivId != "") {
			var oTargetDiv = $(targetDivId);
			if (oTargetDiv) {
				var oTextNode = new Object();
				var oChildNode = new Object();
				if (hanStr != "") {
					oTextNode = document.createTextNode('(' + hanStr + ' ¿ø)');
					oChildNode = oTargetDiv.childNodes[0];
				} else {
					oTextNode = document.createTextNode(' ');
					oChildNode = oTargetDiv.childNodes[0];
				}
				if (oTargetDiv.childNodes.length != 0) {
					oTargetDiv.removeChild(oChildNode);
				}
				oTargetDiv.appendChild(oTextNode);
			}
		}
		return isValid;
	},
	
	
	
	/**
	 * µÎ ³¯Â¥ »çÀÌÀÇ ÀÏ¼ö¸¦ °è»êÇÏ¿© ¹ÝÈ¯ÇÑ´Ù.
	 * @param date1 ¹®ÀÚ¿­ µ¥ÀÌÅÍ·Î '20041012' Çü½Ä
	 * @param date2 ¹®ÀÚ¿­ µ¥ÀÌÅÍ·Î '20041012' Çü½Ä
	 */
	daysBetween : function(date1, date2) {
	    date1 = new Date(date1.substring(0, 4), date1.substring(4, 6)-1, date1.substring(6,8));
	    date2 = new Date(date2.substring(0, 4), date2.substring(4, 6)-1, date2.substring(6,8));
	    var DSTAdjust = 0;
	    oneMinute = 1000 * 60;
	    var oneDay = oneMinute * 60 * 24;
	    date1.setHours(0);
	    date1.setMinutes(0);
	    date1.setSeconds(0);
	    date2.setHours(0);
	    date2.setMinutes(0);
	    date2.setSeconds(0);
	    DSTAdjust = (date2.getTimezoneOffset( ) - 
	                     date1.getTimezoneOffset( )) * oneMinute;
	    var diff = date2.getTime( ) - date1.getTime() - DSTAdjust;
	    return Math.ceil(diff/oneDay);
	},
	
	
	/**
	 * Æ¯Á¤ ³ëµå°¡ °¡Áö°í ÀÖ´Â ¸ðµç ¼Ó¼ºÀ» TEXTAREA¿¡ Ãâ·ÂÇÑ´Ù. °³¹ß ÆíÀÇ¸¦ À§ÇØ¼­
	 * Á¦°øµÇ´Â ÇÔ¼öÀÌ´Ù.
	 * @param obj ¼Ó¼º °ªÀ» ¾Ë°íÀÚ ÇÏ´Â ³ëµå
	 */
	listProperties : function(obj) {
	    var objName;
	
	    if (obj.nodeName) {
	        objName = obj.nodeName;
	    } else {
	        objName = "navigator";
	    }
	
	    var result = "";
	    for (var i in obj) {
	        result += objName + "." + i + "=" + obj[i] + "\n";
	    }
	
	    var area = document.createElement("textarea");
	    area.rows = 20;
	    area.cols = 50;
	    var body = document.getElementsByTagName("BODY");
	    if (body) {
	        body[0].appendChild(area);
	    } else {
	        alert("body ÅÂ±×°¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù.");
	        return false;
	    }
	    area.value = result;
	    return false;
	},
	
	/**
	 * QueryStringÀ» ¹ÝÈ¯ÇÑ´Ù.
	 */
	getQueryString : function() {
	    var result = "";
	    var queryTags = document.getElementsByTagName("input");
	    for (var i = 0; i < queryTags.length; i++) {
	        var name = queryTags[i].name;
			if (name) {
			    result += "&" + name + "=" + queryTags[i].value;
			}
	    }
	
	    queryTags = document.getElementsByTagName("select");
	    for (var i = 0; i < queryTags.length; i++) {
	        var name = queryTags[i].name;
			if (name ) {
			    result += "&" + name + "=" + queryTags[i].value;
			}
	    }
	    return result;
	},
	
	
	/**
	 * ÅØ½ºÆ® ÇÊµå¿¡ ÀÔ·ÂÇÑ °ª¿¡ 6ÀÚ¸® ÀÌÈÄ¿¡ ´ë½Ã(-)¸¦ ºÙÀÎ´Ù.
	 * ÅØ½ºÆ® ÇÊµå¿¡ ¾Æ·¡¸¦ ±âÀÔÇÑ´Ù. onkeyup="toSsn(this)"
	 * @param field ÅØ½ºÆ® ÇÊµå
	 */
	toSsn : function(field) {
	    var number = String(field.value);
	    number = number.replace(/-|\s+/g, "");
	
	    var length = number.length;
	
	    if (length < 6) {
	        field.value = number;
	    } else {
	        var result = number.substring(0, 6) + "-";
	        result += number.substring(6, length);
	        field.value = result;
	    }
	},	
	
	/**
	 * ·¹ÀÌ¾î ¹Ø¿¡ ÄÁÆ®·ÑÀ» ¼û±ä´Ù. 
	 * @param {Object} layer_id
	 */
    selectBoxHidden : function(layer_id)  {
        var ly = $(layer_id); 

        // ·¹ÀÌ¾î ÁÂÇ¥ 
        var ly_left  = ly.offsetLeft; 
        var ly_top    = ly.offsetTop; 
        var ly_right  = ly.offsetLeft + ly.offsetWidth; 
        var ly_bottom = ly.offsetTop + ly.offsetHeight; 

        // ¼¿·ºÆ®¹Ú½ºÀÇ ÁÂÇ¥ 
        var el; 

        for (i=0; i<document.forms.length; i++) { 
            for (k=0; k<document.forms[i].length; k++) { 
                el = document.forms[i].elements[k];

                if (el.type == "select-one") { 
                    var el_left = el_top = 0; 
                    var obj = el; 
                    if (obj.offsetParent) { 
                        while (obj.offsetParent) { 
                            el_left += obj.offsetLeft; 
                            el_top  += obj.offsetTop; 
                            obj = obj.offsetParent; 
                        } 
                    } 
                    el_left  += el.clientLeft; 
                    el_top    += el.clientTop; 
                    el_right  = el_left + el.clientWidth; 
                    el_bottom = el_top + el.clientHeight; 
                    
                    //alert(el_left+","+ly_left+","+el_top+","+ly_top+","+el_right+","+ly_right+","+el_bottom+","+ly_bottom);

                    // ÁÂÇ¥¸¦ µûÁ® ·¹ÀÌ¾î°¡ ¼¿·ºÆ® ¹Ú½º¸¦ Ä§¹üÇßÀ¸¸é ¼¿·ºÆ® ¹Ú½º¸¦ hidden ½ÃÅ´ 
                    if ( (el_left >= ly_left && el_top >= ly_top && el_left <= ly_right && el_top <= ly_bottom) || 
                        (el_right >= ly_left && el_right <= ly_right && el_top >= ly_top && el_top <= ly_bottom) || 
                        (el_left >= ly_left && el_bottom >= ly_top && el_right <= ly_right && el_bottom <= ly_bottom) || 
                        (el_left <= ly_left && el_top >= ly_top && el_right >= ly_right && el_bottom <= ly_bottom) ||	// 2008.06.18 Ãß°¡ 
                        (el_left >= ly_left && el_left <= ly_right && el_bottom >= ly_top && el_bottom <= ly_bottom) ) 
                        el.style.visibility = 'hidden'; 
                } 
            } 
        }
	},	

	/**
	 * °¨Ãß¾îÁø ¼¿·ºÆ® ¹Ú½º¸¦ ¸ðµÎ º¸ÀÌ°Ô ÇÔ 
	 */
	selectBoxVisible : function () { 
		for (i=0; i<document.forms.length; i++) { 
			for (k=0; k<document.forms[i].length; k++) { 
				el = document.forms[i].elements[k]; 
				if (el.type == "select-one" && el.style.visibility == 'hidden') 
					el.style.visibility = 'visible'; 
			} 
		} 
	},
	
	/**
	 * DIV ¸¦ ¼û±ä´Ù.
	 * @param {String} divId
	 */
    hiddenDiv: function(/*String*/divId){
		var divObj = $(divId);
		divObj.style.visibility = 'hidden';
		
		pbk.selectBoxVisible(divId);
	
	},	
	
	/**
	 * DIV ¸¦ º¸¿©ÁØ´Ù.
	 * @param {String} divId
	 */
    showDiv: function(/*String*/divId){
		var divObj = $(divId);
		divObj.style.visibility = 'visible';
		
		pbk.selectBoxHidden(divId);
	},
	
	/**
	 * ViewPort¸¦ °¡Á®¿Â´Ù.
	 */
	getViewport : function() {
		var w =0;
		var h =0;
		
		if(window.innerWidth) w=window.innerWidth;
		if(document.documentElement.clientWidth){
			var w2 = document.documentElement.clientWidth;
			if(!w || w2 && w2 < w) w=w2;
		}else if(document.body){
			w=document.body.clientWidth;
		}
	
		if(window.innerHeight) h=window.innerHeight;
		if(document.documentElement.clientHeight) h=document.documentElement.clientHeight;
		else if(document.body) h=document.body.clientHeight;		
		
		return [w,h];
	},
	
	/**
	 * Scroll OffesetÀ» °¡Á®¿Â´Ù.
	 */
	getScrollOffset : function() {
	
		var x = 0;
		var y = 0;
		
		// ºê¶ó¿ìÀúº° scrollTop À§Ä¡ ¾ò¾î¿À±â
		if (window.pageYOffset)
		{
			x = window.pageXOffset;
			y = window.pageYOffset;
		}
		else if (document.documentElement && document.documentElement.scrollTop != undefined)
		{
			x = document.documentElement.scrollLeft;
			y = document.documentElement.scrollTop;
		}
		else if (document.body)
		{
			x = document.body.scrollLeft;
			y = document.body.scrollTop;
		}
		
		return [x,y];
	},
	
	/**
	 * clientHeight¸¦ °¡Á®¿Â´Ù.
	 */
	getClientHeight : function() {
	
		var x = 0;
		var y = 0;
		
		if (window.innerHeight)
		{
			x = window.innerWidth;
			y = window.innerHeight;
		}
		else if (document.documentElement && document.documentElement.clientHeight != undefined)
		{
			x = document.documentElement.clientWidth;
			y = document.documentElement.clientHeight;
		}
		else if (document.body)
		{
			x = document.body.clientWidth;
			y = document.body.clientHeight;
		}
		
		return [x,y];
	},
	
	/**
	 * ScrollHeight¸¦ °¡Á®¿Â´Ù.
	 */
	getScrollHeight : function() {
	
		var x,y;
		var _scrollHeight = document.body.scrollHeight;
		var _offsetHeight = document.body.offsetHeight
		
		if (_scrollHeight > _offsetHeight) {
			x = document.body.scrollWidth;
			y = document.body.scrollHeight;
		}
		else {
			x = document.body.offsetWidth;
			y = document.body.offsetHeight;
		}
		
		return [x,y];
	},
	
	/**
	 * dialog¸¦ È­¸é °¡¿îµ¥¿¡ À§Ä¡½ÃÅ²´Ù.
	 * @param {Object} _panelTarget ÂüÁ¶ÇÒ ¿ÀºêÁ§Æ®
	 * @param {Object} _panelDlg °¡¿îµ¥ À§Ä¡½ÃÅ³ ¿ÀºêÁ§Æ®
	 */
	centerPositioning : function (/*Object*/_panelTarget, /*Object*/ _panelDlg){
		// preparing
		var dlgPos = new Array(2);			// MaskLayerÀ§¿¡ ¿Ã·Á³õÀ» ¿ÀºêÁ§Æ®ÀÇ À§Ä¡
		var scrViewport = new Array(2); 	// È­¸é Viewport
		var elViewport = new Array(2);  	// MaskLayer¸¦ µ¤À» ¿ÀºêÁ§Æ®ÀÇ Viewport
		var tmpTarget = new Array(2);		// MaskLayer¸¦ µ¤À» ¿ÀºêÁ§Æ®ÀÇ Å©±â
		var tmpDlg = new Array(2);			// MaskLayerÀ§¿¡ ¿Ã·Á³õÀ» ¿ÀºêÁ§Æ®ÀÇ Å©±â
		var scrollOffset = new Array(2);	// »ó´Ü¿¡¼­ºÎÅÍ ½ºÅ©·ÑµÈ Å©±â
		var w;								// ÁöÁ¤µÈ ¿ÀºêÁ§Æ®ÀÇ ³ÊºñÀÇ °¡¿îµ¥ Position
		var h;								// ÁöÁ¤µÈ ¿ÀºêÁ§Æ®ÀÇ ³ôÀÌÀÇ °¡¿îµ¥ Position
		
		Position.prepare();

		// set position
		var scrPos = new Array(Position.deltaX, Position.deltaY);

		// MaskLayer¸¦ µ¤À» ¿µ¿ªÀÌ Á¤ÇØÁöÁö ¾Ê¾Ò´Ù¸é ÇöÀç º¸ÀÌ´Â È­¸éÀ»
		// Å¸ÄÏÀ¸·Î °¡¿îµ¥¸¦ ¼³Á¤ÇÑ´Ù.
		if (null != _panelTarget || _panelTarget != undefined) {
			//
			// MaskLayer¸¦ µ¤À» ¿µ¿ªÀ» Á¤ÇØ³õÀº °æ¿ì
			//
			
			// MaskLayer¸¦ µ¤À» ¿µ¿ªÀÇ ÁÂÇ¥¸¦ ±¸ÇÑ´Ù. [x,y]
			elViewport = Position.cumulativeOffset(_panelTarget);
			
			// ViewPort¸¦ °¡Á®¿Â´Ù. [w,h]
			scrViewport = pbk.getViewport();
			
			// MaskLayer¸¦ µ¤À» ¿µ¿ªÀÇ Å©±â¸¦ ±¸ÇÑ´Ù. (width, height)
			tmpTarget = Element.getDimensions(_panelTarget);
			
			// MaskLayerÀ§¿¡ ¿Ã·Á³õÀ» LoadingÄÁÆ®·ÑÀÇ Å©±â¸¦ ±¸ÇÑ´Ù. (width, height)
			tmpDlg = Element.getDimensions(_panelDlg);
			
			// ½ºÅ©·Ñ À§Ä¡¸¦ ±¸ÇÑ´Ù. [x,y];
			scrollOffset = pbk.getScrollOffset();
			
			// MaskLayer¸¦ µ¤À» ¿µ¿ªÀÇ ÃÑ ³ôÀÌ°¡ ÇöÀç º¸´Â È­¸éÀÇ ³ôÀÌº¸´Ù Å¬ °æ¿ì
			// Áï, MaskLayer¸¦ µ¤À» ¿µ¿ªÀÌ ÇöÀç È­¸éÀÇ ¿µ¿ªÀÇ À§ ¶Ç´Â ¾Æ·¡¿¡ °è¼ÓµÇ´Â °æ¿ì
			// ÇöÀç È­¸é¿¡ º¸ÀÌ´Â ¿µ¿ª¿¡¼­ÀÇ °¡¿îµ¥·Î ¼³Á¤ 
			if ((elViewport[1] + tmpTarget.height) - scrViewport[1] >= 0){
				// MaskLayer¸¦ µ¤À» ¿µ¿ªÀÇ yÁÂÇ¥°ªÀÌ ÇöÀç º¸ÀÌ´Â È­¸éÀÇ À§ÂÊÀ¸·Î ³Ñ¾î°¬À» °æ¿ì
				// Áï, MaskLayer¸¦ µ¤À» ¿µ¿ªÀÇ »ó´Ü ½ÃÀÛºÎºÐÀÌ ½ºÅ©·Ñ À§ÂÊÀ¸·Î ¹þ¾î³µÀ» °æ¿ì
				if (elViewport[1] - scrollOffset[1] < 0) {
					// ÄÁÆ®·ÑÀÇ ½ÃÀÛºÎºÐÀÌ ½ºÅ©·Ñ À§ÂÊÀ¸·Î ¹þ¾î³µÀ¸¹Ç·Î
					// ÇöÀç º¸ÀÌ´Â È­¸éÀÇ ¸ðµç ¿µ¿ªÀÌ MaskLayer¸¦ µ¤À» ¿µ¿ªÀÇ ÄÁÆ®·Ñ¸¸ º¸ÀÌ°Ô µÈ´Ù.
					// ±×·¡¼­ ³ôÀÌ´Â ÇöÀç º¸ÀÌ´Â È­¸éÀÇ °¡¿îµ¥·Î ÁöÁ¤
					h = scrViewport[1] / 2;
				}
				else {
					// ÄÁÆ®·ÑÀÇ ½ÃÀÛºÎºÐÀÌ ½ºÅ©·Ñ À§ÂÊÀ¸·Î ¹þ¾î³ªÁö ¾ÊÀº °æ¿ì.
					// ÀÌ·² °æ¿ì¿¡´Â ÇöÀç º¸ÀÌ´Â ¿µ¿ª¿¡¼­ÀÇ °¡¿îµ¥·Î ÁöÁ¤ÇØ¾ß ÇÑ´Ù.
					//
					// ½ºÅ©·ÑÀÌ µÇ¸é¼­ ÇöÀç È­¸éÀÇ MaskLayer¸¦ µ¤À» ¿µ¿ªÀÇ ³ôÀÌ°¡ º¯È­ÇÏ¸é
					// CenterPositionÀº ÇöÀç º¸ÀÌ´Â È­¸éÀÇ MaskLayer¸¦ µ¤À» ¿µ¿ªÀÇ °¡¿îµ¥¸¦ Ã£¾Æ¾ß ÇÑ´Ù.
					// ÇöÀç º¸ÀÌ´Â È­¸é¿¡¼­ÀÇ ÄÁÆ®·ÑÀÇ ³ôÀÌ¸¦ ±¸ÇÒ¶§´Â ÇöÀç È­¸éÀÇ ³ôÀÌ¿¡¼­ ÄÁÆ®·ÑÀÇ yÁÂÇ¥°ªÀ» »« ÈÄ¿¡
					// ½ºÅ©·ÑµÈ y°ª ¸¸Å­ Á¦°ÅÇØÁà¾ß ½ÇÁ¦ È­¸é¿¡ º¸ÀÌ´Â ÄÁÆ®·ÑÀÇ ³ôÀÌ¸¦ ±¸ÇÒ ¼ö ÀÖ´Ù.
					// ÄÁÆ®·ÑÀÇ yÁÂÇ¥°ª¿¡¼­ ±¸ÇÑ ³ôÀÌÀÇ °¡¿îµ¥¸¦ ´õÇØÁÖ¸é ½ÇÁ¦ À§Ä¡ÇÒ yÃà ÁÂÇ¥°ªÀ» ±¸ÇÒ ¼ö ÀÖ´Ù.
					h = elViewport[1] + ((scrViewport[1] - elViewport[1] - scrollOffset[1]) / 2);
				}
				
				// ³ôÀÌÀÇ °æ¿ì´Â ÇöÀç ÄÁÆ®·ÑÀÇ xÃà ÁÂÇ¥°ª¿¡ ÄÁÆ®·ÑÀÇ ³ÐÀÌÀÇ Àý¹ÝÀ» °¡¿îµ¥·Î ±¸ÇÑ´Ù.
				w = elViewport[0] + tmpTarget.width / 2;
			}else {
				// MaskLayer¸¦ µ¤À» ¿µ¿ªÀÇ ÃÑ ³ôÀÌ°¡ ÇöÀç º¸´Â È­¸éÀÇ ³ôÀÌº¸´Ù ÀÛÀ» °æ¿ì¿¡´Â
				// ÇöÀç º¸ÀÌ´Â x, y ÁÂÇ¥°ª¿¡ ³ÐÀÌ¿Í ³ôÀÌ¸¦ ´õÇÑ Àý¹ÝÀÌ °¡¿îµ¥°¡ µÈ´Ù.
				h = elViewport[1] + tmpTarget.height / 2;				
				w = elViewport[0] + tmpTarget.width / 2;
			}
			
			// MaskLayer¸¦ µ¤À» ¿µ¿ªÀÇ ¾Æ·§ºÎºÐÀ» ¹þ¾î³¯ °æ¿ì °¡¿îµ¥ À§Ä¡½ÃÅ³ ¿ÀºêÁ§Æ®´Â ¿µ¿ªÀÇ ¾Æ·§ºÎºÐ¿¡¼­ ¹þ¾î³ªÁö ¾Êµµ·Ï °íÁ¤ÇÑ´Ù.
			if ((elViewport[1] + tmpTarget.height) <= (scrollOffset[1] + h + tmpDlg.height / 2)){
				h = ((elViewport[1] + tmpTarget.height) - scrollOffset[1]) - tmpDlg.height / 2;
			}
			
			// °¡¿îµ¥ÀÇ À§Ä¡¸¦ ±¸Çß´Ù ÇÏ´õ¶óµµ
			// ±×°÷¿¡ ¿Ã·Á³õÀ» ÄÁÆ®·ÑÀÇ ³ôÀÌ¿Í ³ÊºñÀÇ Àý¹Ý¾¿À» »©Áà¾ß Á¤ °¡¿îµ¥°¡ µÈ´Ù.
			dlgPos[0] = scrPos[0] + w - tmpDlg.width / 2;
			dlgPos[1] = scrPos[1] + h - tmpDlg.height / 2;
		}
		else {
			//
			// MaskLayer¸¦ µ¤À» ¿µ¿ªÀ» Á¤ÇÏÁö ¾ÊÀº °æ¿ì (ÇöÀç º¸ÀÌ´Â È­¸éÀ» Å¸ÄÏÀ¸·Î ÁøÇà)
			//
			
			// ViewPort¸¦ °¡Á®¿Â´Ù. [w,h]
			scrViewport = pbk.getViewport();
			
			// MaskLayerÀ§¿¡ ¿Ã·Á³õÀ» LoadingÄÁÆ®·ÑÀÇ Å©±â¸¦ ±¸ÇÑ´Ù. (width, height)
			tmpDlg = Element.getDimensions(_panelDlg);
				
			// ÇöÀç º¸ÀÌ´Â x, y ÁÂÇ¥°ª¿¡ ³ÐÀÌ¿Í ³ôÀÌ¸¦ ´õÇÑ Àý¹ÝÀÌ °¡¿îµ¥°¡ µÈ´Ù.
			// °¡¿îµ¥ÀÇ À§Ä¡¸¦ ±¸Çß´Ù ÇÏ´õ¶óµµ
			// ±×°÷¿¡ ¿Ã·Á³õÀ» ÄÁÆ®·ÑÀÇ ³ôÀÌ¿Í ³ÊºñÀÇ Àý¹Ý¾¿À» »©Áà¾ß Á¤ °¡¿îµ¥°¡ µÈ´Ù.
			dlgPos[0] = scrPos[0] + scrViewport[0] / 2 - tmpDlg.width / 2;
			dlgPos[1] = scrPos[1] + scrViewport[1] / 2 - tmpDlg.height / 2;
		}
		
		// drawing dialogBox
		_panelDlg.style.left = dlgPos[0] + 'px';
		_panelDlg.style.top = dlgPos[1] + 'px';
	},
	
	/**
	 * 
	 * @param {Object} furl
	 * @param {Object} fwidth
	 * @param {Object} fheight
	 * @param {Object} transoption
	 * @param {Object} id_name
	 */
	swfprint : function(furl,fwidth,fheight,transoption,id_name)	{
		var id_names = "main_flash";
		if(typeof(id_name) != 'undefined') id_names = id_name;
		document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="'+ fwidth +'" height="' + fheight +'" align="middle">');
		document.write('<param name="movie" value="'+ furl +'"/>');
		if (transoption == "t") {
			document.write('<param name="wmode" value="transparent"/>');
		}
		else {
			if (transoption == "o") {
				document.write('<param name="wmode" value="opaque"/>');
			}
		}
			
		document.write('<!-- Hixie method -->');
		document.write('<!--[if !IE]> <-->');
		document.write('<object type="application/x-shockwave-flash" data="'+ furl +'" width="'+ fwidth +'" height="' + fheight +'"');
		if (transoption == "t") {
			document.write(' wmode="transparent"');
		}
		else {
			if (transoption == "o") {
				document.write(' wmode="opaque"');
			}
		}
		
		document.write('></object>');
		document.write('<!--> <![endif]-->');
		document.write('</object>');
		if (id_names == "top_flash") {
			//window.onload = fn_resize_top_flash;
			window.attachEvent("onload", fn_resize_top_flash)
			window.onresize = fn_resize_top_flash;
		}
	},
	
	isMenuOver : false,
	
	/**
	 * Roll over 
	 * @param {Object} obj
	 */
	menuOver: function(obj){
		obj.src = obj.src.replace("_off.gif", "_on.gif");
		pbk.isMenuOver = true;
	},
	
	/**
	 * Roll out
	 * @param {Object} obj
	 */
	menuOut: function(obj){
		obj.src = obj.src.replace("_on.gif", "_off.gif");
	},
	
	/**
	 * Show Layer
	 * @param {Object} tgtEl
	 */ 
	showLayer: function(tgtEl){
		document.getElementById(tgtEl).style.display = "block";
	},

    /**
	 * Show Layer Inline
	 * @param {Object} tgtEl
	 */
	showInline: function(tgtEl){
		document.getElementById(tgtEl).style.display = "inline";
	},

    /**
	 * Hide Layer
	 * @param {Object} tgtEl
	 */
	hideLayer: function(tgtEl){
		document.getElementById(tgtEl).style.display = "none";
	},
	
	/**
	 * Åõ¸íÀÌ¹ÌÁö
	 * @param {Object} obj
	 */
	setPng24 : function(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 Links
	 */
	linkAct : function()	{
		var tgtList = document.getElementById('family_urls');
		if (tgtList.style.display) {
			hideLayer('family_urls');
			tgtList.style.display = "";
			if (navigator.userAgent.indexOf("MSIE") != -1 && document.getElementById('container')) 
				document.getElementById('container').style.zIndex = "0";
		}
		else {
			showLayer('family_urls');
			if (navigator.userAgent.indexOf("MSIE") != -1 && document.getElementById('container')) 
				document.getElementById('container').style.zIndex = "-1";
		}
	},
	
	/**
	 * 
	 * @param {Object} tgtEl
	 */
	selectLinks : function(tgtEl)	{
		var tgtList = document.getElementById(tgtEl);
		if (tgtList.style.display) {
			hideLayer(tgtEl);
			tgtList.style.display = "";
		}
		else {
			showLayer(tgtEl);
		}
	},
	
	/**
	 * 
	 * @param {Object} tgtEl
	 */
	showSelectLayer : function(tgtEl)    {
		document.getElementById(tgtEl).style.display = "block";
		if ( navigator.userAgent.indexOf("MSIE") !=-1 && document.getElementById('container') ) 
			document.getElementById('container').style.zIndex = "0";
	},
	
	/**
	 * 
	 * @param {Object} tgtEl
	 */
	hideSelectLayer : function(tgtEl)    {
		document.getElementById(tgtEl).style.display = "none";
		if (navigator.userAgent.indexOf("MSIE")!=-1&&document.getElementById('container')) 
			document.getElementById('container').style.zIndex = "0";
	},	
	
	/**
	 * Float layer
	 * @param {Object} target
	 */
	initMoving : function(target) {
	    if (!target)
	    return false;
	
	    var obj = target;
		var scrollHeiht = pbk.getScrollHeight();
	    obj.initTop = 65;
	    obj.bottomLimit = scrollHeiht[1] - 220;
	    obj.topLimit = 65;
	    obj.style.position = "absolute";
	    obj.top = obj.initTop;
	    obj.style.top = obj.top + "px";
	
	    obj.getTop = function() {
			var offset = pbk.getScrollOffset();
			
			return offset[1];
		}
		
	    obj.getHeight = function(){
			var height = pbk.getClientHeight();
			
			return height[1];
		},
		
	    obj.move = setInterval(function(){
			pos = obj.getTop() + obj.getHeight()/20;
			
			if (pos > obj.bottomLimit) 
				pos = obj.bottomLimit
			if (pos < obj.topLimit) 
				pos = obj.topLimit
			
			interval = obj.top - pos;
			obj.top = obj.top - interval/5;
			
			obj.style.top = obj.top + "px";
		}, 40)
	},
	/**
	 * ÀÎÀÚ·Î Á¦°øµÈ String À» trim ÇÑ´Ù. 
	 * @param {String} value
	 */
	trimmed : function (value) {
	    value = value.replace(/^\s+/, "");  /* remove leading white spaces */
	    value = value.replace(/\s+$/g, ""); /* remove trailing while spaces */
	    return value;
	},
	
	/**
	 * ÅÇ ¸Þ´º·Î ±¸¼ºµÈ ÀÌ¹ÌÁö Å¬¸¯½Ã Å¬¸¯ÇÑ ¸Þ´º È°¼ºÈ­ ÇÑ´Ù
	 * (È°¼ºÈ­ÇÒ ¸Þ´º ÀÌ¿Ü´Â ¸ðµÎ ºñÈ°¼ºÈ­ Ã³¸® ÇÔ)
	 * @param {Object} actionObj Å¬¸¯ÇÑ ÅÇÀÇ ¿ÀºêÁ§Æ®
	 * @param {String} tabMenuDiv ÅÇ±â´ÉÀ» Ã³¸®ÇÒ ¿µ¿ªÀÇ ID
	 */
	changeTabImage : function(actionObj, tabMenuDiv) {
		var objs = $(tabMenuDiv).getElementsByTagName('img');
		
		for (var i = 0; i < objs.length; i++) {
			if (objs[i] == actionObj) {
				objs[i].onmouseover = null;
				objs[i].onmouseout = null;

				pbk.menuOver(objs[i]);
			}
			else {
				// 20081205-1 inline ¼±¾ðµÇ¾î ÀÖ´Â ÀÌº¥Æ® ÄÝ¹éÀ¸·Î ´ëÃ¼
				objs[i].onmouseover = function(){
					eval('pbk.menuOver(this)');					
				};
				
				objs[i].onmouseout = function(){
					eval('pbk.menuOut(this)');
				};
				
				pbk.menuOut(objs[i]);
			}
		}
		
	},
	/**
	 * sorting Å×ÀÌºí up, down ÀÌ¹ÌÁö Å¬¸¯½Ã Å¬¸¯ÇÑ ¸Þ´º È°¼º, ºñÈ°¼ºÈ­ ÇÑ´Ù.
	 * (È°¼ºÈ­ÇÒ ¸Þ´º ÀÌ¿Ü´Â ¸ðµÎ ºñÈ°¼ºÈ­ Ã³¸® ÇÔ)
	 * @param {Object} actionObj Å¬¸¯ÇÑ ÅÇÀÇ ¿ÀºêÁ§Æ®
	 */
	changeSortImage : function (actionObj) {
		
		imgObj = actionObj.getElementsByTagName('img');

		if (pbk.changeImageObject == imgObj) {
			if (imgObj[0].src.indexOf("_down00.gif") != -1) { /* °°Àº td Å¬¸¯½Ã downÀ»  upÀ¸·Î */
				imgObj[0].src = imgObj[0].src.replace("_down00.gif", "_up00.gif");
			}
			else { /* °°Àº td Å¬¸¯½Ã upÀ»  downÀ¸·Î */
				imgObj[0].src = imgObj[0].src.replace("_up00.gif", "_down00.gif");
			}
			pbk.changeImageObject = imgObj;
		}
		else {
			/* ´Ù¸¥ td Á¤·Ä½Ã ±âÁ¸ ÀÌ¹ÌÁö ºñÈ°¼ºÈ­, Å¬¸¯ÀÌ¹ÌÁö È°¼ºÈ­ */
			if (pbk.changeImageObject != null) { 
				/* ÀÌÀü td°¡ up, down¸ðµÎ ºñÈ°¼º down */
				pbk.changeImageObject[0].src = pbk.changeImageObject[0].src.replace("_up00.gif", "_down01.gif");
				pbk.changeImageObject[0].src = pbk.changeImageObject[0].src.replace("_down00.gif", "_down01.gif");
				
				/* ÇöÀç td¸¦ È°¼º down */
				imgObj[0].src = imgObj[0].src.replace("_up00.gif", "_down00.gif");
				imgObj[0].src = imgObj[0].src.replace("_down01.gif", "_down00.gif");
			}
			else { /* Ã³À½ Å¬¸¯½Ã ºñÈ°¼ºÈ­ downÀ» È°¼ºÈ­ downÀ¸·Î */
				imgObj[0].src = imgObj[0].src.replace("_down01.gif", "_down00.gif");
			}
			pbk.changeImageObject = imgObj;
		}
		
	},
	
	/**
	 * index°ª¿¡ À§Ä¡ÇÑ tabButtonÀ» È°¼ºÈ­ ÇÕ´Ï´Ù.
	 * @param {String} index ÀÎµ¦½º
	 * @param {String} tabMenuDiv TabMenu ¿µ¿ª ID
	 */
	activeTabImage: function(index, tabMenuDiv) {
		var objs = $(tabMenuDiv).getElementsByTagName('img');
		
		for (var i = 0; i < objs.length; i++) {
			if (i == index){
				objs[i].onmouseover = null;
				objs[i].onmouseout = null;

				pbk.menuOver(objs[i]);
			}
			else {
				objs[i].onmouseover = function(){
					eval('pbk.menuOver(this)');
				};
				
				objs[i].onmouseout = function(){
					eval('pbk.menuOut(this)');
				};
				
				pbk.menuOut(objs[i]);
			}
		}
	},
	
	/**
	 * ¹ß»ýÇÑ Key Event°¡ ReturnKeyÀÎÁö °Ë»çÇÑ´Ù.
	 */
	isReturnKey: function(keyCode){
		return keyCode == Event.KEY_RETURN;
	},
	
	/**
	 * FormÀ» »ý¼ºÇÏ¿© ¸®ÅÏÇÕ´Ï´Ù.
	 * @param {Array} data È÷µçÇÊµå¿¡ ÀúÀåÇÒ µ¥ÀÌÅÍ [{key: value}]
	 * @return {Object} È÷µçÇÊµå Á¤º¸°¡ µé¾îÀÖ´Â form Object
	 */
	createForm: function(data){
		var form = document.createElement('form');

		for (var i = 0; i < data.length; i++){
			var input = document.createElement('input');
			
			input.type = 'hidden';
			input.id = data[i].id;
			input.name = data[i].id;
			input.value = data[i].value;
			
			form.appendChild(input); 
		}
		
		return form;
	},
	
	/**
	 * È÷µçÆûÀ» »ý¼ºÇÏ¿© ÁöÁ¤ÇÑ Form¿¡ Ãß°¡ÇÕ´Ï´Ù.
	 * @param {Object} formObj Æû ¿ÀºêÁ§Æ®
	 * @param {Object} fieldId ÇÊµå ¾ÆÀÌµð
	 * @param {Object} value °ª
	 */
	createHiddenField: function(formObj, fieldId, value){
		var fieldObj = document.createElement('input');
		
		fieldObj.type = 'hidden';
		fieldObj.id = fieldId;
		fieldObj.value = value;
		
		formObj.appendChild(fieldObj);
	},

    /**
    * ÁöÁ¤ÇÑ Æû ³»¿¡ È÷µçÇÊµå¸¦ Á¦°ÅÇÕ´Ï´Ù.
    * @param {Object} formObj Æû ¿ÀºêÁ§Æ®
    * @param {String} fieldId »èÁ¦ÇÒ È÷µçÇÊµåÀÇ ID
    */
    removeHiddenField: function(formObj, fieldId){
        for (var idx = 0; idx < formObj.childNodes.length; idx++){
            if (formObj.childNodes[idx].id == fieldId) {
                formObj.removeChild(formObj.childNodes[idx]);
            }
        }
    },

    /**
	 * ÁöÁ¤ÇÑ ±×·ìÀÇ Ã¼Å©¹Ú½ºÁß ÇÑ°³ ÀÌ»óÀÌ Checked µÇ¾î ÀÖ´ÂÁö È®ÀÎÇÕ´Ï´Ù.
	 * @param {Object} chkListName Ã¼Å©¹Ú½º Name(ID¾Æ´Ô)
	 * @return {Boolean} Ã¼Å©¹Ú½º ¼±ÅÃÀ¯¹«
	 */
	isGroupChecked: function(chkListName){
		var chkList = document.getElementsByName(chkListName);
		var isChecked =  false;

        for (var idx = 0; idx < chkList.length; idx++){
			if (chkList[idx].checked && !chkList[idx].disabled ){
				isChecked = true;
			}
		}
		
		return isChecked;
	},
	
	/**
	 * Ã¼Å©¹Ú½º ÀÏ°ý Ã¼Å© Åä±Û±â´É
	 * @param {Boolean} isCheck Ã¼Å©À¯¹«
	 * @param {String} chkListName Ã¼Å©¹Ú½º Name (ID¾Æ´Ô)
	 */
	setChkboxChecked: function(isCheck, chkListName){
		var chkAccountList = document.getElementsByName(chkListName);
		
		for (var idx = 0; idx < chkAccountList.length; idx++) {
			chkAccountList[idx].checked = isCheck;
		}
    },


    /**
	 * Ã¼Å©¹Ú½º ÀÏ°ý Ã¼Å© Åä±Û±â´É
	 * @param {Object} checkbox °¡ À§Ä¡ÇØ ÀÖ´Â formObj
	 * @param {String} toggle ±â´ÉÀ» ¼öÇà ÇÏ´Â checkbox id (NAME ¾Æ´Ô)
	 * @param {String} chkListName Ã¼Å©¹Ú½º Name (ID¾Æ´Ô)
	 */
	toggleCheck: function(formObj, checkId, chkListName){
		var isChecked = document.getElementById(checkId).checked;

        // niceform ÀÎ °æ¿ì
        if( formObj.className == "niceform"){
            for (var idx = 0; idx < hana.JHanaNiceForms.checkboxes.length; idx++) {
                if(hana.JHanaNiceForms.checkboxes[idx].name == chkListName) {
                    //var tester = false;
                    if (isChecked) {
                        hana.JHanaNiceForms.checkboxLabels[idx].className = "chosen";
                    }
                    else {
                         hana.JHanaNiceForms.checkboxLabels[idx].className = "";
                    }
                    hana.JHanaNiceForms.checkboxes[idx].checked = isChecked;
                    hana.JHanaNiceForms.checkCheckboxes(idx, isChecked);
                }
            }
        }else{
            pbk.setChkboxChecked(isChecked,chkListName);
        }
    }
};

/**
 * Start of namespace
 */
pbk.banka = {};
pbk.card = {};
pbk.certify = {};
pbk.common = {};
pbk.common.popup = {};
pbk.deposit = {};
pbk.ebpp = {};
pbk.foreign = {};
pbk.fund = {};
pbk.flex = {};
pbk.inquiry = {};
pbk.loan = {};
pbk.myhana = {};
pbk.tools = {};
pbk.transfer = {};
pbk.unity = {};
pbk.wizard = {};
pbk.side = {};
/**
 * °³ÀÎ °í°´ ¼­ºñ½º
 */
pbk.indservice ={};
pbk.indservice.ubank ={};
pbk.ecrm = {};

/**
 * ±â¾÷°áÀç
 */
pbk.b2b = {};
pbk.b2b.sell = {};
pbk.b2b.buy = {};
/**
 * ºÎ°¡¼­ºñ½º
 */
pbk.service = {};
pbk.service.cashbag = {};
pbk.service.etotal = {};
/**
 * e±ÝÀ¶¸¶ÄÏ
 */
pbk.mkt = {};
/**
 * ¸Þ½ÅÁ®¹ðÅ·
 */
pbk.msn = {};
/**
 * Extension Javascript Module namespace
 */
pbk.extJS = {};

/**
 * Form Event Module namespace
 */
pbk.form = {};

/**
 * tag lib
 */
pbk.tag = {};


/**
 * Menu Navigation
 */
pbk.menu = {
	/**
	 * ¿ÞÂÊ¸Þ´º ÆäÀÌÁö ÀÌµ¿
	 * 
	 * @param {Object} pageURL
	 * @param {Object} formObj
	 */
	goMenu : function(pageURL, destDiv, formObj) {
		
		var hanaAjax = null;
		
		if ( destDiv == undefined || destDiv == null ) {
			destDiv = pbk.CONTENT_WRAP;
		}
		
		hanaAjax = new hana.JHanaAjax(destDiv, true, true);	
	
		//alert(pbk.APPLICATION_CONTEXT_ROOT + pageURL);
		hanaAjax.ajaxCommSubmit(pbk.APPLICATION_CONTEXT_ROOT + pageURL, formObj);
		
	}
};

/**
 * Ajax Utilities
 */
pbk.ajax = {
	flexData : null,
	/**
	 * AjaxÀÇ CallbackÇÔ¼ö·Î ³Ñ°Ü¹ÞÀº µ¥ÀÌÅÍ¸¦ °¡°ø/Ã³¸®ÇÑ´Ù.
	 * µ¥ÀÌÅÍ°¡ jsonÅ¸ÀÔÀÏ °æ¿ì °¡°ø/Ã³¸® ÇÏÁö ¾Ê´Â´Ù.
	 * @param {Object} res response µ¥ÀÌÅÍ
	 * @param {boolean} isDebug ¿¡·¯ÀÏ°æ¿ì Ãß°¡Á¤º¸¸¦ º¼°ÍÀÎÁö?
	 */
	parseData : function(res, isDebug){	
		var resType = res.getResponseHeader('json-type');
		var viaLoginYN = res.getResponseHeader('viaLoginYN');
		var guid = res.getResponseHeader('guid');
		// 20081203-1 °ü°è»ç°Å·¡ °¡´ÉÇÑ °Å·¡¿´´ÂÁö?
		var relCompanyPossibleYn = res.getResponseHeader('relCompanyPossibleYn');
		// 20081212-1 tiles result ÀÎÁö ¾Æ´ÑÁö? 
		var tilesResultYn = res.getResponseHeader('tilesResultYn');
		
		//alert(resType);
		
		// 20081118 ¿À·û°æ ·Î±×¸¦ º¸±âÀ§ÇØ Ãß°¡  
		if (null==guid)
			guid = '';
		if ( isDebug && $('_guid') && guid !='') {
			$('_guid').innerHTML = guid;
		}
		//--->
		
		// 20081203-1 °ü°è»ç°Å·¡ °¡´ÉÇÑ °Å·¡¿´´ÂÁö
		if ('N' == relCompanyPossibleYn) {
			// ¿ÞÂÊ ¸Þ´ºÀÇ °ü°è»ç °Å·¡»óÅÂ¸¦ ÇØÁ¦
			if (document.forms['selRelCompanyForm']){
				var selCode = document.forms['selRelCompanyForm'].selRelCompanyNo.value;
				document.forms['selRelCompanyForm'].selRelCompanyNo.value = "";			
				if (pbk != undefined) {
					if (!selCode || ""!==selCode || selCode.length !=0)
						pbk.common.leftmenu.comp.releaseRelCompany();
				}	
			}
		} 
		//--->
		
		if (viaLoginYN == null || viaLoginYN.trim() =='') {
			viaLoginYN ='N';
		}
		if (resType == 'error') {
			if (pbk.extJS.loadingLayer) {
			    pbk.extJS.loadingLayer.close();
			}
			if (false!=pbk.ajax.setErrParsing(res.responseText, isDebug)) {
				pbk.ajax.callMsgBox('ERROR', pbk.ajax.setErrParsing(res.responseText, isDebug));
			}	
			return;		
		} else if (resType == 'normal') {
			// callback¿¡¼­ Ã³¸®ÇÑ´Ù.
		} else if (resType == 'redirect') {
			if (viaLoginYN == 'N') {
				//ÆäÀÌÁö redirect ½Ã ·Îµù¹Ù ¶ç¿ó´Ï´Ù.
				pbk.extJS.loadingLayer.indicatorLayer = new Ext.Window({
					id: 'redirectLoadingLayer',
					resizable: false,
					closable: false,
					footer: true,
					border: false,
					bodyBorder: false,
					draggable: false,
					plain: true,
					width: 400,
					autoHeight: true,
					shadow: false,
					modal: false,
					html: pbk.extJS.loadingLayer.loadingMsg(),
					listeners: {
						beforedestroy: function(w){
							pbk.extJS.privateEvent.destroy(w);
						}
					}
				});
				
				// Indicator Layer¸¦ È­¸é °¡¿îµ¥¿¡ Ç¥½ÃÇÑ´Ù.
				pbk.extJS.loadingLayer.indicatorLayer.setVisible(true);
				pbk.extJS.loadingLayer.indicatorLayer.center();
			}
            var url = eval('(' + res.responseText + ')');			
			
			pbk.extJS.loadingLayer.close();	
			// 20081008 ¿À·û°æ ·Î±×ÀÎ¿¡¼­ ´Ù½Ã Åä½ºÇÒ ¾×¼Ç ¿©ºÎ¿¡ µû¶ó ºÐ±â
			if (viaLoginYN == 'N') {
				// 20090405 
				pbk.extJS.targetMask.show('forwardingMask',pbk.PAGE_WRAP,'#FFFFFF',.5);					
				pbk.extJS.loadingLayer.close();				
				if (parent[pbk.MAIN_FRAME_ID]) {
					parent[pbk.MAIN_FRAME_ID].location = pbk.APPLICATION_CONTEXT_ROOT + url;
				}
				else if (pbk.CONTENT_WRAP == 'MSN_CONTENT'){
                    location.href = pbk.APPLICATION_CONTEXT_ROOT + url;
                } else {										
					top.location.href = pbk.APPLICATION_CONTEXT_ROOT + url;
				}
			} else {
				// 20081212-1 tiles result ¿©ºÎ¿¡ µû¶ó ºÐ±â 
				if (tilesResultYn =='Y'){
				    // 20090405 
				    pbk.extJS.targetMask.show('forwardingMask',pbk.PAGE_WRAP,'#FFFFFF',.5);						
					if (parent[pbk.MAIN_FRAME_ID]) {
						parent[pbk.MAIN_FRAME_ID].location = pbk.APPLICATION_CONTEXT_ROOT + url;
					}
					else {					
						top.location.href = pbk.APPLICATION_CONTEXT_ROOT + url;
					}					
				} else {					
					pbk.extJS.loadingLayer.close();
					var hanaAjax = new hana.JHanaAjax(pbk.CONTENT_WRAP, false, false);
					hanaAjax.ajaxCommSubmitCallback(url, null,pbk.ajax.refreshLeft);
				}				
			}
		}
	},
	
	/**
	 * ·Î±×ÀÎ°ú °°ÀÌ ÁÂÃø¸Þ´º°¡ °»½ÅµÉ ÇÊ¿ä°¡ ÀÖÀ» ¶§ È£ÃâÇÑ´Ù.
	 */
	refreshLeft : function (boolObj) {
		if (boolObj) {
			// °í°´Á¤º¸ ¾÷µ¥ÀÌÆ® 
			var hanaAjax = new hana.JHanaAjax('custInfoSection', true, false);
			hanaAjax.ajaxCommSubmit('/common/refreshLeftMenuCustInfo.do', null);
		}
		// TODO ±âÅ¸ ¿ÞÂÊ ¸Þ´º Á¤º¸ ¾÷µ¥ÀÌÆ® ÇÒ ºÎºÐÀÌ ÀÖÀ¸¸é ¾÷µ¥ÀÌÆ® ÇÑ´Ù. 
	},	
	
	/**
	 * Json TypeÀ¸·Î ReturnµÈ ErrorData¸¦ °¡°øµÈ ErrorMessage·Î ¸®ÅÏÇÑ´Ù.
	 * @param {String} data responseText µ¥ÀÌÅÍ
	 * @param {boolean} isDebug Ãß°¡Á¤º¸¸¦ ÆÄ½ÌÇÒ°ÍÀÎÁö?
	 * @return errorHash ['main'], ['detail']
	 */
	setErrParsing : function(data,isDebug){
		var _data = data.evalJSON();
		var _isDebug = isDebug;
		_isDebug = false;
		// ¿¡·¯¸Þ¼¼Áö
		var errorContentArr = new Array();
		// »ó¼¼¸Þ¼¼Áö + trace
		var errorDetailArr = new Array();		
		
		var returnMsg = '';
		
		var errorHash = new Hash();

		if (_data && _data.length ) {
			var errorCount = _data.length;
            var errorDetail = '';
            for (var i = 0; i < errorCount; i++) {
                var errorCode = _data[i].errorCode;
				if ('BCOM17302' == errorCode) {
					var errorTitle = '¾Ë¸²'+ hana.JHanaUtils.date.getToday('Y-m-d'); 
					var msg = 'Á¢¼ÓÇÏ½Ã·Á´Â ¾ÆÀÌµð´Â º¸´Ù³ªÀº ¼­ºñ½º Á¦°øÀ» À§ÇØ ±â¾÷¹ðÅ·»ç¿ëÀÚ·Î ÀüÈ¯ÀÌ µÇ¾ú½À´Ï´Ù. <br>È®ÀÎ ¹öÆ°À» Å¬¸¯ÇÏ½Ã¸é ÇÏ³ªÀºÇà ±â¾÷¹ðÅ·À» »ç¿ëÇÏ½Ã´Â È­¸éÀ¸·Î ÀÌµ¿ÇÕ´Ï´Ù.';
					message.confirm (errorTitle, msg, function(e){
						if (e){
							top.location.href = CBK_HOST;
						}
					});
					return false;
				}
                var errorMessage = hana.JHanaUtils.util.replaceAll(_data[i].errorMessage,"\\n","<br/>");
                var errorProgram = _data[i].errorProgram;
                var errorPost = _data[i].errorPost;
				errorGuid = _data[i].guid;
				if (errorGuid == null) {
					errorGuid = '';
				}
				
				var errorProgramPair = '';

                // ¿À·ù»ó¼¼¸Þ½ÃÁö
                var rfncMttr = hana.JHanaUtils.util.replaceAll(_data[i].rfncMttr,"\\n","<br/>");
                // °¢ tier º° ¿À·ù·Î±×µé
                var errorLogs = _data[i].errorLogs;
				
				if (_isDebug && (null != errorProgram && errorProgram != '')) {
					errorProgramPair = errorProgram + ' : '+errorPost +'<br/>';
				} 

                // ³ªÅ¸³¾ ¸Þ¼¼Áö¸¦ ±¸¼ºÇÑ´Ù.
				var errMsg = /**errorCode + ' : ' +**/ errorMessage +'  '+errorProgramPair;

                //»ó¼¼ ¸Þ¼¼Áö Ãß°¡
                //errMsg += "»ó¼¼ ¿À·ù ¸Þ¼¼Áö : " + rfncMttr + '<br/>';
				
				if (null != rfncMttr && rfncMttr != '') {
					errorDetail += 'Á¶Ä¡»çÇ× : '+hana.JHanaUtils.util.replaceAll(rfncMttr,"\\n","<br/>") + '<br/>';					
				}
				if (null != errorLogs && errorLogs != '') {
					//tier º° ¿À·ù ¸Þ¼¼Áö Ãß°¡
					errorDetail += '<font color="black">' + hana.JHanaUtils.util.replaceAll(pbk.ajax.getDetailErrLogMsg(errorLogs),"\\n","<br/>"); + '</font>';
										
				}
				if (null != errorDetail && errorDetail != '') {
					errorDetailArr.push(errorDetail);
				}
                errorContentArr.push(errMsg);
				
            }

		} else {
			// ¾Ë¼ö ¾ø´Â ¿À·ù
			errorContentArr.push('XXXX : ¾Ë¼ö¾ø´Â ¿À·ù À¯ÇüÀÔ´Ï´Ù.');			
		}
		
		// »ó¼¼¿¡·¯¸Þ¼¼Áö 
		var errorDetailContent = '';
		var errorDetailBody = errorDetailArr.join('<br/>');
		if (errorDetailArr != null && errorDetailArr.length > 0) {
			errorDetailContent += errorDetailBody;
		}	
		
		var guidFiled = '';
		if (errorGuid =='') {
			guidFiled = '';
		} else {
			guidFiled = 'GUID : '+errorGuid+'<br/>';
		}
			
		errorHash['main'] = errorContentArr.join('<br/>');
		errorHash['detail'] = errorDetailContent+'<br/>'+guidFiled;	
        return errorHash;
	},
	
	/**
	 * _detailMsg ´Â pbk-extJS.js ¿¡ getBaseStandardErrDialogHTML ¿¡¼­ Á¤ÀÇµÈ DIV ÀÌ´Ù.
	 */
	toggleDetailMsg : function(obj){
		if ($('_detailMsg')) {
			if ($('_detailMsg').style.display == 'none') {
				$('_detailMsg').style.display = 'block';
				obj.src = '/resource/images/common/ico_up3.gif';

            }
			else {
				$('_detailMsg').style.display = 'none';
				obj.src = '/resource/images/common/ico_down3.gif';
            }
            
            //´ÙÀÌ¾ó·Î±× »çÀÌÁî º¯È¯¿¡ µû¸¥ À§Ä¡ Á¶Á¤°ú ÇÔ°Ô shim »çÀÌÁî Àç Á¶Á¤À» À§ÇØ ½ÇÇà
            pbk.extJS.messageBox.dialog.center();
        }
	},

    /**
     * »ó¼¼ ·Î±× ¸Þ¼¼Áö return
     * @param errorLogs
     */
    getDetailErrLogMsg : function(errorLogs){
        var detailErrMsgArr = new Array();

        if( errorLogs && errorLogs.length ){
            for (var i = 0, len = errorLogs.length; i < len; i++) {
                var msgCd = errorLogs[i].msgCd;
                var rspsMsgCtt = errorLogs[i].rspsMsgCtt;

                var errMsg = msgCd + ' : ' + rspsMsgCtt;
                detailErrMsgArr.push(errMsg);
            }
        }

        return detailErrMsgArr.join('<br/>');
    },
	
	/**
	 * Json Å¸ÀÔÀ¸·Î ¸®ÅÏµÈ µ¥ÀÌÅÍ¸¦ ÁöÁ¤ÇÑ ÇÊµå ¼øÀ¸·Î Á¤·ÄÇÏ¿© ¸®ÅÏÇÕ´Ï´Ù.
	 * @param {Object} data Json µ¥ÀÌÅÍ
	 * @param {String} field Á¤·Ä ±âÁØÇÊµå¸í
	 * @return {Object} Á¤·ÄµÈ Json µ¥ÀÌÅÍ
	 */
	jsonSorting: function(data, field){
		for (var i = 0; i < data.length; i++){
			for (var j = i + 1; j < data.length; j++){
				if (eval('data[i].' + field) > eval('data[j].' + field)){
					var changeObj = data[i];
					
					data[i] = data[j];
					data[j] = changeObj;
				}
			}
		}
		
		return data;
	},

		/**
	 * Alert Ã¢À» º¸¿©ÁØ´Ù.
	 * @param {String} errorTitle AlertÃ¢¿¡ º¸¿©ÁÙ Title
	 * @param {String} errorContent AlertÃ¢¿¡ º¸¿©ÁÙ Content
	 * @param {String} errorDetail AlertÃ¢¿¡ º¸¿©ÁÙ »ó¼¼¸Þ¼¼Áö
	 */	
	callMsgBox : function(errorTitle, errorContentHash, detailToggleFunc){
		// TO-DO ¿¡·¯ÆäÀÌÁö°¡ º»¹®ÀÎ °æ¿ì°¡ ÀÖ°í,
		// ½Ã½ºÅÛ ¿¡·¯ÀÎ °æ¿ì º°µµ ÁöÁ¤µÈ DIV ¸¦ ¶ç¿ö ÁØ´Ù. (¿¡·¯¸Þ¼¼Áö°¡ °íÁ¤µÇ¾î ÀÖ´Â °æ¿ì - ¸¶½ºÅÍ¿¡ ÁöÁ¤)
		// Ext.MessageBox ¸¦ ¾µ °æ¿ì´Â ÁöÁ¤µÈ ½ºÅ¸ÀÏÀ» ÀÓÆ÷Æ®ÇÑ´Ù.(¸¶½ºÅÍ¿¡ ÁöÁ¤ )
		var mainMsg;
		var detailMsg;

        if (errorContentHash){
			mainMsg = errorContentHash['main'];
			detailMsg = errorContentHash['detail'];
		}
		if (detailToggleFunc == undefined || null==detailToggleFunc || ''==detailToggleFunc) {
			detailToggleFunc = 'pbk.ajax.toggleDetailMsg(this)';
		} 
		
		var errorTitle = '¿À·ù '+ hana.JHanaUtils.date.getToday('Y-m-d H:i:s'); 
		
 		pbk.extJS.messageBox.errStandardMsgBox({
			title: errorTitle,
			message: mainMsg,
			detailMsg : detailMsg,
			detailFunc : detailToggleFunc, 
			callback: function(e){
				return;
			}
		});			
			
	}
// TO-DO 
//	,
//	
//	/**
//	 * ´õºíÅ¬¸¯ ¹æÁö Æ®·£Àè¼Ç °ü·Ã
//	 */
//	dblClickTran : {
//		
//		/**
//		 * Å¬¸¯¼ö ´©Àû µ¥ÀÌÅÍ
//		 */
//		dblClickCount : 0,
//		
//		/**
//		 * ´õºíÅ¬¸¯ Æ®·£Àè¼Ç ¼³Á¤
//		 */
//		begin : function() {
//			pbk.ajax.dblClickTran.dblClickCount++;
//		},
//		
//		/**
//		 * ´õºíÅ¬¸¯ Æ®·£Àè¼Ç ÇØÁ¦
//		 */
//		end : function() {
//			pbk.ajax.dblClickTran.dblClickCount = 0;
//		},
//		
//		/**
//		 * ´õºíÅ¬¸¯ ¿©ºÎ
//		 */
//		isDblClick : function() {
//			return !(pbk.ajax.dblClickTran.dblClickCount == 1);
//		}
//	}
}
/**
 * End of namespace
 */

Ext.BLANK_IMAGE_URL = pbk.APPLICATION_CONTEXT_ROOT+"/resource/js/ext-2.0/resources/images/default/s.gif";
Event.observe(window, 'load', function(){
    pbk.initMoving($('mymenu'));

    // initial mask hide..
    try{
        if($('initialMask') || $('initialLoadingLayer')) {
			// 20081006 ¿À·û°æ ¼öÁ¤
			$('initialMask','initialLoadingLayer').invoke('hide');
		} 
		//alert('aaa');
        //pbk.extJS.loadingLayer.cache();
    }finally{
        //¸¸¾à ÇØÁ¦ÇØ¾ßÇÒ ÀÚ¿øÀÌ ÀÖÀ¸¸é ¿©±â¼­ Ã³¸®..

    }
});

/**
 * onbeforeunload ÀÌº¥Æ® ¹ß»ý ½ÃÁ¡.
 *
 *    1.  Close the current browser window.
 *    2.  Navigate to another location by entering a new address or selecting a Favorite.
 *    3.  Click the Back, Forward, Refresh, or Home button.
 *    4.  Click on an anchor that refers the browser to another Web page.
 *    5.  Invoke the anchor.click method.
 *    6.  Invoke the document.write method.
 *    7.  Invoke the document.open method.
 *    8.  Invoke the document.close method.
 *    9.  Invoke the window.close method.
 *    10. Invoke the window.open method, providing the possible value _self for the window name.
 *    11. Invoke the window.navigate or NavigateAndFind method.
 *    12. Invoke the location.replace method.
 *    13. Invoke the location.reload method.
 *    14. Specify a new value for the location.href property.
 *    15. Submit a form to the address specified in the ACTION attribute via the INPUT type=submit control, or invoke the form.submit method.
 *
 * ÀÌ Áß anchor tag ÀÎ °æ¿ì´Â pbk.isClickATag ¸¦ °ªÀ» ÅëÇØ anchor click ÀÎ°æ¿ì Ã¼Å©ÇØ¼­  onbeforeunload ½Ã loading ¹Ù°¡ ¾È³ª¿À°Ô ¼³Á¤ÇÔ.
 */
function actionBeforeUnLoad(e){
//    alert("call!");
    pbk.extJS.loadingLayer.show();
}

/**
 * body ¿¡ onbeforeunload ÀÌº¥Æ® ºÎ¿©
 */
function setBeforeunloadEvent(){
    document.body.onbeforeunload = actionBeforeUnLoad;
}

/**
 * body ¿¡ ºÎ¿©µÈ onbeforeunload ÀÌº¥Æ® »èÁ¦
 */
function removeBeforeunloadEvent(){
    document.body.onbeforeunload = null;
}
