//미디어 파일 패치
function EP_activate(num) {
    document.write(document.getElementById("DEACTIVATED_TEXT" + num).value);
}

//***** 롤오버 *****
function imgOver(param) {
	param.src = param.src.replace("out.gif", "over.gif");
}
function imgOut(param) {
	param.src = param.src.replace("over.gif", "out.gif");
}


//***** 팝업 *****
function pop(url,width,height,scroll){
	window.open(url,'_blank','width='+width+',height='+height+',scrollbars='+scroll);
}

//////////////////////////////////////////////////////////////////////////
//   Copyright (c) eFusioni                                             //
//   All rights reserved.                                               //
//                                                                      //
//   자바스크립트 공통함수 For ECM                                      //
//                                2004-10-10                            //
//////////////////////////////////////////////////////////////////////////

//폼객체의 종류를 자동으로 인식하여 값이 비어 있으면 메시지를 뿌려주고 필요하면 focusing한다.
function checkField(obj, message) {
    var tag = "";

    if (obj.tagName == null) {
        if (obj[0].type == "checkbox") tag = "CHECK";
        else if (obj[0].type == "radio") tag = "RADIO";
    }
    else {
        if (obj.tagName == "SELECT") tag = "SELECT";
        else if (obj.tagName == "INPUT") {
            if (obj.type == "text") tag = "TEXT";
            else if (obj.type == "hidden") tag = "HIDDEN";
            else if (obj.type == "file") tag = "FILE";
            else if (obj.type == "password") tag = "PASSWORD";
			else if (obj.type == "checkbox") tag = "CHECK"; 
			else if (obj.type == "radio") tag = "RADIO";
        }
        else if (obj.tagName == "TEXTAREA") tag = "TEXTAREA";
    }
    
    var valid = true;

    if (tag == "SELECT") {
        if (obj.options[obj.selectedIndex].value == '') valid = false;
    }
    else if (tag == "TEXT" || tag == "TEXTAREA" || tag == "FILE" || tag == "PASSWORD" || tag == "HIDDEN") {
        if (obj.value.trim() == "") valid = false;
    }
    else if (tag == "CHECK" || tag == "RADIO") {
        var isHit = false;
		if( obj.length != null ){
	        for (var i=0; i<obj.length; i++) {
	            if (obj[i].checked) {
	                isHit = true;
	                break;
	            }
	        }
		}
		else{
			isHit = obj.checked;
		}
        valid = isHit;
    }

	if (message != null){
		if (!valid) {
			alert(message);
			if (tag != "CHECK" && tag != "RADIO" && tag != "HIDDEN") obj.focus();
		}
	}

    return valid;
}

function checkDigit(obj, digit, message){
	var tag = "";
	var isValid = false;
	if (obj.tagName == "SELECT" || obj.tagName == "TEXTAREA" || obj.tagName == null){
		isValid = true;
	}
	if (obj.value.length == digit){
		isValid = true;
	}
	if (message != null){
		if (!isValid){
			alert(message);
			obj.focus();
		}
	}

	return isValid;
}

// 입력값이 숫자가 아니면 메시지를 뿌려준다.
function checkNumber(obj, message) {
    var valid = obj.value.isNumber();
    if (!valid) {
        alert(message);
        obj.focus();
    }

    return valid;
}

// 입력값이 이메일이 아니면 메시지를 뿌려준다.
function checkEmail(obj, message) {
    var valid = obj.value.isEmail();
    if (!valid) {
        alert(message);
        obj.focus();
    }

    return valid;
}

// 입력값이 주민등록번호 형식이 아니면 메시지를 뿌려준다.
function checkJumin(obj, message) {
    var valid = obj.value.isJumin();
    if (!valid) {
        alert(message);
        obj.focus();
    }

    return valid;
}

