﻿/*********************************************************************************************************************
    *  화   일   명  : Common.js
    *  버        젼  : 1.0
    *  설        명  : JavaScript 공통 함수
***************************************************************************************************************************

    - Message()                          = [김대현] 해당 Message 리턴
    - $(objectName)                      = [김대현] 해당 Object 리턴
    - MakeHttpObject()                   = [김대현] XML Object 생성
    - post_URL(_url)                     = [김대현] post 방식 url 이동
    - onlyNum()                          = [김대현] 숫자만 입력
    - onlyNumComma()                     = [김대현] 숫자+콤파만 입력
    - onlyOneComma(obj)                  = [김대현] 콤마가 1개 초과인지 체크
    - onlyNumDash()                      = [김대현] 숫자+대쉬만 입력
    - onlyOneDash(obj)                   = [김대현] 대쉬가 1개 초과인지 체크
    - onlyNumDot()                       = [김광호] 숫자+마침만 입력
    - rpad(str, chr, len)                = [김대현] 자리수 포맷에 맞게 str 오른쪽에 chr로 채워서 완성
    - lpad(str, chr, len)                = [김대현] 자리수 포맷에 맞게 str 왼쪽에 chr로 채워서 완성
    - String.prototype.trim = function() = [김대현] 앞,뒤 공백 제거
    - String.prototype.isNumeric = function() = [김대현] 숫자여부 체크
    - isAlphaNumeric(s)                  = [김대현] 숫자나 알파벳인 경우만 true
    - isAlphaNumericMark(s)              = [김대현] 숫자나 알파벳, 특수기호인 경우만 true
    - onFocus_date(obj)                  = [김대현] focus 얻을 경우 날짜포맷 삭제
    - onBlur_date(obj)                   = [김대현] focus 잃을 경우 날짜포맷 추가
    - onBlur_month(obj)                  = [김대현] focus 잃을 경우 년월포맷 추가
    - onBlur_year(obj)                   = [김대현] focus 잃을 경우 년도 셋팅
    - onBlur_time(obj)                   = [김대현] focus 잃을 경우 시간 셋팅
    - isMaxLenOver(comStr,maxLen)        = [김대현] String길이 초과여부[한글,영문] true:넘음/false:안넘음
    - onBlur_num(obj)                    = [김대현] focus 잃을 경우 콤마 추가
    - onFocus_num(obj)                   = [김대현] focus 얻을 경우 콤마 삭제
    - isValidSmsList(smsList)            = [김대현] SMSList Validation Check
    - isValidEmailList(emailList)        = [김대현] MailList Validation Check
    - isValidEmail(obj)                  = [김대현] Mail Validation Check
    - isValidFormat(email,format)        = [김대현] Format Check
    - flashWrite(url, w, h, id, bg, win) = [김대현] flashWrite(파일경로, 가로, 세로, 아이디, 배경색, 윈도우모드)
    - comChgCntry(obj,targetObj)         = [김대현] 국가코드 변경시 시도코드 조회
    - comChgOccup(obj,targetObj,lvl,arg) = [김대현] 직업코드 변경시 직업코드 조회(lvl:차수)
    - getAjaxArr(sql,colCnt)             = [김대현] AJAX Query 실행(쿼리, 컬럼갯수) return : array[행인덱스][열인덱스]
    - getAuthYN(type)                    = [김대현] 버튼권한 체크
    - isEmpty(str)                       = [김대현] 빈값 체크
    - addCart(w)                         = [김대현] 카트 파일추가(FileHelper.asp)
    - downCart()                         = [김대현] 카트 파일다운로드(FileHelper.asp)
    - delCart()                          = [김대현] 카트 파일삭제(FileHelper.asp)
    - openPopMessage(sql)                = [김대현] 메시지 팝업 Open
    - openNameWindow(w,	h, Url, Nm,	Opt) = [김광호] 인스턴스 이름 있는 팝업열기.(가로, 세로, 파일경로, 팝업창이름, 옵션)
    - difftime(date1, date2)             = [조성익] date2 - date1 을 업무시간 기준으로 분단위 Return
    - getRealOffsetTop(obj)              = [김대현] Object의 Top 위치
    - getRealOffsetLeft(obj)             = [김대현] Object의 Left 위치
    - procLogout()                       = [김대현] 로그아웃 처리(MENU.asp)
    - chgQuickMenu(obj)                  = [김대현] 퀵메뉴 변경(MENU.asp)
    - menuPopList()                      = [김대현] 내고객목록 팝업(MENU.asp)
    - viewHelp()                         = [조성익] 도움말보기
    - viewCustDetail(custNo)             = [조성익] 개인고객상세조회
    - onlyAlpha(s)                       = [김광호] 알파벳인 경우만 true
    - changeTr(bgColor,clickColor)       = [조성익] 마우스 오버/아웃/클릭 시 Row Color Setting
    - ChangeTextColor(a_obj,a_color)     = [조성익] 클릭, 마우스오버/아웃시 Color Setting
    - viewPhoto(param1,param2)           = [조성익] 원본사진보기(암호화된파일경로, 암호화된파일명)
    - changeLoginId()                    = [조성익] 관리자 로그인 변경
    - imgResize(obj,w,h,maxW,maxH)       = [조성익] 이미지 Display 리사이즈(w:max width, h:max height)
    - popAddress(objIdx)                 = [최진주] 주소팝업
    - popCompare(mCustNo,fCustNo)        = [조성익] 고객프로필비교팝업
    - popMeetMng(gb,mCustNo,mMtSeq,fCustNo,fMtSeq) = [조성익] 미팅관리팝업
    - Com_AJAX(oObj, sSQL, sColNm)       = [이윤환]
	- $									 = [김광호] 엘리먼트객체
	- getPageSize()						 = [김광호] 윈도우사이즈
	- getPageScroll()					 = [김광호] 스크롤사이즈
	- getWindowWidth()					 = [김광호]
	- getWindowHeight()					 = [김광호]
	- hideSelect()						 = [김광호] 페이지 내 모든 select 엘리먼트 hidden 처리
	- createInputElement(id,type,name,value) = [이윤환] createElement
	- removeInputChild(obj)             = [이윤환] removeChild(obj는 name속성을 갖는 oject만 가능)
**************************************************************************************************************************/

//document.onselectstart = function() {return false}
//document.oncontextmenu = function() {return false}
//
//document.onmousemove=mouseMove;
//document.onmousedown=mouseMove;
//document.onmouseup  =mouseMove;

// 브라우저 정의
var IE=(document.all)?1:0;
var IE6=(navigator.userAgent.indexOf("MSIE 6.")>=0 && document.all);
var SAF=navigator.userAgent.indexOf("Safari")>=0;
var NS=navigator.userAgent.indexOf('Netscape')>=0;
var OP=navigator.userAgent.indexOf('Opera')>=0;
var CR=navigator.userAgent.indexOf('Chrome')>=0;
var FF=navigator.userAgent.indexOf('Firefox')>=0;


