  /*******************************************************************
  *  1. 함수명    : Open_Win
  *  2. 입력값    : url:주소, xsize:이미지 너비, ysize:이미지 높이, scroll:스크롤여부[yes,no]
  *  3. 리턴값    : 팝업
  *  4. 내용      : 팝업 띄우기
  *  5. 특이사항    :
  ********************************************************************/
  // 지정한 크기에 맞게 윈도우창 띄우기(url:주소, xsize:이미지 너비, ysize:이미지 높이, scroll:스크롤여부[yes,no])
  function Open_Win(name,url,xsize,ysize,scroll){
    cx = window.screen.width;
    cy = window.screen.height;
    posx = (cx-xsize)/2;
    posy = (cy-ysize)/2;
    width = xsize;
    height = ysize;
    if (xsize>cx-100) width=cx-100;
    if (ysize>cy-100) height=cy-100;
    win = open(url,name,"top="+posy+",left="+posx+",width="+width+",height="+height+",scrollbars="+scroll+",toolbar=no,directories=no,status=yes,resize=no,menubar=no");
    return win;
  }

  //소수점 둘째자리까지 입력가능
  function cutNumber(obj){
    var nums = obj.value;
    var dec = nums.split(".");
    if(dec.length == 2){
      if(dec[1].length > 2) obj.value = nums.substring(0, (nums.length-1));
    }
  }

  //자릿수 체크 다음 입력폼으로
  function chknext(val, size, nextobj){
    if(val.length == size) document.getElementById(nextobj).focus();
  }

  /*******************************************************************
  *  1. 함수명    : checkboxChk
  *  2. 입력값    : 라디오 폼
  *  3. 리턴값    : 선택됐으면 true 그외 false
  *  4. 내용      : 선택된 라디오버튼이 있는지 체크
  *  5. 특이사항    :
  ********************************************************************/
  function checkboxChk(obj){
    if(obj == null) return false;
    var lng = obj.length;
    if (lng > 1){
      for (var i = 0; i < lng; i++) {
        if(obj[i].checked){ return true; }
      }
    }else{
      if(obj.checked){ return true; }
    }
    return false;
  }

  function textboxChk(obj){
    if(obj == null) return false;
    var lng = obj.length;
    if (lng > 1){
      for (var i = 0; i < lng; i++) {
        if(obj[i].value == ""){ return true; }
      }
    }else{
      if(obj.value == ""){ return true; }
    }
    return false;
  }

  /*******************************************************************
  *  1. 함수명    : onecheckboxChk
  *  2. 입력값    : 라디오 폼
  *  3. 리턴값    : 선택됐으면 true 그외 false
  *  4. 내용      : 선택된 라디오버튼이 있는지 체크
  *  5. 특이사항    :
  ********************************************************************/
  function checkboxChkLength(obj){
    if(obj == null) return 0;
    var lng = obj.length;
    var chk = 0;
    if (lng > 1){
      for (var i = 0; i < lng; i++) {
        if (obj[i].checked) chk++;
      }
    }else{
      if (obj.checked) chk++;
    }
    return chk;
  }

  /*******************************************************************
  *  1. 함수명    : onecheckboxChk
  *  2. 입력값    : 라디오 폼
  *  3. 리턴값    : 선택됐으면 true 그외 false
  *  4. 내용      : 선택된 라디오버튼이 있는지 체크
  *  5. 특이사항    :
  ********************************************************************/
  function checkboxChkVal(obj){
    if(obj == null) return "";
    var lng = obj.length;
    var rth = "";
    if (lng > 1){
      for(var i = 0; i < lng; i++) {
        if(obj[i].checked) rth += obj[i].value + ",";
      }
    }else{
      if(obj.checked) rth += obj.value + ",";
    }
    return rth;
  }

  //라디오선택 값리턴
  function radioChkVal(obj){
    if(obj == null) return "";
    var lng = obj.length;
    var rth = "";
    if (lng > 1){
      for(var i = 0; i < lng; i++) {
        if(obj[i].checked) rth = obj[i].value;
      }
    }else{
      if(obj.checked) rth = obj.value;
    }
    return rth;
  }

  /*******************************************************************
  *  1. 함수명    : toNumisTw
  *  2. 입력값    : 숫자 폼
  *  3. 리턴값    : 두자리 숫자값
  *  4. 내용      : 1~9 한자리 숫자를 01~09 로 변경
  *  5. 특이사항    :
  ********************************************************************/
  function toNumisTw(val){
    var rtn = val;
    if( Number(val) < 10 ) rtn = "0" + Number(val);
    return rtn;
  }

  //ajax 사용시 한글문제 처리 인코딩
  function ajaxEncode(val){
    return escape(encodeURIComponent(val));
  }

  /*******************************************************************
  *  1. 함수명    :  onlyNumber
  *  2. 입력값    :
  *  3. 리턴값    :  event -> true false
  *  4. 내용      :  숫자만 기입받게 하는 방법
  *  5. 특이사항    :  style="ime-mode:disabled"
  ********************************************************************/
  function onlyNumber(){
    //alert(event.keyCode);
    flag = false;
    if((event.keyCode >= 48) && (event.keyCode <= 57) || (event.keyCode >= 96) && (event.keyCode <= 105)){
      //숫자
      flag = true;
    }else if((event.keyCode == 46) || (event.keyCode == 8)){
      //delete, backspace
      flag = true;
    }else if((event.keyCode == 9) || (event.keyCode == 37) || (event.keyCode == 39) || (event.keyCode == 35) || (event.keyCode == 36)){
      //tab, <-, -> , home, end
      flag = true;
    }
    event.returnValue=flag;
  }

  /*******************************************************************
  *  1. 함수명    :  onlyNumber
  *  2. 입력값    :
  *  3. 리턴값    :  event -> true false
  *  4. 내용      :  숫자만 기입받게 하는 방법
  *  5. 특이사항    :  style="ime-mode:disabled"
  ********************************************************************/
  function onlyNumber2(){
    //alert(event.keyCode);
    flag = false;
    if((event.keyCode >= 48) && (event.keyCode <= 57) || (event.keyCode >= 96) && (event.keyCode <= 105)){
      //숫자
      flag = true;
    }else if((event.keyCode == 46) || (event.keyCode == 8)){
      //delete, backspace
      flag = true;
    }else if((event.keyCode == 9) || (event.keyCode == 37) || (event.keyCode == 39) || (event.keyCode == 35) || (event.keyCode == 36)){
      //tab, <-, -> , home, end
      flag = true;
    }else if((event.keyCode == 110) || (event.keyCode == 190) || (event.keyCode == 189) || (event.keyCode == 109)){
      //., -
      flag = true;
    }
    event.returnValue=flag;
  }

  /*******************************************************************
  *  1. 함수명    :  onlyKor
  *  2. 입력값    :
  *  3. 리턴값    :  event -> true false
  *  4. 내용      :  한글만 기입받게 하는 방법
  *  5. 특이사항    :  style="ime-mode:disabled"
  ********************************************************************/
  function onlyKor(){
    //alert(event.keyCode);
    flag = false;
    if((event.keyCode >= 48) && (event.keyCode <= 57) || (event.keyCode >= 96) && (event.keyCode <= 105)){
      //숫자
      flag = false;
    }else if((event.keyCode >= 65) && (event.keyCode <= 90)){
      //영문
      alert("한글로만 입력가능합니다."); //예약자 입력에 필요해 추가
      flag = false;
    }else if((event.keyCode >= 186) && (event.keyCode <= 192) || (event.keyCode >= 219) && (event.keyCode <= 222)){
      //특수문자~_+|}{:">?
      flag = false;
    }else if((event.keyCode >= 110) && (event.keyCode <= 111) || (event.keyCode >= 106) && (event.keyCode <= 109)){
      //특수문자/*-+
      flag = false;
    }else if((event.keyCode == 46) || (event.keyCode == 8)){
      //delete, backspace
      flag = true;
    }else if((event.keyCode == 9) || (event.keyCode == 37) || (event.keyCode == 39)){
      //tab, <-, ->
      flag = true;
    }else{
      flag = true;
    }
    event.returnValue=flag;
  }

  /*******************************************************************
  *  1. 함수명    : File_Ext_Check
  *  2. 입력값    : 파일 이름
  *  3. 리턴값    : 정상 파일 true 그외 false
  *  4. 내용      : 선택한 파일의 확장자 체크
  *  5. 특이사항    : File_Ext_Return() 호출
  ********************************************************************/
  function File_Ext_Check(str){
    var file_ext = File_Ext_Return(str);
    var Ext_arr = "jsp,cgi,asp,php,exe,tml,htm,html,bak,inc,bat";
    var Sp_Ext_arr = Ext_arr.split(",");
    for(var i=0; i < Sp_Ext_arr.length; i++){
      if(Sp_Ext_arr[i] == file_ext){
        i = Sp_Ext_arr.length;
        alert(file_ext + " 파일은 올릴 수 없습니다.");
        return false;
      }
    }
    return true;
  }

  /*******************************************************************
  *  1. 함수명    : File_Ext_Return
  *  2. 입력값    : 파일 이름
  *  3. 리턴값    : 파일 확장자 ex: jpg
  *  4. 내용      : 파일의 확장자 추출
  *  5. 특이사항    :
  ********************************************************************/
  function File_Ext_Return(filepath){
    var sp_filepath = filepath.split("\\");
    var tot_len = sp_filepath.length;
    var filename = sp_filepath[tot_len-1];
    var file_ext = filename.slice(filename.lastIndexOf(".")+1).toLowerCase();
    return file_ext;
  }

  //사업자등록번호 유효성 체크
  function check_BizRegNo(input){
    var num= input;
    var w_c,w_e,w_f,w_tot;
    w_c=num.charAt(8)*5;       // 9번째자리의 숫자에 5를 곱한다.
    w_e=parseInt((w_c/10),10); // 10으로 나누고 10진수 형태의 숫자형으로 만든당..나눈몫
    w_f=w_c % 10;              // 10으로 나눈 나머지....
    w_tot=num.charAt(0)*1;
    w_tot+=num.charAt(1)*3;
    w_tot+=num.charAt(2)*7;
    w_tot+=num.charAt(3)*1;
    w_tot+=num.charAt(4)*3;
    w_tot+=num.charAt(5)*7;
    w_tot+=num.charAt(6)*1;
    w_tot+=num.charAt(7)*3;
    w_tot+=num.charAt(9)*1;
    w_tot+=(w_e+w_f);
    if((w_tot % 10)){ // 10으로 나누어 지면 true를 그렇지 않으면 false를 반환합니당..
      return false;
    }else if(num == "0000000000"){
      return false;
    }else{
      return true;
    }
  }

  //텍스트박스스타일
  function inFocus1(i) {
    (i).style.border='2px solid #333333';
  }
  function outFocus1(i) {
    (i).style.border='1px solid #e4e4e4';
  }

  //형식체크
  function isValidFormat(input,format) {
    if (input.search(format) != -1) {
      return true; //올바른 포맷 형식
    }
    return false;
  }

  //이메일체크
  function isValidEmail(input) {
    var arrStr = new Array();
    arrStr = input.value.split(';');
    for( var i=0;i<arrStr.length;i++ ) {
      var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;
      if( !isValidFormat(arrStr[i],format) ) {
        return false;
      }
    }
    return true;
  }

  //날자입력시
  function dateChk(obj){
    var val = obj.value;
    val = val.replace(/\./gi,"");
    if(val.length >= 6){
      val = val.substring(0,4) + "." + val.substring(4,6);
      obj.value = val;
    }
  }

  //글자수 체크
  function checkByte(val){
    var onechar;
    var tcount = 0;
    for (k=0;k<val.length;k++) {
      onechar = val.charAt(k);
      if(escape(onechar).length > 4) tcount += 2;
      else if(onechar!='\r') tcount++;
    }
    return tcount;
  }

  //글자크기 체크
  function strlengthChk(id, lng){
    try{
      var obj = document.getElementById(id);
      if((event.keyCode == 46) || (event.keyCode == 8)){  //delete, backspace
        event.returnValue = true;
      }else if((event.keyCode == 9) || (event.keyCode == 37) || (event.keyCode == 39) || (event.keyCode == 35) || (event.keyCode == 36)){ //tab, <-, -> , home, end
        event.returnValue = true;
      }else if(Number(getByteLength(obj.value)) >= lng)  event.returnValue=false;
      else event.returnValue=true;
    }catch(e){}
  }

  //문자에 대한 byte 길이 구하기
  function getByteLength(s){
    var len = 0;
    if(s == null) return 0;
    for(var i=0;i<s.length;i++){
      var c = escape(s.charAt(i));
      if(c.length == 1) len ++;
      else if(c.indexOf("%u") != -1) len += 2;
      else if(c.indexOf("%") != -1) len += c.length/3;
    }
    return len;
  }