// 한 문자열이 'YYYYMMDD' 형식의 날짜값인지 판별한다.
String.prototype.isDate = function() {
	if (this.length != 8) return false;

	var year = parseInt(this.substr(0, 4));
	var month = parseInt(this.substr(4, 2));
	var day = parseInt(this.substr(6, 2));

	if (isNaN(year) || isNaN(month) || isNaN(day)) return false;
	if (year < 0) return false;
	if (month < 1 && month > 12) return false;
	if (day < 1 && day > 31) return false;

	var months = new Array(31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

	if (day > months[month - 1]) return false;

	if (month == 2 && day == 29) {
		if (!((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)) return false;
	}

	return true;
}

// 한 문자열이 숫자인지 판별한다.
String.prototype.isNumber = function() {
    if (this == "") return false;
    else return this.isRestrictedWithin("0123456789");
}

// 한 문자열이 입력값의 Charactor들만 사용했는지 판별한다.
String.prototype.isRestrictedWithin = function (chars) {
    for (var i=0; i<this.length; i++) {
        if (chars.indexOf(this.charAt(i)) < 0) return false;
    }

    return true;
}

//문자열 상의 숫자가 아닌 부분을 삭제하여 숫자를 완성한다.
// 예 : "1234ajefcd45dk" -> "123445"
String.prototype.removeNonNumericChars = function () {
    return this.replace(/[^0-9]/g, "");
}

// input field에 숫자만 넣어야 할경우에  onKeyPress이벤트에서 호출한다..
// 사용예 : <input type=text name="aField" onKeyPress="return isNumberPressed(this)">
function isNumberPressed(obj) {
    return !(event.keyCode < 48 || event.keyCode > 57);
}

// textarea에서 입력 길이를 제한할 경우에 onKeyPress이벤트에서 호출한다..
// 사용예 : <textarea name="aField" onKeyUp="limitTextLength(this, 50)"></textarea>
function limitTextLength(obj, len) {
    if (obj.value.length > len) {
        alert(len + TEXT_JS_1);	//" 자 이상 입력하실 수 없습니다."
        obj.value = obj.value.substr(0, len);
    }
}

// 앞뒤 공백을 자른다..
String.prototype.trim = function() {
    var format = /^\s*/g;
    var str = this;
    str = str.replace(format, "");
    format = /\s*$/g;
    str = str.replace(format, "");

    return str;
}

// 문자열이 이메일 형식인지 판별한다.
String.prototype.isEmail = function() {
    var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;
    return (this.search(format) > -1);
}

String.prototype.isJumin = function() {
    var sum = 0 ;
    sum = this.charAt(0) * 2 + this.charAt(1) * 3 + this.charAt(2) * 4 + this.charAt(3) * 5 +
          this.charAt(4) * 6 + this.charAt(5) * 7 + this.charAt(6) * 8 + this.charAt(7) * 9 +
          this.charAt(8) * 2 + this.charAt(9) * 3 + this.charAt(10) * 4 + this.charAt(11) * 5;

    if (sum == "0") return false;
    else {
        sum = 11 - sum % 11 ;
        if (sum > 9) sum = sum - 10;

        if (sum == this.charAt(12)) return true;
        else return false;
    }
}

// 숫자를 money포맷으로 3자리씩 끊어 표현한다.
String.prototype.formatMoney = function() {
    if (!this.isNumber()) return null;

	var start = 0;
	var distance =  parseInt(this.length % 3);
	var nComma =  parseInt(this.length / 3);

	if (distance == 0){
		distance = 3;
		nComma -= 1;
	}

	var arr = new Array();
	for (var i=0; i<nComma + 1; i++) {
		arr[i] = this.substring(start, start + distance);	

		start += distance;
		distance = 3;
	}

	var sReturn = ""
	var isFirst = true;
	for (var i=0; i<arr.length; i++) {
		sReturn += (isFirst ? "" : ",") + arr[i];
		isFirst = false;
	}

	return sReturn;
}

// 해당 년도의 날짜 수를 반환
function getDaysOfYear(year) {
    if (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)) return 366;
    else return 365;
}

//상수 정의
var DIFF_YEAR = 0;
var DIFF_MONTH = 1;
var DIFF_DAY = 2;

// 해당 년, 월의 날짜 수를 반환
Date.prototype.getLastDateOfMonth = function() {
    var month = this.getMonth();
    var year = this.getFullYear();
    if (month == 0 || month == 2 || month == 4 || month == 6 || month == 7 || month == 9 || month == 11) {
        return 31;
    }
    else if (month == 3 || month == 5 || month == 8 || month == 10) {
        return 30;
    }
    else {
        if (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)) return 29;
        else return 28;
    }
}