//메시지
var xml = new ActiveXObject("Microsoft.XMLDOM");
xml.async = false;
xml.load("/include/Messages.xml");

var Message = new Message();

codeNodes = xml.getElementsByTagName("code")
msgNodes  = xml.getElementsByTagName("msg")

function Message() {
    var str = "";
    this.getMessage = function(id) {
        for(var i=0; i<codeNodes.length; i++) {
            if(codeNodes.item(i).text == id) {
                str = msgNodes.item(i).text;
                return str.replace(/\:\:/gi, "\n\n");
            }
        }
        return "해당 Message Code가 존재하지 않습니다!";
    }
}

function $(objectName) {
	return document.getElementById(objectName);
}

function MakeHttpObject() {
	  try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}     //IE6
	  try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {}  //IE5.5
	  try { return new XMLHttpRequest(  ); } catch(e) {}                   //IE7, Firefox

	  alert(Message.getMessage("MSG00058"));

	  return null;
}

//post 방식 url 이동
function post_URL(_url) {
    if ((typeof(opener) == "object") && (typeof(opener.document) == "object"))
    {
        opener.parent.location.href = _url;
        self.close();
    }
    else
        parent.location.href = _url;
}

//숫자만 입력
function onlyNum()
{
    if(event.keyCode < 48 || event.keyCode > 57)
        event.returnValue = false;
}

//숫자+콤파만 입력
function onlyNumComma() {
    if((event.keyCode < 48 && event.keyCode != 46) || event.keyCode > 57)
        event.returnValue = false;
}

//콤마가 1개 초과인지 체크
function onlyOneComma(obj) {
    var commaCnt = 0;

    for(var i=0; i<obj.value.length; i++) {
        if(obj.value.charAt(i) == ".")
            commaCnt++;
        if(commaCnt > 1) {
            alert(Message.getMessage("MSG00059"));
            obj.focus();
            return;
        }
    }
}

//숫자+대쉬만 입력
function onlyNumDash() {
    if((event.keyCode < 48 || event.keyCode > 57) && event.keyCode != 45)
        event.returnValue = false;
}

//숫자+마침만 입력
function onlyNumDot() {
    if((event.keyCode < 48 || event.keyCode > 57) && event.keyCode != 46)
        event.returnValue = false;
}

//대쉬가 1개 초과인지 체크
function onlyOneDash(obj) {
    var dashCnt = 0;

    for(var i=0; i<obj.value.length; i++) {
        if(obj.value.charAt(i) == "-")
            dashCnt++;
        if(dashCnt > 1) {
            alert(Message.getMessage("MSG00060"));
            obj.focus();
            return;
        }
    }
}

//자리수 포맷에 맞게 str 오른쪽에 chr로 채워서 완성
function rpad(str, chr, len)
{
    var str_len = str.length;
    for (var i = 0; i < len-str_len; i++)
    {
        str = str + chr;
    }

    return str;
}

//자리수 포맷에 맞게 str 왼쪽에 chr로 채워서 완성
function lpad(str, chr, len)
{
    var str_len = str.length;
    for (var i = 0; i < len-str_len; i++)
    {
        str = chr + str;
    }

    return str;
}

//앞,뒤 공백 제거
String.prototype.trim = function() {
    return this.replace(/(^\s*)|(\s*$)/g, "");
}

String.prototype.isNumeric = function() {
    return /^\d+$/.test(this) ? true : false;
}

//알파벳인 경우만 true
function onlyAlpha()
{
    if(event.keyCode >= 97 && event.keyCode <= 122)
    {
        event.returnValue = true;
    }
    else if(event.keyCode >= 65 && event.keyCode <= 90)
    {
        event.returnValue = true;
    }
    else
    {
        event.returnValue = false;
    }
}

//숫자나 알파벳인 경우만 true
function isAlphaNumeric(s)
{
	if (s.length > 0) {
		sNum = s;
		for (i=0; i<sNum.length; i++) {
			if (!(((sNum.charAt(i) >= 'A' && sNum.charAt(i) <= 'Z') ||
					sNum.charAt(i) >= 'a' && sNum.charAt(i) <= 'z') ||
					(sNum.charAt(i) >= '0' && sNum.charAt(i) <= '9')) ) {
				return false;
			}
		}
		return true;
	} else {
		return false;
	}
}

//숫자나 알파벳, 특수기호인 경우만 true
function isAlphaNumericMark(s)
{
	var compareStr = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ~!@#$%^&*-_+";

	for(var i=0; i<s.length; i++) {
		if(compareStr.indexOf(s.substring(i,i+1)) == -1) {
			return false;
		}
	}
	return true;
}

//focus 얻을 경우 날짜포맷 삭제
function onFocus_date(obj) {
    obj.value = obj.value.replace(/[^0-9]/g,"");
    obj.select();
}

//focus 잃을 경우 날짜포맷 추가
function onBlur_date(obj) {
    var today = new Date();
    var year  = today.getYear() + "";
    var month = (today.getMonth()+1) + "";
    var pattern = /(-?[0-9]+)([0-9]{2})([0-9]{2})/;

    switch(obj.value.length) {
        case 1 : obj.value = year + (month.length < 2 ? "0"+month : month) + "0" + obj.value;
                 break;
        case 2 : obj.value = year + (month.length < 2 ? "0"+month : month) + obj.value;
                 break;
        case 3 : obj.value = year + "0" + obj.value;
                 break;
        case 4 : obj.value = year + obj.value;
                 break;
        case 5 : obj.value = year.substring(0,3) + obj.value;
                 break;
        case 6 : obj.value = year.substring(0,2) + obj.value;
                 break;
        case 7 : obj.value = year.substring(0,1) + obj.value;
    }

    if(parseInt(obj.value.substring(4,6),10) < 1 || parseInt(obj.value.substring(4,6),10) > 12) {
        alert(Message.getMessage("MSG00061"));
        obj.focus();
        return;
    }

    var yearValue = obj.value.substring(0,4);
    var maxDay = 31;
    switch(parseInt(obj.value.substring(4,6),10)) {
        case 4,6,9,11 : maxDay = 30;
                        break;
        case 2        : if((yearValue%4 == 0 && yearValue%100 != 0) || yearValue%400 == 0)
                            maxDay = 29;
                        else
                            maxDay = 28;
    }

    if(parseInt(obj.value.substring(6,8),10) < 1 || parseInt(obj.value.substring(6,8),10) > maxDay) {
        alert(Message.getMessage("MSG00062") + "(" + maxDay + ")");
        obj.focus();
        return;
    }

    while(pattern.test(obj.value))
    obj.value = obj.value.replace(pattern,"$1-$2-$3");
}

