	/**********************************************************************************************************
'*	프로그램명 : JS_Function.js
'*	기능 : 공통으로 사용하는 자바스크립트 함수
'*  만든이 : 홍성일
'*  만든날짜 : 2007-11-26
'*	마지막 수정일 : 
'*	마지막 수정자 : 
'*	버젼 : 1.0
'*********************************************************************************************************/

//확인창 띄우기 - 삭제등 확인하는 팝업을 다르게 띄울수 있도록 이 함수를 사용한다.
//confirm_popup("버튼수(1/2)", "메세지", "색상(blue/red등)", "가로창사이즈", "세로창사이즈")
function confirm_popup(button_count, err_message, info_kind, swidth, sheight){

	if(button_count==1){
		alert(err_message);
		return true;
	}else{
		if(confirm(err_message)){
			return true;
		}else{
			return false;
		}
	}
}

//showModalDialog
function confirm_Dialog(button_count, message1, message2, send_url, return_url, gubun){
	if(confirm(message1)){
		var answer = window.showModalDialog(send_url,"message","resizable:no;status:no;dialogWidth:1px;dialogHeight:1px;dialogLeft:1px;dialogTop:1px");
		alert(message2);
		if(button_count==1){
			location.reload();
		}else{
			location.href=return_url;
		}
	}else{
		return false;
	}
}

//팝업창 열기
function onPopup( fileName, winName, winWidth, winHeight, winPosTop, winPosLeft, Scroll ){

	var winOpt = "width="+ winWidth +", height="+ winHeight +", top="+ winPosTop +", left="+ winPosLeft +", scrollbars="+ Scroll +", menubar=No, resizable=No, status=No, toolbar=No";

	var Wins = window.open(fileName, winName, winOpt + "");

	 Wins.focus();
}


function pop(url,popName, swidth, sheight){
	var WIP = window.open(url,popName,"width="+swidth+", height="+sheight+", scrollbars=yes, top=0, left=0")
	WIP.focus();
}

function fitWindowSize() {
	window.resizeTo(500, 500);
	width = 500 - (document.body.clientWidth -  document.images[0].width);
	height = 500 - (document.body.clientHeight -  document.images[0].height);
	window.resizeTo(width, height);
}


function AlertMove(send_url){
	location.href=send_url;
}