// 현 날짜의 지정된 간격에 해당하는 날짜를 반환 (날짜 밑의 시간은 무시된다.)
Date.prototype.add = function(opt, nDiff) {
    //참조가 아닌 Value로 복사
    var rDate = this.getInstanceByVal();

    switch (opt) {
    case DIFF_YEAR :
        var year = rDate.getFullYear() + nDiff;

        //2월 29일이고 변경할 년도가 2월 28일까지 밖에 없다면 2월 28일로 변경
        if (this.getMonth() == 1 && this.getDate() == 29 && getDaysOfYear(year) == 365) {
            rDate.setFullYear(year, 1, 28);
        }
        else {
            rDate.setFullYear(year, rDate.getMonth(), rDate.getDate());
        }

        break;
    case DIFF_MONTH :
        var diffYear;
        var diffMonth;

        if (nDiff >= 0) {
            diffYear = Math.floor(nDiff / 12);
        }
        else {
            diffYear = Math.ceil(nDiff / 12);
        }

        diffMonth = nDiff % 12;

        var year = rDate.getFullYear() + diffYear;
        var month = rDate.getMonth() + diffMonth;

        if (month > 11) {
            year++;
            month -= 12;
        }
        else if (month < -11) {
            year--;
            month += 12;
        }

        //2월 29일이고 변경할 년도가 2월 28일까지 밖에 없다면 2월 28일로 변경
        if (rDate.getMonth() == 1 && rDate.getDate() == 29 && month == 1 && getDaysOfYear(year) == 365) {
            rDate.setFullYear(year, 1, 28);
        }
        else {
            rDate.setFullYear(year, month, rDate.getDate());
        }

        break;
    case DIFF_DAY :
        // 1970년 1월 1일부터 경과한 milliseconds 계산
        var tms = rDate.getFullMilliseconds();
        tms += nDiff * 24 * 60 * 60 * 1000;

        rDate = new Date(tms);
        break;
    }

    return rDate;
}

Date.prototype.getFullMilliseconds = function() {
    var tms = 0;
    if (this.getFullYear() >= 1970) {
        //년도
        for (var i=1970; i<this.getFullYear(); i++) {
            tms += getDaysOfYear(i) * 24 * 60 * 60 * 1000;
        }

    }
    else {
        for (var i=this.getFullYear(); i<1970; i++) {
            tms += getDaysOfYear(i) * 24 * 60 * 60 * 1000;
        }

        tms = -tms;
    }

    //월
    for (var i=0; i<this.getMonth(); i++) {
        var aDate = new Date(this.getFullYear(), i, 1);
        tms += aDate.getLastDateOfMonth() * 24 * 60 * 60 * 1000;
    }

    //일
    tms += (this.getDate() - 1) * 24 * 60 * 60 * 1000;

    //시
    tms += this.getHours() * 60 * 60 * 1000;

    //분
    tms += this.getMinutes() * 60 * 1000;

    //초
    tms += this.getSeconds() * 1000;

    //Milliseconds
    tms += this.getMilliseconds();

    //타임존 고려.. 9시간을 빼준다. (검증 안된 코드)
    tms -= 9 * 60 * 60 * 1000;

    return tms;
}

Date.prototype.getInstanceByVal = function() {
    return new Date(this.toString());
}


// 날짜를 지정한 날짜 형식으로 반환한다. 현재 YYYY, MM, DD 만 작동
// 사용예) 현재날짜 2004년 10월 19일 기준
// var str = (new Date()).formatString("YYYY/MM/DD"); "2004/10/19"를 반환
// var str = (new Date()).formatString("YYYYMMDD"); "20041019"를 반환
Date.prototype.formatString = function(format) {
    var year = this.getFullYear();
    var month = this.getMonth() >= 9 ? parseInt(this.getMonth() + 1) : "0" + parseInt(this.getMonth() + 1);
    var day = this.getDate() >= 10 ? this.getDate() : "0" + this.getDate();

    var str = format.toUpperCase();
    str = str.replace("YYYY", year);
    str = str.replace("MM", month);
    str = str.replace("DD", day);

    return str;
}