//focus 잃을 경우 년월포맷 추가
function onBlur_month(obj) {
    var today = new Date();
    var year  = today.getYear() + "";
    var month = (today.getMonth()+1) + "";
    var pattern = /([0-9]{4})([0-9]{2})/;

    switch(obj.value.length) {
        case 1 : obj.value = year + "0" + obj.value;
                 break;
        case 2 : obj.value = year + obj.value;
                 break;
        case 3 : obj.value = year.substring(0,3) + obj.value;
                 break;
        case 4 : obj.value = year.substring(0,2) + obj.value;
                 break;
        case 5 : obj.value = year.substring(0,1) + obj.value;
    }

    if(obj.value != "" && obj.value.replace(/[^0-9]/g,"").length != 6) {
        obj.value = "";
        obj.focus();
        alert(Message.getMessage("MSG00063"));
        return;
    }

    if(parseInt(obj.value.substring(4,6),10) < 1 || parseInt(obj.value.substring(4,6),10) > 12) {
        alert(Message.getMessage("MSG00061"));
        obj.value = "";
        obj.focus();
        return;
    }

    while(pattern.test(obj.value))
        obj.value = obj.value.replace(pattern,"$1-$2");
}

//focus 잃을 경우 년도 셋팅
function onBlur_year(obj) {
    var today = new Date();
    var year  = today.getYear() + "";

    switch(obj.value.length) {
        case 1 : obj.value = year.substring(0,3) + obj.value;
                 break;
        case 2 : obj.value = year.substring(0,2) + obj.value;
                 break;
        case 3 : obj.value = year.substring(0,1) + obj.value;
    }
}

//focus 잃을 경우 시간 셋팅
function onBlur_time(obj) {
    var pattern = /([0-9]{2})([0-9]{2})/;

    switch(obj.value.length) {
        case 1 : obj.value = "000" + obj.value;
                 break;
        case 2 : obj.value = "00" + obj.value;
                 break;
        case 3 : obj.value = "0" + obj.value;
    }

    if(parseInt(obj.value.substring(0,2),10) >= 24) {
        //alert(Message.getMessage("MSG00064"));
        obj.value = "";
        obj.focus();
        return;
    }
    if(parseInt(obj.value.substring(2,4),10) >= 60) {
        //alert(Message.getMessage("MSG00065"));
        obj.value = "";
        obj.focus();
        return;
    }

    while(pattern.test(obj.value))
        obj.value = obj.value.replace(pattern,"$1:$2");
}

//String길이 초과여부[한글,영문] true:넘음/false:안넘음
function isMaxLenOver(comStr,maxLen) {
    var totLen = 0;

    for(var i=0; i<comStr.length; i++) {
        if(escape(comStr.charAt(i)).length > 4)
            totLen += 2;
        else
            totLen++;
    }

    if(totLen > maxLen)
        return true;
    else
        return false;
}

//focus 잃을 경우 콤마 추가
function onBlur_num(obj) {
    if(obj.value.indexOf(".") >= 0) {
        var pattern_1 = /(-?[0-9]+)([0-9]{3})/;
        var pattern_2 = /([0-9]{3})([0-9]+)/;

        var val_1 = obj.value.substring(0,obj.value.indexOf("."));
        var val_2 = obj.value.substring(obj.value.indexOf(".")+1,obj.value.length);

        while(pattern_1.test(val_1))
            val_1 = val_1.replace(pattern_1,"$1,$2");
        while(pattern_2.test(val_2))
            val_2 = val_2.replace(pattern_2,"$1,$2");

        obj.value = val_1 + "." + val_2;
    }else {
        var pattern = /(-?[0-9]+)([0-9]{3})/;
        while(pattern.test(obj.value))
            obj.value = obj.value.replace(pattern,"$1,$2");
    }
}

//focus 얻을 경우 콤마 삭제
function onFocus_num(obj) {
  obj.value = obj.value.replace(/[^- && ^. && ^0-9]/g,"");
}


//받은 숫자의 컴마를 삭제 return
function CommaReplace(oVal) {
	var ReVal ;
	ReVal = oVal.replace(/[^- && ^. && ^0-9]/g,"");
	return ReVal ;
}


//SMSList Validation Check
function isValidSmsList(smsList)  {
    var noArr = smsList.split("::");

    for(i=0; i<noArr.length-1; i++) {
        var fstNo = noArr[i].substring(0,3);
        if(fstNo != "010" && fstNo != "011" && fstNo != "016" && fstNo != "017" && fstNo != "018" && fstNo != "019") {
            return false;
        }
        if(noArr[i].substring(3,4) == "-") {
            var telNo = noArr[i].substring(4);

            var midNo = telNo.substring(0,telNo.indexOf("-"));
            if(midNo.length < 3 || midNo.length > 4)
                return false;
            midNo = midNo.replace(/[^0-9]/g,"");
            if(midNo.length < 3 || midNo.length > 4)
                return false;

            var lstNo = telNo.substring(telNo.indexOf("-")+1);
            if(lstNo.length != 4)
                return false;
            lstNo = lstNo.replace(/[^0-9]/g,"");
            if(lstNo.length != 4)
                return false;
        }else {
            if(noArr[i].indexOf("-") >= 0)
                return false;

            var fulNo = noArr[i];
            if(fulNo.length != 10 && fulNo.length != 11)
                return false;
            fulNo = fulNo.replace(/[^0-9]/g,"");
            if(fulNo.length != 10 && fulNo.length != 11)
                return false;
        }
    }

    return true;
}

//MailList Validation Check
function isValidEmailList(emailList) {
    var format = /^(\S+)@(\S+)\.([A-Za-z]+)$/;
    var emailArr = emailList.split("::");

    for(i=0; i<emailArr.length; i++) {
        if(isEmpty(emailArr[i].trim()) == false) {
            if(isValidFormat(emailArr[i].trim(),format) == false)
                return false;
        }
    }

    return true;
}

//Mail Validation Check
function isValidEmail(obj) {
    var format = /^(\S+)@(\S+)\.([A-Za-z]+)$/;
alert(obj.value);
    if(obj.value.trim() != "") {
        if(isValidFormat(obj.value,format) == false) {
            //alert(Message.getMessage("MSG00066"));
            obj.select();
            obj.focus();
        }
    }

    return true;
}

//Format Check
function isValidFormat(email,format) {
    if (email.search(format) != -1) {
        return true;
    }
    return false;
}

