var modalOK, isIE, isNS;
if(window.navigator.appName=='Microsoft Internet Explorer'&&window.navigator.appVersion.substring(window.navigator.appVersion.indexOf('MSIE')+5,window.navigator.appVersion.indexOf('MSIE')+8)>=5.0) { modalOK=true; }else{ modalOK=false; }
if(document.all) { isIE=true; }else{ isIE=false; }
if(document.layer) { isNS=true; }else{ isNS=false; }

function input_chk(form_name,obj_name,patten) {
	var flag=false;
	var obj = eval("document."+form_name+"."+obj_name);
	if (obj) {
		if (!obj.type) {
			var tmp = eval("document."+form_name+"."+obj_name+"[0]");
			if (tmp.type == "radio") {
				for(i=0;i<obj.length;i++) {
					if (obj[i].checked) flag=true;
				}
			}else{
				return true;
			}
		}else if ((obj.type=="text")||(obj.type=="password")||(obj.type=="textarea")) {
			str = obj.value.replace(/\s*/, "");
			if (str != "") flag=true;
		}else if (obj.type.match("select*")){
			str = obj.options[obj.selectedIndex].value.replace(/\s*/, "");
			if (str != "") flag=true;
		}
		if (flag) {
			if ((typeof patten != "undefined")&&(patten.length != 0)) {
				patten = eval('/'+ patten + '/');
				if (obj.value.match(patten)) flag=true;
			}
		}
		if (!flag) {
			if (tmp) tmp.focus();
			else if (obj) obj.focus();
		}
		return flag;
	}else return true;
}


function autoTab(input,len, e) {
	var keyCode = (isNS) ? e.which : e.keyCode;
	var filter = (isNS) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];
	if(input.value.length >= len && !containsElement(filter,keyCode)) {
	input.value = input.value.slice(0, len);
	input.form[(getIndex(input)+1) % input.form.length].focus();
}

function containsElement(arr, ele) {
	var found = false, index = 0;
	while(!found && index < arr.length)
	if(arr[index] == ele)
	found = true;
	else
	index++;
	return found;
}

function getIndex(input) {
	var index = -1, i = 0, found = false;
	while (i < input.form.length && index == -1)
		if (input.form[i] == input)index = i;
		else i++;
		return index;
	}
	return true;
}

function allowNum(event) {
	if (event.keyCode < 48 || event.keyCode > 57) event.returnValue = false;
}

function centerAlert(str) {
	alert(getCenterStr(str));
	return true;
}

function centerConfirm(str) {
	return confirm(getCenterStr(str));
}

function getCenterStr(str) {
	var strarr, endPadding, newStr, lMargin, rMagin, lineMaxLen;

	if (navigator.appName=='Microsoft Internet Explorer') { lineMaxLen=25;endPadding=2; }
	else if (navigator.appName=='Netscape') { lineMaxLen=47;endPadding=0;}
	else { lineMaxLen=0; }

	strarr = new Array();
	strarr = str.split("\n");

	for (var i=0;i<strarr.length;i++) {
		strarr[i] = trim(strarr[i]);
		if (strByteLen(strarr[i]) > lineMaxLen) lineMaxLen = strByteLen(strarr[i]);
	}

	for (var i=0;i<strarr.length;i++) {
		lMargin = Math.ceil((lineMaxLen-strByteLen(strarr[i]))/2);
		rMargin = lineMaxLen-(strByteLen(strarr[i])+lMargin);
		if (lineMaxLen==strByteLen(strarr[i])) rMargin = rMargin + endPadding;
		if (strByteLen(strarr[i])>0) {
			strarr[i] = getBlankStr(lMargin) + strarr[i] + getBlankStr(rMargin);
		}
	}

	newStr = strarr.join("\n");
	return newStr;
}

function trim(str) {
	return str.replace(/(^\s*)|(\s*$)/g, "");
}

function strByteLen(str) {
	var strLen = 0;
	for(i=0;i<str.length;i++) {
		var cCode = str.charCodeAt(i);
		if (cCode > 128) {
			strLen = strLen+2;
		}else{
			strLen++;
		}
	}
	return strLen;
}

function getBlankStr(val) {
	var blankStr = "";
	for (var i=0;i<val;i++) blankStr = blankStr + " ";
	return blankStr;
}

function getDigit(val,len) {
	var blankStr = "";
	if (val.toString().length<len) {
		for (var i=0;i<(len-val.toString().length);i++) blankStr = blankStr + "0";
		return blankStr + val.toString();
	}else if (val.toString().length==len) {
		return val.toString();
	}
}