// Select Box를 index가 아닌 value 값을 기준으로 선택하는 함수
function selectByVal(obj, val) {
    var i;

    for ( i = 0 ; i < obj.length ; i++ )
        if ( obj[i].value == val ) {
            obj.selectedIndex = i;
            return i;
        }

    return -1;
}

/* 소수점이 포함된 숫자 입력 제어
// 사용예) ...style='ime-mode:disabled;' onKeyPress="return isPoint(this);">
*/

String.prototype.locationPonit = function()
{
	if((this.length == 0 && event.keyCode == 46))
	{
		alert("처음에 소수점이 올수 없습니다.");
		return false;
	}else if((this.length > 0 && event.keyCode == 46)) {
		for(i = 0 ; i < this.length ; i++) {
			if(this.charAt(i) == ".") {
				return false;
			}
		}
		return true;
	}else return true;
}

function isPoint(obj) {
	if(!obj.value.locationPonit())
	{
	  return false;
	}
  return !((event.keyCode < 48 || event.keyCode > 57) && event.keyCode != 46);
}
/* 숫자와 - 을 포함한 전화번호 입력 제어
// 사용예) ..... style='ime-mode:disabled;' onKeyPress="return isTelephone(this);">
*/
String.prototype.locationHyphen= function()
{
	var cnt = 0 ;
	var j ;
	if((this.length == 0 && event.keyCode == 45))
	{
		alert(TEXT_JS_2);		//"잘못된 형식입니다."
		return false;
	}else if((this.length > 0 && event.keyCode == 45)) {
		for(i = 0 ; i < this.length ; i++) {
			if(this.charAt(i) == "-") {
				cnt++;
			    if(this.charAt(this.length-1) == this.charAt(i)){
					alert(TEXT_JS_3);		//"잘못된 형식입니다."
					return false
				}
			}
		}
		return true;
	}else return true;
}