//flashWrite(파일경로, 가로, 세로, 아이디, 배경색, 윈도우모드)
function flashWrite(url, w, h, id, bg, win){
    // 플래시 코드 정의
    var flashStr=
         "<object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0' width='"+w+"' height='"+h+"' id='"+id+"' align='middle'>"+
         "<param name='movie' value='"+url+"' />"+
         "<param name='wmode' value='"+win+"' />"+
         "<param name='menu' value='false' />"+
         "<param name='quality' value='high' />"+
         "<param name='bgcolor' value='"+bg+"' />"+
         "<embed src='"+url+"' wmode='"+win+"' menu='false' quality='high' bgcolor='"+bg+"' width='"+w+"' height='"+h+"' name='"+id+"' align='middle' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' />"+
         "</object>";

    // 플래시 코드 출력
    document.write(flashStr);
}

//국가코드 변경시 시도코드 조회
function comChgCntry(obj,targetObj) {
    if(obj.value == "") {
        $(targetObj).options.length = 0;
        $(targetObj).add(new Option("",""));
    }else {
        var url    = "/common/HERA010101008_00S.asp";
        var params = "cntry_cd=" + escape(obj.value);
        url += "?" + params;

		var objHTTP = MakeHttpObject();
		objHTTP.open("GET", url, false);
		objHTTP.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

        objHTTP.onreadystatechange = function() {
            if(objHTTP.readyState == 4) {
                if(objHTTP.status == 200) {
                    var records = objHTTP.responseXML.documentElement.selectNodes("//ROOT/RECORD");
                    if(records.length > 0) {
                        $(targetObj).options.length = 0;
                        $(targetObj).add(new Option(":::: 선택 ::::",""));

                        for(var i=0; i<records.length; i++) {
                            var opt = new Option(records[i].selectSingleNode("SIDO_NM").text,records[i].selectSingleNode("SIDO_CD").text);
                            opt.title = records[i].selectSingleNode("SIDO_NM").text;
                            $(targetObj).add(opt);
                        }
                    }
                }
            }
        }

		objHTTP.send(null);
    }
}

//직업코드 변경시 직업코드 조회
function comChgOccup(obj,targetObj,lvl,arg) {
    $(targetObj).options.length = 0;
    $(targetObj).add(new Option(":::전체:::","ALL"));

    if (obj.value != "ALL") {
        var url    = "/common/HERA010101011_00S.asp";
        var params = "occup_cd1=" + obj.value + "&occup_cd2=" + arg + "&occup_lvl=" + lvl;
        url += "?" + params;

		var objHTTP = MakeHttpObject();
		objHTTP.open("GET", url, false);
		objHTTP.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

        objHTTP.onreadystatechange = function() {
            if(objHTTP.readyState == 4) {
                if(objHTTP.status == 200) {
                    var records = objHTTP.responseXML.documentElement.selectNodes("//ROOT/RECORD");
                    if(records.length > 0) {
                        for(var i=0; i<records.length; i++)
                            $(targetObj).add(new Option(records[i].selectSingleNode("OCCUP_NM").text,records[i].selectSingleNode("OCCUP_CD").text));
                    }
                }
            }
        }
		objHTTP.send(null);
    }

    if (lvl == "2") {
        targetObj = "sel_occup_cd3";
        $(targetObj).options.length = 0;
        $(targetObj).add(new Option(":::전체:::","ALL"));
    }
}

//AJAX Query 실행
function getAjaxArr(sql,colCnt) {
    var returnArr = new Array();

    //'+' 기호는 제대로 넘어가지 못해서 나중에 받아서 다시 Replace
    sql = sql.replace(/\+/gi,"{PLUS}");
    //'·' 기호는 제대로 넘어가지 못해서 나중에 받아서 다시 Replace
    sql = sql.replace(/\·/gi,"{DOT}");

    var url    = "/common/HERA010101007_00S.asp";
    var params = "sql=" + escape(sql) + "&colCnt=" + escape(colCnt);

	var objHTTP = MakeHttpObject();
	objHTTP.open("POST", url, false);
	objHTTP.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

    objHTTP.onreadystatechange = function() {
        if(objHTTP.readyState == 4) {
            if(objHTTP.status == 200) {
                var records = objHTTP.responseXML.documentElement.selectNodes("//ROOT/RECORD");
                if(records.length > 0) {
                    for(var i=0; i<records.length; i++) {
                        returnArr[i] = new Array();
                        for(var j=0; j<colCnt; j++) {
                            returnArr[i][j] = records[i].selectSingleNode("COL_"+j).text;
                        }
                    }
                }
            }
        }
    }

	objHTTP.send(params);

	return returnArr;
}

//버튼 권한 체크
function getAuthYN(type) {
    if(type == null)
        type = "";

    switch(type) {
        case "ACSS"  : return this.js_vg_acss_auth_yn;

        case "INPUT" : return this.js_vg_input_auth_yn;

        case "CHG"   : return this.js_vg_chg_auth_yn;

        case "DEL"   : return this.js_vg_del_auth_yn;

        case ""      : return "Y";

        default      : //alert(Message.getMessage("MSG00067"));
                       return "N";
    }
}

//빈값 체크
function isEmpty(str) {
    if(str == null || str.trim() == "")
        return true;
    return false;
}

//카트 파일추가
function addCart(w) {
    var fileTtlArr = document.getElementsByName("txt_cm_file_ttl");
    var fileArr    = document.getElementsByName("txt_cm_add_file");
    var tdArr      = document.getElementsByName("td_cm_file");

    if(fileArr[fileArr.length-1].value != "") {
        tdArr[tdArr.length-1].style.display = "none";

        var sel_cm_file_cart = document.getElementsByName("sel_cm_file_cart");
        if(fileTtlArr.length == 0)
            sel_cm_file_cart[0].add(new Option(fileArr[fileArr.length-1].value,"NEW::"+fileArr[fileArr.length-1].value));
        else
            sel_cm_file_cart[0].add(new Option("["+fileTtlArr[fileTtlArr.length-1].value+"]"+fileArr[fileArr.length-1].value,"NEW::"+fileArr[fileArr.length-1].value+"::"+fileTtlArr[fileTtlArr.length-1].value));


        if(tbl_cm_file_list.style.marginTop == "") {
            tbl_cm_file_list.style.marginTop = -1;
        }else {
            tbl_cm_file_list.style.marginTop = tbl_cm_file_list.style.marginTop.substring(0,tbl_cm_file_list.style.marginTop.indexOf("px"))-1;
        }

        var newRow = tbl_cm_file_list.insertRow();

        var newCel = newRow.insertCell();
        newCel.id  = "td_cm_file";
        if(fileTtlArr.length == 0)
            newCel.innerHTML = "<input type='file' name='txt_cm_add_file' class='input' style='width:" + w + ";'> <a href='javascript:addCart(" + w + ");'><img src='/img/btn_add.gif' align='absmiddle' onFocus='this.blur()'></a>"
        else
            newCel.innerHTML = "<input type='text' name='txt_cm_file_ttl' class='input' style='width:100; ime-mode:active;'> <input type='file' name='txt_cm_add_file' class='input' style='width:" + w + ";'> <a href='javascript:addCart(" + w + ");'><img src='/img/btn_add.gif' align='absmiddle' onFocus='this.blur()'></a>"

        document.recalc();
    }
}