// 필수 입력값 유무체크한후 경고창 뛰우기
//inputCheck("폼이름", "엘리먼트이름", "항목", "문자/숫자/한글/영문/영문,숫자/이메일/전화번호(S,N,K,E,EN,EM,T)", ["길이구분(S:small, B:big, F:fix, R:range)"], [최소길이], [최대길이], "필수여부(Y/N)")
//if(!inputCheck("form1", "id", "아이디", "EN", "R", "4", "16", "Y")){return false;}
//if(!inputCheck("form1", "pwd", "패스워드", "EN", "R", "4", "16", "Y")){return false;}
//if(!inputCheck("form1", "aa", "셀렉트", "S", "", "", "", "Y")){return false;}
//if(!inputCheck("form1", "bb", "체크", "S", "", "", "", "Y")){return false;}
//if(!inputCheck("form1", "cc", "라디오", "S", "", "", "", "Y")){return false;}
function inputCheck(form_name,elm,msg,strORNum,len_gubun,s_len,b_len,essential){
	if(!eval("document."+ form_name +"."+ elm)){
		confirm_popup(1,elm + " 엘리먼트가 정의되지 않았습니다.", "red", "", "");
		return false;
	}
	var form = eval("document."+ form_name +"."+ elm);
	if(form.type=="text" || form.type=="textarea" || form.type=="password"){
	//텍스트 박스, 텍스트 영역
		var inputStr = form.value;
		if(essential=="Y"){
			if (inputStr==""){
				confirm_popup(1,msg + " 항목은 반드시 입력하셔야 됩니다.", "red", "", "");
				form.value="";
				try{
					form.focus();
				}catch(e){
				
				}
				return false;
			}
		}else{
			if (inputStr==""){
				return true;
			}
		}
		
		if(!FuncCheck(strORNum,form_name,elm,msg)){return false;}

		if (len_gubun!=""){
			if(!lenCheck(form_name, elm, msg ,len_gubun,s_len,b_len)){return false;}
		}
	}else if(form.type==undefined || form.type=="radio"){
	//라디오 버튼
		if(!form.length){
			confirm_popup(1,form.type, "red", "", "");
			return false;
		}
		var elm_len = form.length;
		var ok = 0;
		if(elm_len<=0){
			confirm_popup(1,elm + " 엘리먼트가 정의되지 않았습니다.", "red", "", "");
			return false;
		}
		for(var i=0;i<elm_len;i++) { 
			if (form[i].checked) { 
				ok = i+1;
			}
		}

		if(ok < 1) { 	
			confirm_popup(1,msg+" 선택하세요!", "red", "", "");
			return false;
		}
	}else if(form.type=="checkbox"){
	//체크박스
		if(essential=="Y"){
			if(!form.checked){
				confirm_popup(1,msg + " 항목은 반드시 체크하셔야 됩니다.", "red", "", "");
				return false;
			}
		}
	}else if(form.type.indexOf("select") != -1){
	//셀렉트 박스
		var inputStr = form.options[form.selectedIndex].value;
		if(essential=="Y"){
			if (inputStr==""){
				confirm_popup(1,msg + " 항목은 반드시 선택하셔야 됩니다.", "red", "", "");
				form.value="";
				form.focus();
				return false;
			}
		}else{
			if (inputStr==""){
				return true;
			}
		}

		if(!FuncCheck(strORNum,form_name,elm,msg)){return false;}

		if (len_gubun!=""){
			if(!lenCheck(form_name, elm, msg ,len_gubun,s_len,b_len)){return false;}
		}
	}else{
	//그외
		confirm_popup(1, form.type, "red", "", "");
		return false;
	}
	return true;
}

//함수값체크
function FuncCheck(value,form_name,elm,msg){
	switch (value){
		case "S":
			//문자
			break;
		case "N":
			//숫자
			if(!IsNumber(form_name,elm,msg)){return false;}
			break;
		case "K":
			//한글
			if(!IsKor(form_name,elm,msg)){return false;}
			break;
		case "E":
			//영문
			if(!IsEng(form_name,elm,msg)){return false;}
			break;
		case "EN":
			//영문,숫자
			if(!IsNumEng(form_name,elm,msg)){return false;}
			break;
		case "EM":
			//이메일
			if(!IsEmail(form_name,elm,msg)){return false;}
			break;
		case "T":
			//전화번호
			if(!IsPhone(form_name,elm,msg)){return false;}
			break;
		default:
	}
	return true;
}

//입력값이 숫자인지 체크
function IsNumber(form_name,elm,msg) {
	//사용법 IsNumber(폼이름, 엘리먼트이름, 유효하지 않을경우 메세지)
	var form = eval("document."+ form_name +"."+ elm);
	for(var i = 0; i < form.value.length; i++) {
		var chr = form.value.substr(i,1);
		if(chr < '0' || chr > '9') {            
			confirm_popup(1,msg + " 항목은 숫자로 입력해 주세요.", "red", "", "");
			form.focus();
			return false;
		}
	}
	return true;   
}