function isTelephone(obj) {
    if(!obj.value.locationHyphen()){
	   return false;
	}
	if(!((event.keyCode < 48 || event.keyCode > 57) && event.keyCode != 45)) {
		return true;
	}else{
	  alert(TEXT_JS_4);		//"숫자와 '-' 이외의 문자는 입력할 수 없습니다."
	  return false;
  }
}
//-----------------------------------------------------------------------//
// checkform(formField, checkName, message, maxlength, minlength)
// 입력 필드를 입력받아 숫자/아이디/문자/전화번호/영문/최소글자/최대글자등을
// 체크하여 메세지를 전달하고 반환한다.
//-----------------------------------------------------------------------//
	String.prototype.IsId = function() {
		if (this.search(/[^A-Za-z0-9_-]/) == -1)
			return true;
		else
			return false;
	}
	
	String.prototype.IsPassword = function() {
		if( (this.search(/[^A-Za-z0-9]/) == -1) && (this.search(/[A-Za-z]/) > -1) && (this.search(/[0-9]/) > -1) ) {
			return true;
		}else {
			return false;	
		}
	}
	
	String.prototype.IsRepeat = function() {
		if( this.search(/([0-9A-Za-z])\1{3}/) == -1) {
			return true;
		}else {
			return false;	
		}
	}

	String.prototype.IsTel = function() {
		if (this.search(/[^0-9_-]/) == -1)
			return true;
		else
			return false;
	}

	String.prototype.IsMoney = function() {
		if (this.search(/[^0-9_,]/) == -1)
			return true;
		else
			return false;
	}

	String.prototype.IsAlpha = function() {
		if (this.search(/[^A-Za-z]/) == -1)
			return true;
		else
			return false;
	}

	String.prototype.IsNumber = function() {
		if (this.search(/[^0-9]/) == -1)
			return true;
		else
			return false;
	}

	String.prototype.IsJumin = function() {
		var jumin= this
		if (jumin.length  != 13)
			return false;
		tval=jumin.charAt(0)*2 + jumin.charAt(1)*3 + jumin.charAt(2)*4
		+ jumin.charAt(3)*5 + jumin.charAt(4)*6 + jumin.charAt(5)*7
		+ jumin.charAt(6)*8+ jumin.charAt(7)*9 + jumin.charAt(8)*2
		+ jumin.charAt(9)*3 + jumin.charAt(10)*4 + jumin.charAt(11)*5;

		tval2=11- (tval % 11);
		tval2=tval2 % 10;

		if (jumin.charAt(12)==tval2 &&  (jumin.charAt(6)=="1" ||jumin.charAt(6)=="2")) {
			return true;
		}
		else{
			return false ;
		}
	}

	String.prototype.IsEmail = function() {
		if (this.search(/(.+)@.+\..+/) == -1)
			return false;
		else {
			for(var i=0; i < this.length;i++)
				if (this.charCodeAt(i) > 256)
					return false;
			return true;
		}
	}

	String.prototype.IsDate = function() {
		if (this.search(/\d{4}\.\d{2}\.\d{2}/) == -1)
			return false;
		else {
			return true;
		}
	}
	
	String.prototype.IsUrl = function() {
		if (this.search(/^(http\:\/\/)+/gi) == -1) {
			return false;
		}else {
			return true;	
		}
	}

	String.prototype.StrLen = function() {
		var temp;
		var set = 0;
		var mycount = 0;

		for( k = 0 ; k < this.length ; k++ ){
			temp = this.charAt(k);
			
			if (temp == null || temp.length == 0) {
	          return 0;
	        }
	
	        var charCode = temp.charCodeAt(0);
	
	        if (charCode <= 0x00007F) {
	           mycount += 1;
	        } else if (charCode <= 0x0007FF) {
	         	mycount += 2;
	        } else if (charCode <= 0x00FFFF) {
	          mycount += 3;
	        } else {
	          mycount += 4;
	        }
		}

		return mycount;
	}

	String.prototype.LTrim = function() {
		var i, j = 0;
		var objstr

		for ( i = 0; i < this.length ; i++){
			if (this.charAt(i) == ' ' ){
				j = j + 1;
			}
			else{
				break;
			}
		}
		return this.substr(j, this.length - j+1)
	}

	String.prototype.RTrim = function() {
		var i, j = 0;

		for ( i = this.length - 1; i >= 0 ; i--){
			if (this.charAt(i) == ' ' ){
				j = j + 1
			}
			else{
				break;
			}
		}
		return 	this.substr(0, this.length - j);
	}

	String.prototype.Trim = function() {
		return this.replace(/\s/g, "");
	}
	
	String.prototype.IsSimilar = function(str) {
		var cnt = str.length;
		var isResult = true;		
		for(var i = 0; i < cnt; i++)  {
			if(i + 4 > cnt) {
				break;
			}
			var similar = eval("/" + str.substr(i, 4) + "/gi");
			if( this.search(similar) > -1 ) {
				isResult = false;
				break;
			}
		}
		return isResult;	
	}

	function _cmdfocus(formobj){
		formobj.select();
		formobj.focus();
	}

	function Go_Next(curField, nextField, curLength){
		if (curField.value.length >= curLength){
			nextField.focus();
		}
	}

	//입력형식:"YYYY/MM/DD"(다른 형식은 에러입니다.)
	function DateDiff(FromDate, ToDate){
		var D1,D2,Diff;						//변수를 선언합니다.
		var MinMilli = 1000 * 60;			//변수를 초기화합니다.
		var HrMilli = MinMilli * 60;
		var DyMilli = HrMilli * 24;
		D1 = Date.parse(FromDate);			//구문 분석합니다.
		D2 = Date.parse(ToDate);			//구문 분석합니다.
		Diff = Math.round(Math.abs((D2-D1) / DyMilli))
		if (Diff>-1) {
			Diff= Diff + 1;
		} else {
			Diff= Diff - 1;
		}
		return(Diff);						//결과를 반환합니다.
	}

	function checkform(formField, checkName, message, maxlength, minlength) {

	//각 필드별 입력값 체크
	//주민등록시 반드시 값으로 넘긴다.
	//필수입력 check
	//글자수 check
	//field 유효성 check

	formValue = formField.value.LTrim().RTrim();

		if(checkName != 'jumin'){
			if (formField == null ) {
				return false;
			}

			if (formValue == '' && minlength > 0){
				alert(message + TEXT_JS_5);	// " 필수입력 항목입니다."
				_cmdfocus(formField);
				return false;
			}

			if (formValue.StrLen() < minlength) {
				alert(message + TEXT_JS_6 + minlength + TEXT_JS_7);	//" 최소" + minlength + "자이상 입력하세요."
				_cmdfocus(formField);
				return false;
			}

			if (formValue.StrLen() > maxlength) {
				alert(message + TEXT_JS_8 + maxlength + TEXT_JS_9 + maxlength/3 + TEXT_JS_10);	//" 최대" + maxlength + "자(한글" + maxlength/3 + " 자)까지 입력 가능합니다."
				_cmdfocus(formField);
				return false;
			}
		}

		switch(checkName) {
			case "" :
				return true;
			case "alpha" :
				if (formValue.IsAlpha()) {
					return true;
				} else {
					alert(message + TEXT_JS_11);		//" 영문자만 입력 가능 합니다."
					_cmdfocus(formField);
					return false;
				}
				break;
			case "number" :

				if (formValue.IsNumber()) {
					return true;
				} else {
					alert(message + TEXT_JS_12);	//" 숫자만 입력 가능 합니다."
					_cmdfocus(formField);
					return false;
				}
				break;
			case "id" :
				if (formValue.IsId()) {
					return true;
				} else {
					alert(message + TEXT_JS_13);	//" 영문자와 숫자만 입력 가능 합니다."
					_cmdfocus(formField);
					return false;
				}
				break;
			case "pass" :
				if( formValue.IsPassword()) {
					if( formValue.IsRepeat() ) {
						return true;	
					}else {
						alert(message + TEXT_JS_14);	//" 4번 이상 반복된 문자가 있습니다."
						_cmdfocus(formField);
						return false;	
					}
				} else {
					alert(message + TEXT_JS_15);	//" 영문자와 숫자를 조합하여야 합니다."
					_cmdfocus(formField);
					return false;
				}
				break;			
			case "tel" :
				if (formValue.IsTel()) {
					return true;
				} else {
					alert(message + TEXT_JS_16);	//" 숫자와 - 만 입력 가능합니다."
					_cmdfocus(formField);
					return false;
				}
				break;
			case "email" :
				if (formValue.IsEmail()) {
					return true;
				} else {
					alert(message + TEXT_JS_17);	//" 이메일 형식이 틀립니다. 다시 입력해 주세요(형식: account@localhost.com"
					_cmdfocus(formField);
					return false;
				}
				break;
			case "date" :
				if (formValue.IsDate()) {
					return true;
				} else {
					alert(message + TEXT_JS_18);	//" 날짜 형식이 틀립니다. 다시 입력해 주세요(형식: 1999.09.09)"
					_cmdfocus(formField);
					return false;
				}
				break;
			case "jumin" :
				if(formValue.StrLen() != 13){
					alert(TEXT_JS_19);	//"주민등록번호를 정확히 입력해주세요"
					return false
				}

				if (formValue.IsJumin()) {
					return true;
				} else {
					alert(TEXT_JS_20);	//"주민등록번호를 정확히 입력해주세요"
					return false;
				}
				break;
			case "url" :
				if(formValue.IsUrl()) {
					return true;
				}else {
					alert(TEXT_JS_21);	//"URL은 http:// 로 시작되어야 합니다."
					_cmdfocus(formField);
					return false	
				}
			
				break;
		}
	}