//카트 파일다운로드
function downCart() {
    var sel_cm_file_cart = document.getElementsByName("sel_cm_file_cart");

    if(sel_cm_file_cart[0].value.trim() == "") {
        //alert(Message.getMessage("MSG00068"));
        return;
    }

    var fileArr  = sel_cm_file_cart[0].value.trim().split("::");
    var fileGbn  = fileArr[0];
    var filePath = fileArr[1] + "/" + fileArr[2];
    var fileNm   = fileArr[3];

    if(fileGbn == "NEW") {
        //alert(Message.getMessage("MSG00069"));
        return;
    }

    //'+' 기호는 제대로 넘어가지 못해서 나중에 받아서 다시 Replace
    filePath = filePath.replace(/\+/gi,"{PLUS}");
    fileNm   = fileNm.replace(/\+/gi,"{PLUS}");

    var f = document.forms[0];

    f.method = "post";
    f.target = "_self";
    f.action = "/common/HERA010101010_00S.asp?filePath=" + filePath + "&fileNm=" + fileNm;
    f.submit();
}

//카트 파일삭제
function delCart() {
    var sel_cm_file_cart = document.getElementsByName("sel_cm_file_cart");
    var sel_cm_del_file_cart = document.getElementsByName("sel_cm_del_file_cart");

    if(sel_cm_file_cart[0].value.trim() == "") {
        //alert(Message.getMessage("MSG00068"));
        return;
    }

    var opt = new Option("",sel_cm_file_cart[0].value.trim());
    opt.selected = true;
    sel_cm_del_file_cart[0].add(opt);

    sel_cm_file_cart[0].remove(sel_cm_file_cart[0].selectedIndex);
}

//메시지 팝업 Open
function openPopMessage(sql) {
    var f = document.forms[0];

    var top  = screen.height/2 - 300/2
    var left = screen.width/2 - 400/2
    var sFeatures = "top=" + top + ",left=" + left + ",width=400,height=300,scrollbars=no,menubar=no,status=no,resizable=no";

    if (document.getElementsByName("txt_openPopMessageSQL").length < 1)
    {
        obj = document.createElement("INPUT");
        f.appendChild(obj);
        obj.outerHTML = "<input type='hidden' name='txt_openPopMessageSQL'>";
    }
    f.txt_openPopMessageSQL.value = sql.replace(/\+/gi,"{PLUS}");

	window.open("","popMessage",sFeatures);

	f.method = "post";
	f.target = "popMessage";
	f.action = "/common/HERA010102021_00P.asp";
	f.submit();
}

//인스턴스이름 있는 팝업열기.
function openNameWindow(vWidth,	vHeight, vUrl, vName,	vOpt)	{
	var	mdWindow = null;
	var	x	=	(screen.width	-	vWidth)/2;
	var	y	=	(screen.height - vHeight)/2;
	var	opt;
	if (vOpt ==	"" ||	vOpt ==	null)	vOpt = 0;
	opt	=			"width=" + vWidth	+	",height=" + vHeight;
	opt	=	opt	+	",scrollbars=" + vOpt	+	",toolbar=0,menubars=0,locationbar=0,historybar=0,statusbar=0";
	opt	=	opt	+	",outerWidth=" + vWidth	+	",outerHeight="	+	vHeight	+	",resizable=0";
	opt	=	opt	+	",left=" + x + ",top=" + y;
	opt	=	opt	+	",channelmode=no,	titlebar=no";
	var	mdWindow = window.open(vUrl, vName,	opt, false);
	if(!mdWindow){
		//alert("브라우저에서 팝업차단을 해제해주세요.");
		return false;
	}
	mdWindow.focus();
}

// date2 - date1 을 업무시간 기준으로 분단위 Return
function difftime(date1, date2)
{
    //date1 = "200802060910";
    //date2 = "200803071800";

    var min_cnt = "";    //분
    var min_cnt1 = 0;
    var min_cnt2 = 0;
    var day_cnt = 0;
    var tmp_dt;
    var day = 1000 * 60 * 60 * 24;

    var year1  = date1.substr(0,4);
    var month1 = date1.substr(4,2);
    var day1   = date1.substr(6,2);
    var hour1  = date1.substr(8,2);
    var min1   = date1.substr(10,2);

    var sDate1 = new Date(year1,month1,day1,"00","00");

    var year2  = date2.substr(0,4);
    var month2 = date2.substr(4,2);
    var day2   = date2.substr(6,2);
    var hour2  = date2.substr(8,2);
    var min2   = date2.substr(10,2);

    var sDate2 = new Date(year2,month2,day2,"00","00");

    day_cnt = parseInt((sDate2-sDate1) / day, 10);

    if (day_cnt == 0)
    {
        sDate2 = new Date(year2,month2,day2,hour2,min2);
        sDate1 = new Date(year1,month1,day1,hour1,min1);
        min_cnt = parseInt((sDate2 - sDate1)/1000/60) + "";
    }
    else if (day_cnt > 0)
    {
        sDate2 = new Date(year2,month2,day2,hour2,min2);
        tmp_dt = new Date(year2,month2,day2,"09","00");
        min_cnt1 = parseInt((sDate2 - tmp_dt)/1000/60);
        if (min_cnt1 < 0)
            min_cnt1 = 0;

        sDate1 = new Date(year1,month1,day1,hour1,min1);
        tmp_dt = new Date(year1,month1,day1,"18","00");
        min_cnt2 = parseInt((tmp_dt - sDate1)/1000/60);
        if (min_cnt2 < 0)
            min_cnt2 = 0;

        min_cnt = (day_cnt-1) * 9 * 60 + min_cnt1 + min_cnt2 + "";
    }
    else
        min_cnt = "ERROR"

    return min_cnt;
}

//Object의 Top 위치
function getRealOffsetTop(obj)  { return obj ? obj.offsetTop + getRealOffsetTop(obj.offsetParent) : 0; }

//Object의 Left 위치
function getRealOffsetLeft(obj) { return obj ? obj.offsetLeft + getRealOffsetLeft(obj.offsetParent) : 0; }

//로그아웃 처리(MENU.asp)
function procLogout() {
    var f = document.forms[0];

    f.method = "post";
    f.target = "_self";
    f.action = "/common/HERA010101001_02S.asp";
    f.submit();
}