//길이체크
function lenCheck(form_name, elm, msg ,len_gubun,s_len,b_len){
//사용법 lenCheck("폼이름", "엘리먼트이름", "항목", "길이구분(S:small, B:big, F:fix, R:range)", [최소길이], [최대길이])

	var form = eval("document."+ form_name +"."+ elm);
	var inputStr = form.value
	if (len_gubun=="S"){	//보다 작은 값
		if (inputStr.length > parseInt(s_len)){
			confirm_popup(1,msg + " 항목은 " + s_len + "자 이하입니다.", "red", "", "");
			form.focus();
			return false;
		}
	}else if (len_gubun=="B"){	//보다 큰 값
		if (inputStr.length < parseInt(s_len)){
			confirm_popup(1,msg + " 항목은 " + s_len + "자 이상입니다.", "red", "", "");
			form.focus();
			return false;
		}
	}else if (len_gubun=="F"){	//고정된 값
		if (inputStr.length != parseInt(s_len)){
			confirm_popup(1,msg + " 항목은 " + s_len + "자 입니다.", "red", "", "");
			form.focus();
			return false;
		}
	}else if (len_gubun=="R"){	//범위 값
		if (inputStr.length < parseInt(s_len) || inputStr.length > parseInt(b_len)){
			confirm_popup(1,msg + " 항목은 " + s_len + "자 이상 "+ b_len +"자 이하 입니다.", "red", "", "");
			form.focus();
			return false;
		}
	}
	return true;
}


//한글만 입력
//사용법 IsKor(폼이름, 엘리먼트이름, 항목)
function IsKor(form_name,elm,msg) {
	var form = eval("document."+ form_name +"."+ elm);
	var inputStr = form.value;
	for(var i = 0; i < inputStr.length; i++) {
		 var chr = inputStr.substr(i,1);         
		 if ((chr > '0' && chr < '9') || (chr > 'a' && chr < 'z') || (chr > 'A' && chr < 'Z')) {
			confirm_popup(1,msg + " 항목은 한글로 입력해 주세요.", "red", "", "");
			form.focus();
			return false;
		 }
	}
	return true;
}


//영문 입력
//사용법 IsEng(폼이름, 엘리먼트이름, 항목)
function IsEng(form_name,elm,msg) {
	var form = eval("document."+ form_name +"."+ elm);
	var inputStr = form.value
	for(var i = 0; i < inputStr.length; i++) {
		 var chr = form.value.substr(i,1);         
		 if ((chr < 'a' || chr > 'z') && (chr < 'A' || chr > 'Z')) {
			confirm_popup(1,msg + " 항목은 영문으로 입력해 주세요.", "red", "", "");
			form.focus();
			return false;
		 }
	}
	return true;   
}

//영문 숫자조합 입력
//사용법 IsNumEng(폼이름, 엘리먼트이름, 항목)
function IsNumEng(form_name,elm,msg) {
	var form = eval("document."+ form_name +"."+ elm);
	var inputStr = form.value
	for(var i = 0; i < inputStr.length; i++) {
		 var chr = form.value.substr(i,1);         
		 if ((chr < '0' || chr > '9') && (chr < 'a' || chr > 'z') && (chr < 'A' || chr > 'Z')) {
			confirm_popup(1,msg + " 항목은 영문 또는 영문/숫자 조합으로 입력해 주세요.", "red", "", "");
			form.focus();
			return false;
		 }
	}
	return true;   
}


//2차메뉴 열림/닫힘
var old = '';
function menu(name){
	submenu=eval("submenu_"+name+".style");
	if(old!=submenu)
	{
		if(old!=''){
			old.display='none';
		}
		submenu.display='block';
		old=submenu;
	}else	{
		submenu.display='none';
		old='';
	}
}

//onKeyPress숫자입력
function onlyNumber() {
	if((event.keyCode<48) || (event.keyCode>57)) {
		event.returnValue = false;
	}
}
function onlyReal(obj) {
	for(var i = 0; i < obj.value.length; i++) {
		var chr = obj.value.substr(i,1);
		
		if ( chr !="." && (chr < '0' || chr > '9') ) {            
			confirm_popup(1," 요율은 숫자 와 . 으로만 입력해 주세요.", "red", "", "");
			obj.value = "";
			obj.focus();
			return false;
		}
	}
}
String.prototype.trim = function() {  
       return this.replace(/^\s+|\s+$/g,"");  
}  
    
String.prototype.ltrim = function() {  
       return this.replace(/^\s+/,"");     
}  
     
String.prototype.rtrim = function() {  
       return this.replace(/\s+$/,"");     
}  
function nextFocus(obj,n_obj,l_obj){
	if (obj.value.length == l_obj) {
		document.all(n_obj).focus();
	} 
}