//링크관련 스크립트
function dualHref(leftLink, mainLink) {
		parent.leftFrame.location.href = leftLink;
		parent.mainFrame.location.href = mainLink;
}

function openWindow(fileName, winName, width, height, scrollbars) {
  var center = new Array();
  center = window_center(width, height);
  openWin(fileName, winName, center.left, center.top, width, height, scrollbars)
}

function openWin(fileName, winName, left, top, width, height, scrollbars) {
  var win = window.open(fileName, winName, "width=" + width+ ", height=" + height + ", left=" + left + ", top=" + top + ", scrollbars='" + scrollbars + "'");
  if (win) win.focus();
}

function window_center(width, height) {
  var sw = parseInt(screen.availWidth);
  var sh = parseInt(screen.availHeight);
  var nw = parseInt(width) + 10;
  var nh = parseInt(height) + 36;
  var center = new Array();
  center.left = 0;
  center.top = 0;
  if ( sw > nw ) {
    center.left = (sw - nw) / 2;
  }
  if ( sh > nh ) {
    center.top = (sh - nh) / 2;
  }
  return center;
}

function resetForm(frm){
	for (var i=0 ; i < frm.elements.length ; i++){
		var formField = frm.elements[i];
		if (formField.tagName == 'INPUT'){
			if (formField.type == 'text'){
				formField.value = '';
			}else if(formField.type == 'radio'){
				formField.checked = false;
			}else if(formField.type == 'checkbox'){
				formField.checked = false;
			}
		}else if(formField.tagName == 'SELECT'){
			formField.selectedIndex = 0;
		}else if(formField.tagName == 'TEXTAREA'){
			formField.value = '';
		}
	}
}