//퀵메뉴 변경(MENU.asp)
function chgQuickMenu(obj) {
    if(obj.value != "") {
        var f = document.forms[0];

        f.method = "post";
        f.target = "_self";
        f.action = obj.value;
        f.submit();
    }
}

// 내고객목록 팝업(MENU.asp)
function menuPopList() {
    var f = document.forms[0];
    var formType = f.encoding;
    var top    = 0;
    var left   = screen.width - 300;
    var width  = 340;
    var height = screen.height;

    var sFeatures = "top=" + top + ",left=" + left + ",width=" + width + ",height=" + height + ",scrollbars=no,menubar=no,status=no,resizable=yes";

	window.open("","popMyCust",sFeatures);

    f.encoding = "application/x-www-form-urlencoded";
	f.method = "post";
	f.target = "popMyCust";
	f.action = "/common/HERA010102015_00P.asp";
	f.submit();

    f.encoding = formType;
}

//도움말보기
function viewHelp()
{
    var f = document.herafrm;

    var sFeatures = "top=50,left=100,width=950,height=700,scrollbars=no,menubar=no,status=no,resizable=no";
	window.open("","popHelp",sFeatures);

    f.method = "POST";
    f.target = "popHelp";
    f.action = "../common/HERA010102022_00P.asp";
    f.submit();
}

//도움말보기_new
function viewHelp_new(vIdx)
{

    var f = document.herafrm;

    var sFeatures = "top=50,left=100,width=950,height=700,scrollbars=no,menubar=no,status=no,resizable=no";
	window.open("","popHelp",sFeatures);

    f.method = "POST";
    f.target = "popHelp";
    f.action = "/common/HERA010102022_00P.asp?txt_idx="+vIdx;
    f.submit();
}

//개인고객상세조회
function viewCustDetail(custNo)
{
    var f = document.herafrm;

    if (isEmpty(custNo))
        return;

    var sFeatures = "top=0,left=0,width=1024,height=768,scrollbars=yes,menubar=no,status=no,resizable=yes";
	window.open("","popCustDetail",sFeatures);

    f.method = "POST";
    f.target = "popCustDetail";
    f.action = "/cc/HERA020201001_00M.asp?txt_gubun=POP&txt_cust_no="+custNo;
    f.submit();
}

//마우스 클릭 시 Row Color Setting
function changeTr(bgColor,clickColor)
{
    if(typeof(preEl)!='undefined')
        preEl.bgColor = bgColor;

    var el = event.srcElement;
    el = el.parentElement;
    if(el.tagName == "TD")
        el = el.parentElement;

    el.bgColor = clickColor;

    try {
        ChangeTextColor(el);
    }catch(e){;}
        preEl = el;
}

//글자색바꾸기
function ChangeTextColor(a_obj,a_color)
{
    for(i=0;i<a_obj.cells.length;i++)
        a_obj.cells(i).style.color = a_color;
}

//원본사진보기
function viewPhoto(param1,param2)
{
	window.open("/common/HERA010102009_00P.asp?param1="+param1+"&param2="+param2,"viewPhoto","top=100,left=200,width=50,height=50,scrollbars=no,menubar=no,status=no,resizable=no");
}

//관리자 로그인 변경
function changeLoginId()
{
    var f = document.herafrm;

    var sFeatures = "top=50,left=100,width=250,height=150,scrollbars=no,menubar=no,status=no,resizable=no";
	window.open("","popChangeLoginId",sFeatures);

    f.method = "POST";
    f.target = "popChangeLoginId";
    f.action = "../common/HERA010102029_00P.asp";
    f.submit();
}


//매일발송 함수
function mailPopup(vEmail,vCust_cd)
{
	var f = document.herafrm;

	obj = document.createElement("input");
	f.appendChild(obj);
	obj.outerHTML="<input type='hidden' name='hd_txt_email', value=''>";

	obj1 = document.createElement("input");
	f.appendChild(obj1);
	obj1.outerHTML="<input type='hidden' name='hd_txt_email_cust_cd', value=''>";

	f.hd_txt_email.value=vEmail;
	f.hd_txt_email_cust_cd.value=vCust_cd;

	var url="/common/HERA010102002_02P.asp";
	var vWinCap = "EmailFrom";
	var vWinOpt = "top=200,left=200,width=600,height=500,scrollbars=no,menubar=no";

	window.open("",vWinCap,vWinOpt);

	f.action = url;
	f.method = "POST";
	f.target = vWinCap;
	f.submit();

	f.removeChild(f.hd_txt_email);
	f.removeChild(f.hd_txt_email_cust_cd);

}

    // 관할국가 변경
    function chgCntryCd(obj) {
        var f = document.frm;

        f.sel_mng_sido_cd.options.length = 0;
        f.sel_mng_sido_cd.add(new Option("-----------------",""));

        f.sel_org_cd.options.length = 0;
        f.sel_org_cd.add(new Option("-----------------",""));

        if(isEmpty(obj.value) == false) {
            var url    = "/common/getMngSidoList.asp";
            var params = "txt_cntry_cd=" + escape(obj.value);
            url += "?" + params;

        	var objHTTP = MakeHttpObject();
        	objHTTP.open("GET", url, false);
        	objHTTP.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

        	objHTTP.onreadystatechange = function() {
        		if(objHTTP.readyState == 4) {
        			if(objHTTP.status == 200) {
                        var records = objHTTP.responseXML.documentElement.selectNodes("//ROOT/RECORD");
    				    for(var i=0; i<records.length; i++) {
    				        var opt = new Option(records[i].selectSingleNode("MNG_SIDO_NM").text,records[i].selectSingleNode("MNG_SIDO_CD").text);
    				        opt.title = records[i].selectSingleNode("MNG_SIDO_NM").text;
    				        f.sel_mng_sido_cd.add(opt);
    				    }
        			}else {
        			    alert(Message.getMessage("MSG00001"));
        			    return false;
        			}
        		}
        	}

        	objHTTP.send(null);
        }
    }

    // 관할지역 변경
    function chgMngSidoCd(obj) {
        var f = document.frm;

        f.sel_org_cd.options.length = 0;
        f.sel_org_cd.add(new Option("-----------------",""));

        if(isEmpty(obj.value) == false) {
            var url    = "/common/getOrgList.asp";
            var params = "txt_mng_sido_cd=" + escape(obj.value);
            url += "?" + params;

        	var objHTTP = MakeHttpObject();
        	objHTTP.open("GET", url, false);
        	objHTTP.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

        	objHTTP.onreadystatechange = function() {
        		if(objHTTP.readyState == 4) {
        			if(objHTTP.status == 200) {
                        var records = objHTTP.responseXML.documentElement.selectNodes("//ROOT/RECORD");
    				    for(var i=0; i<records.length; i++) {
    				        var opt = new Option(records[i].selectSingleNode("ORG_NM").text,records[i].selectSingleNode("ORG_CD").text);
    				        opt.title = records[i].selectSingleNode("ORG_NM").text;
    				        f.sel_org_cd.add(opt);
    				    }
        			}else {
        			    alert(Message.getMessage("MSG00001"));
        			    return false;
        			}
        		}
        	}

        	objHTTP.send(null);
        }
    }