function removeOptions(obj) {
	if (obj) {
		for (var i=obj.length; i>0; i--) {
			obj.options[i] = null;
		}
		obj.selectedIndex = 0;
	}
	return true;
}

function selectOptions(obj,val) {
	if (obj) {
		for (var i=0; i<obj.length; i++) {
			if (obj.options[i].value==val) obj.selectedIndex=i;
		}
	}
	return true;
}

function addOptions(obj,val,text) {
	if (obj) {
		var NewOption = new Option();
		NewOption.value = val;
		NewOption.text = text;
		obj.add(NewOption);
	}
	return true;
}

function disableObj(obj,flag) {
	if (obj) {
		if (obj.type != "radio") {
			if (flag) obj.style.background='#D0D0D0';
			else obj.style.background='#FFFFFF';
		}
		obj.disabled = flag;
	}
	return true;
}

function commaSplit(srcNumber) {

	var txtNumber = '' + srcNumber;
	if (isNaN(txtNumber) || txtNumber == "") {
		//alert("숫자만 입력 하세요");
		//fieldName.select();
		return;
	} else {
		var rxSplit = new RegExp('([0-9])([0-9][0-9][0-9][,.])');
		var arrNumber = txtNumber.split('.');
		arrNumber[0] += '.';
		do {
			arrNumber[0] = arrNumber[0].replace(rxSplit, '$1,$2');
		} while (rxSplit.test(arrNumber[0]));
		if (arrNumber.length > 1) {
			return arrNumber.join('');
		} else {
			return arrNumber[0].split('.')[0];
		}
	}
}

function setComma(obj) {

	var str2  = obj.value;
	var re   = /,/g;
	var str = str2.replace(re,'');

	str+="";

	var objRegExp = new RegExp('(-?[0-9]+)([0-9]{3})');

	while(objRegExp.test(str)){
		str = str.replace(objRegExp, '$1,$2');
   }

	obj.value = str;
}

function test_input(form_name) {
	var form = eval("document."+form_name);
	for (var i=0;i<form.length;i++) {
		var obj = eval("document."+form_name+"["+ i +"]");
		if ((obj.type=="text")||(obj.type=="password")||(obj.type=="textarea")) {
			obj.value = "XX_" + i.toString();
		}else if (obj.type.match("select*")){
			obj.selectedIndex = (obj.options.length-1);
		}else if (obj.type=="radio"){
			var tmp = eval("document."+form_name+"."+ obj.name +"[0]");
			tmp.checked = true;
		}
	}
}


//쿠키생성 
function setCookie(cookieName,cookieValue) { 
	var argv = setCookie.arguments;
	var argc = setCookie.arguments.length;
	var expires = (argc > 2) ? argv[2] : null;	//쿠키허용일
	var path = (argc > 3) ? argv[3] : null;		//적용PATH
	var domain = (argc > 4) ? argv[4] : null;	//도메인
	var secure = (argc > 5) ? argv[5] : false;	// ..?
	
	document.cookie = cookieName + "=" + escape (cookieValue) +
	((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
	((path == null) ? "" : ("; path=" + path)) +
	((domain == null) ? "" : ("; domain=" + domain)) +
	((secure == true) ? "; secure" : "");	
} 

function deleteCookie(cookieName){ 
	if (document.cookie != "") { // 쿠키가 있다면, 
		thisCookie = document.cookie.split("; ") // 쿠키값을 ";" 로 분리하고 
		expireDate = new Date() // 새로운 expireDate 객체를 생성
		expireDate.setDate(expireDate.getDate()-1) // 유효기간의 날짜값을 오늘보다 하루적게(어제) 설정
		for (i=0; i<thisCookie.length; i++) { // 쿠키가 발견될때까지 찾아서 
			cArr = thisCookie[i].split("=");
			if(cArr[0]==cookieName){
				//쿠키명과 새로설정한 expireDate 값으로 쿠키를 다시 설정 
				setCookie(cookieName, cArr[1],expireDate,"/");
				//document.cookie = cookieName + "=" + cArr[1] + "; expires=" + expireDate.toGMTString();
			}
		 } 
	} //if
} 

function getCookie(name) {
	if(!document.cookie) return;
	var cArr=new Array();
	thisCookie = document.cookie.split("; ") // 쿠키값을 ";" 로 분리하고 
	
	for (i=0; i<thisCookie.length; i++) { 		
		cArr = thisCookie[i].split("=");
		if(name == cArr[0]){
			return cArr[1];
		}
	}	
}