//지정 name의 이미지를 리사이즈 한다.
function resizeImg(name, maxLength){
	var col = document.getElementsByName(name);
	
	if( col != null ){
		for(i = 0; i < col.length; i++){
			if( col[i].width > maxLength ){
				col[i].width = maxLength;
			}
		}
	}
}


function getSelectedValue(obj){
    try{
        return obj[obj.selectedIndex].value;
    }catch(e){
        return "";
    }
}

//responseText -> responseXML
function textToXML(text) {
    var xmlDocument;
    var xmlParser;
    if(window.ActiveXObject){   //IE일 경우
        xmlDocument = new ActiveXObject('Microsoft.XMLDOM');
        xmlDocument.async = false;
        xmlDocument.loadXML(text);
    } else if (window.XMLHttpRequest) {   //Firefox, Netscape일 경우
        xmlParser = new DOMParser();
        xmlDocument = xmlParser.parseFromString(text, 'text/xml');
    }
    return xmlDocument;
}

function encodeUTF8(string){
    string = string.replace(/\r\n/g,"\n");
    var utftext = "";

    for (var n = 0; n < string.length; n++) {

        var c = string.charCodeAt(n);

        if (c < 128) {
            utftext += String.fromCharCode(c);
        }
        else if((c > 127) && (c < 2048)) {
            utftext += String.fromCharCode((c >> 6) | 192);
            utftext += String.fromCharCode((c & 63) | 128);
        }
        else {
            utftext += String.fromCharCode((c >> 12) | 224);
            utftext += String.fromCharCode(((c >> 6) & 63) | 128);
            utftext += String.fromCharCode((c & 63) | 128);
        }

    }

    return utftext;
}

function decodeUTF8(utftext) {
    var string = "";
    var i = 0;
    var c = c1 = c2 = 0;

    while ( i < utftext.length ) {

        c = utftext.charCodeAt(i);

        if (c < 128) {
            string += String.fromCharCode(c);
            i++;
        }
        else if((c > 191) && (c < 224)) {
            c2 = utftext.charCodeAt(i+1);
            string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
            i += 2;
        }
        else {
            c2 = utftext.charCodeAt(i+1);
            c3 = utftext.charCodeAt(i+2);
            string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
            i += 3;
        }

    }

    return string;
}

//로그인 페이지로 이동
function goLogin(redirectUrl){ 
	var thisUrl;
	if( redirectUrl == null || redirectUrl == ""){
		thisUrl = location.href;
	}
	else{
		thisUrl = redirectUrl;
	}
	location.href = "/training/global/login.asp?redirect=" + escape(thisUrl);
}