//object 값 체크(radio,check 제외)
function oNotValue(obj,msgNo,oType){
	if(obj.value.trim()==""){
		alert(Message.getMessage(msgNo));
		if(oType!="hidden") obj.focus();
		return false;
	}

	return true;
}

//object 값 체크_select
function oNotSelValue(obj,msgNo){
	if(obj.length !=0){

		for(var i=0 ; i < obj.length ; i++)
		{
			if(i==obj.selectedIndex){

				if(obj.options[i].value==""){
					alert(Message.getMessage(msgNo));
					obj.focus();
					return false;
				}
			}
		}
	}else{
		alert(Message.getMessage(msgNo));
		obj.focus();
		return false;
	}

	return true;
}


/*
'텍스트 object value의 ("-"숫자 및 자리수 검색하기 )
'obj :객체
'onum : 검색할 문자가 나와야 하는수()
'oStr : 검색할 문자
'arrlenNum : 값의 길이(delimeter - ",")
'예 oDashLenCheck(obj,1, "-", 14)
'obj의 데이터 길이는 14이고 obj 데이터에 "-" 가 1번 나와야 함
*/
function oDashLenCheck(obj, onum, oStr, arrlenNum){

	var oVal = obj.value;
	var len_cnt = 0;
	var str_cnt = 0;

	if(oVal.length != arrlenNum){
		alert(Message.getMessage("MSG00264"));
		obj.focus();
		return false;
	}

	for(var i=0 ; i < obj.value.length ; i++ )
	{

		if(obj.value.substr(i,1) == oStr){
			str_cnt = str_cnt+ 1;
		}
	}

	if(str_cnt != onum){
		alert(Message.getMessage("MSG00265"));
		obj.focus();
		return false;
	}


	return true;
}

//이미지 Display 리사이즈(w:max width, h:max height)
function imgResize(obj,w,h,maxW,maxH)
{
    var imgW = w;
    var imgH = h;

    var img_W = imgW / maxW;
    var img_H = imgH / maxH;

    if (imgW > maxW)
    {
        if (imgH > maxH)
        {
            if (img_W > img_H)
            {
                img_H = imgH /img_W;
                img_W = maxW;
            }
            else
            {
                img_W = imgW / img_H;
                img_H = maxH;
            }
        }
        else
        {
            img_H = imgH / img_W
            img_W = maxW;
        }
    }
    else
    {
        if(imgH > maxH)
        {
            img_W = imgW / img_H;
            img_H = maxH;
        }
        else
        {
            img_W = imgW;
            img_H = imgH;
        }
    }

    obj.style.width  = img_W;
    obj.style.height = img_H;
}


//주소팝업(국내)
function popAddress(objIdx)
{
    var f = document.forms[0];

    var top  = screen.height/2 - 350/2
    var left = screen.width/2 - 500/2
    var sFeatures = "top=" + top + ",left=" + left + ",width=500, height=350,scrollbars=no,menubar=no,status=no,resizable=no";

	window.open("","popMessage",sFeatures);

    if (document.getElementsByName("txt_obj_idx").length < 1)
    {
        obj1 = document.createElement("INPUT");
        f.appendChild(obj1);
        obj1.outerHTML = "<input type='hidden' name='txt_obj_idx'>";
    }

    f.txt_obj_idx.value = objIdx;
	f.method = "post";
	f.encoding = "application/x-www-form-urlencoded";
	f.target = "popMessage";
	f.action = "/common/HERA010102010_00P.asp";
	f.submit();
}

//고객프로필 비교
function popCompare(mCustNo,fCustNo)
{
    var f = document.forms[0];

    if (isEmpty(mCustNo))
    {
        alert(Message.getMessage("MSG00275"));
        return;
    }
    if (isEmpty(fCustNo))
    {
        alert(Message.getMessage("MSG00275"));
        return;
    }

    if (mCustNo.substring(0,1) == "F")
    {
        var tmpCustNo = mCustNo;
        mCustNo = fCustNo;
        fCustNo = tmpCustNo;
    }

    var top  = screen.height/2 - 656/2
    var left = screen.width/2 - 1006/2
    var sFeatures = "top=" + top + ",left=" + left + ",width=1006, height=656,scrollbars=no,menubar=no,status=no,resizable=no";

	window.open("","popMessage",sFeatures);

    if (document.getElementsByName("m_cust_no").length < 1)
    {
        obj1 = document.createElement("INPUT");
        f.appendChild(obj1);
        obj1.outerHTML = "<input type='hidden' name='m_cust_no'>";
    }

    f.m_cust_no.value = mCustNo;

    if (document.getElementsByName("f_cust_no").length < 1)
    {
        obj2 = document.createElement("INPUT");
        f.appendChild(obj2);
        obj2.outerHTML = "<input type='hidden' name='f_cust_no'>";
    }

    f.f_cust_no.value = fCustNo;

	f.method = "post";
	f.target = "popMessage";
	f.action = "/common/HERA010102011_00P.asp";
	f.submit();
}

//미팅관리
function popMeetMng(gb,mCustNo,mMtSeq,fCustNo,fMtSeq)
{
    var f = document.forms[0];

    if (isEmpty(mCustNo))
    {
        alert(Message.getMessage("MSG00275"));
        return;
    }
    if (isEmpty(fCustNo))
    {
        alert(Message.getMessage("MSG00275"));
        return;
    }

    if (mCustNo.substring(0,1) == "F")
    {
        var tmpCustNo = mCustNo;
        mCustNo = fCustNo;
        fCustNo = tmpCustNo;

        var tmpMtSeq = mMtSeq;
        mMtSeq = fMtSeq;
        fMtSeq = tmpMtSeq;
    }

    var top  = screen.height/2 - 320/2
    var left = screen.width/2 - 986/2
    var sFeatures = "top=" + top + ",left=" + left + ",width=986, height=350,scrollbars=no,menubar=no,status=no,resizable=no";

	window.open("","popMessage",sFeatures);

    if (document.getElementsByName("txt_m_cust_no").length < 1)
    {
        obj1 = document.createElement("INPUT");
        f.appendChild(obj1);
        obj1.outerHTML = "<input type='hidden' name='txt_m_cust_no'>";
    }
    f.txt_m_cust_no.value = mCustNo;
    if (document.getElementsByName("txt_m_mt_seq").length < 1)
    {
        obj1 = document.createElement("INPUT");
        f.appendChild(obj1);
        obj1.outerHTML = "<input type='hidden' name='txt_m_mt_seq'>";
    }
    f.txt_m_mt_seq.value = mMtSeq;

    if (document.getElementsByName("txt_f_cust_no").length < 1)
    {
        obj1 = document.createElement("INPUT");
        f.appendChild(obj1);
        obj1.outerHTML = "<input type='hidden' name='txt_f_cust_no'>";
    }
    f.txt_f_cust_no.value = fCustNo;
    if (document.getElementsByName("txt_f_mt_seq").length < 1)
    {
        obj1 = document.createElement("INPUT");
        f.appendChild(obj1);
        obj1.outerHTML = "<input type='hidden' name='txt_f_mt_seq'>";
    }
    f.txt_f_mt_seq.value = fMtSeq;

	//팝업여부
	if (document.getElementsByName("txt_pop_mode").length < 1)
    {
        obj1 = document.createElement("INPUT");
        f.appendChild(obj1);
        obj1.outerHTML = "<input type='hidden' name='txt_pop_mode'>";
    }
    f.txt_pop_mode.value = "popup";

	f.method = "post";
	f.target = "popMessage";
	if (gb == "1")
	    f.action = "/cc/HERA030501001_01F.asp";
	else if (gb == "2")
	    f.action = "/cc/HERA030502001_01F.asp";
	f.submit();
}

/*======================================================================================================================
AJAX 공통함수(2008-06-04 :: 이윤환 작성)
========================================================================================================================*/

function Com_AJAX(oObj, sSQL, sColNm)
{
	var records = new Array();
	//alert(isEmpty(oObj.value));
	if(isEmpty(oObj.value) == false) {
		sSQL = sSQL.replace(/%/gi,"!");
        var url    = "/common/HERA010101031_00S.asp";
        var params = "sql=" +sSQL+"&col_nm="+sColNm;

        url += "?" + params;

    	var objHTTP = MakeHttpObject();
    	objHTTP.open("GET", url, false);
    	objHTTP.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    	objHTTP.onreadystatechange = function() {
    		if(objHTTP.readyState == 4) {
    			//alert(objHTTP.status);
    			if(objHTTP.status == 200){
                    records = objHTTP.responseXML.documentElement.selectNodes("//ROOT/RECORD");
    			}else {
    			    alert(Message.getMessage("MSG00298"));
    			}
    		}
    	}

    	objHTTP.send(null);
    }

    return records;
}

function OpenExchgWonHist(parentPgmId) {
    var top  = screen.height/2 - 300/2;
    var left = screen.width/2 -500/2;
    var sFeatures="top="+top+",left="+left+",width=500,height=300,scrollbars=no,menubar=no,status=no,resizable=no";

    window.open("/common/HERA010102034_00P.asp?txt_hera2008_parent_pgm_id="+parentPgmId,"pop_exchgWonHist",sFeatures);
}

function $(v_id)
{
	return document.getElementById(v_id);
}

function getPageSize()
{
	var xScroll, yScroll;

	if(window.innerHeight && window.scrollMaxY)
	{
		xScroll=window.innerWidth+window.scrollMaxX;
		yScroll=window.innerHeight+window.scrollMaxY;
	}
	else if(document.body.scrollHeight > document.body.offsetHeight)
	{
		xScroll=document.body.scrollWidth;
		yScroll=document.body.scrollHeight;
	}
	else
	{
		xScroll=document.body.offsetWidth;
		yScroll=document.body.offsetHeight;
	}

	var windowWidth, windowHeight;

	if(self.innerHeight)
	{
		if(document.documentElement.clientWidth)
		{
			windowWidth=document.documentElement.clientWidth;
		}
		else
		{
			windowWidth=self.innerWidth;
		}

		windowHeight=self.innerHeight;
	}
	else if(document.documentElement && document.documentElement.clientHeight)
	{
		windowWidth=document.documentElement.clientWidth;
		windowHeight=document.documentElement.clientHeight;
	}
	else if(document.body)
	{
		windowWidth=document.body.clientWidth;
		windowHeight=document.body.clientHeight;
	}

	if(yScroll < windowHeight)
	{
		pageHeight=windowHeight;
	}
	else
	{
		pageHeight=yScroll;
	}

	if(xScroll < windowWidth)
	{
		pageWidth=xScroll;
	}
	else
	{
		pageWidth=windowWidth;
	}

	arrayPageSize=new Array(pageWidth,pageHeight,windowWidth,windowHeight);
	return arrayPageSize;
}

function getPageScroll()
{
	var xScroll, yScroll;

	if(self.pageYOffset)
	{
		yScroll=self.pageYOffset;
		xScroll=self.pageXOffset;
	}
	else if(document.documentElement && document.documentElement.scrollTop)
	{
		yScroll=document.documentElement.scrollTop;
		xScroll=document.documentElement.scrollLeft;
	}
	else if(document.body)
	{
		yScroll=document.body.scrollTop;
		xScroll=document.body.scrollLeft;
	}

	arrayPageScroll=new Array(xScroll,yScroll);
	return arrayPageScroll;
}

function getWindowWidth()
{
	if(typeof(window.innerWidth)=='number')
	{
		return window.innerWidth;
	}
	else if(document.documentElement && document.documentElement.clientWidth)
	{
		return document.documentElement.clientWidth;
	}
	else if(document.body && document.body.clientWidth)
	{
		return document.body.clientWidth;
	}
}

function getWindowHeight()
{
	if(typeof(window.innerHeight)=='number')
	{
		return window.innerHeight;
	}
	else if(document.documentElement && document.documentElement.clientHeight)
	{
		return document.documentElement.clientHeight;
	}
	else if(document.body && document.body.clientHeight)
	{
		return document.body.clientHeight;
	}
}

function hideSelect()
{
  var selects = document.getElementsByTagName("SELECT");

  for(i=0; i<selects.length; i++)
  {
		if(selects[i].style.visibility != "hidden")
		{
			selects[i].style.visibility = "hidden";
		}
  }
}

function createInputElement(objid,objname,objtype,objvalue){
    var obj =null;
    try{
        obj = document.createElement('<input id="'+objid+'" type="'+objtype+'" name="'+objname+'" value="'+objvalue+'" />');
    }catch(ex){
        obj = document.createElement("input");
        obj.name=objname;
        obj.id=objid;
        obj.type=objtype;
        obj.value=objvalue;
    }

    return obj;
}

function removeInputChild(obj,frm){
    if(typeof(obj)=="object"){
        frm.removeChild(obj);
    }
}

// Message 뿌리기
function message(msg) {
    if(msg.substring(0,3) == "MSG")
        alert(Message.getMessage(msg));
    else
        alert(msg);
}