function fgn_no_chksum(reg_no) {
    var sum = 0;
    var odd = 0;
    
    buf = new Array(13);
    for (i = 0; i < 13; i++) buf[i] = parseInt(reg_no.charAt(i));

    odd = buf[7]*10 + buf[8];
    
    if (odd%2 != 0) {
      return false;
    }

    if ((buf[11] != 6)&&(buf[11] != 7)&&(buf[11] != 8)&&(buf[11] != 9)) {
      return false;
    }
    	
    multipliers = [2,3,4,5,6,7,8,9,2,3,4,5];
    for (i = 0, sum = 0; i < 12; i++) sum += (buf[i] *= multipliers[i]);


    sum=11-(sum%11);
    
    if (sum>=10) sum-=10;

    sum += 2;

    if (sum>=10) sum-=10;

    if ( sum != buf[12]) {
        return false;
    }
    else {
        return true;
    }
}

function ChkForeign(form){
	var fgn_reg_no = form.f_ssn1.value + form.f_ssn2.value;

	if (fgn_reg_no == ''){
		alert('¿Ü±¹ÀÎµî·Ï¹øÈ£¸¦ ÀÔ·ÂÇÏ½Ê½Ã¿À.');
		return false;
	}

	if (fgn_reg_no.length != 13) {
		alert('¿Ü±¹ÀÎµî·Ï¹øÈ£ ÀÚ¸®¼ö°¡ ¸ÂÁö ¾Ê½À´Ï´Ù.');
		return false;
	}
        if ((fgn_reg_no.charAt(6) == "5") || (fgn_reg_no.charAt(6) == "6"))
        {
           birthYear = "19";
        }
        else if ((fgn_reg_no.charAt(6) == "7") || (fgn_reg_no.charAt(6) == "8"))
        {
           birthYear = "20";
        }
        else if ((fgn_reg_no.charAt(6) == "9") || (fgn_reg_no.charAt(6) == "0"))
        {
           birthYear = "18";
        }
        else
        {
          alert("¿Ü±¹ÀÎ µî·Ï¹øÈ£¿¡ ¿À·ù°¡ ÀÖ½À´Ï´Ù. ´Ù½Ã È®ÀÎÇÏ½Ê½Ã¿À.");
          return false;
        }        
        birthYear += fgn_reg_no.substr(0, 2);
        birthMonth = fgn_reg_no.substr(2, 2) - 1;
        birthDate = fgn_reg_no.substr(4, 2);
        birth = new Date(birthYear, birthMonth, birthDate);
        
        if ( birth.getYear() % 100 != fgn_reg_no.substr(0, 2) ||
             birth.getMonth() != birthMonth ||
             birth.getDate() != birthDate) {
          alert('»ý³â¿ùÀÏ¿¡ ¿À·ù°¡ ÀÖ½À´Ï´Ù. ´Ù½Ã È®ÀÎÇÏ½Ê½Ã¿À.');
          return false;
        }
        
        if (fgn_no_chksum(fgn_reg_no) == false){
        
            alert('¿Ü±¹ÀÎµî·Ï¹øÈ£¿¡ ¿À·ù°¡ ÀÖ½À´Ï´Ù. ´Ù½Ã È®ÀÎÇÏ½Ê½Ã¿À.');
            return false;
        }
		return true;
    
}

function ChkBlank(str) {
	var Reg = /^[ ]*$/;
	if(!str) return false;
	if(Reg.test(str)) {
		return true;
	}else{
		return false;
	}
}
function ChkHangul(str) {
	if(!str) return false;
	if(str.charCodeAt(0) > 128) {
		return true;
	}else{
		return false;
	}
}
function ChkLength(str,chklen) {
	var tmp_str = "";
	var str_len = 0;
	for(i=0; i<str.length; i++) {
		tmp_str = str.substring(i,i+1);
		if(ChkHangul(tmp_str)) {
			str_len = str_len + 2;
		}else{
			str_len = str_len +1;
		}
		if(str_len > chklen) {
			break;
		}
	}
	if(str_len > chklen) {
		return true;
	}else{
		return false;
	}
}
function trim(s)
{
        var i, j;
        var ns;
	var strlen = s.length;
        for (i = 0, ns = ''; i < strlen; i++) if (s.charAt(i) != ' ')  break;
        for (j = strlen - 1; j >= 0; j--) if (s.charAt(j) != ' ')  break;
	if(i > j) return '';

        ns = s.substring(i, j+1);
        return ns;
}

function rtrim(s)
{
        var j;
        var ns;
        for (j = s.length - 1; j >= 0; j--) if (s.charAt(j) != ' ')  break;
        ns = s.substring(0, j + 1);
        return ns;
}

/* check mail format */
function CheckEmail(value) 
{
	var tmp_input = value;
	tmp_input = tmp_input.replace(/(,| |\t)+$/, "");
	tmp_input = tmp_input.replace(/\s+/g, "");
	var emailpattern	= /[-!#$%&'*+\/^_~{}|0-9a-zA-Z]+(\.[-!#$%&'*+\/^_~{}|0-9a-zA-Z]+)*@[-!#$%&'*+\/^_~{}|0-9a-zA-Z]+(\.[-!#$%&'*+\/^_~{}|0-9a-zA-Z]+)*/;	
	var email_array		= tmp_input.split(",");
	var email_count		= email_array.length;
	var t;
	var result;
	var b_rtn_value = true;
	for (var i = 0; i < email_count; i++)
	{
		t = str_extract_java(email_array[i], "<", ">");
		result = t.match(emailpattern);

    	if (result == null)
		b_rtn_value = false;
		else if (result[0] != t)				
		b_rtn_value = false;			

	}
    return b_rtn_value;		
}

/* µÎ°³ÀÇ ¹®ÀÚ¿­ »çÀÌÀÇ ¹®ÀåÀ» °ËÃâÇØ ³»´Â ÇÔ¼ö */
function str_extract_java(value, start, end)
{
    var tmp;
	var stStr = eval("/"+start+"/");
	var endStr = eval("/["+end+" ]+/g");

	if ((value.search(stStr)) == -1)
		return value;

	tmp = value.split(start);
	tmp = tmp[1];
	tmp = tmp.replace(endStr, "");

	return tmp;
}

/*

function CheckEmail(email)
{  
	var filter=/^.+@.+\..{3,4}$/;

	if(!filter.test(email)) return false;
	if(IsHangul(email) == true) return false;
	return true;

}
*/




function GetCookie(sName)
{
  var aCookie = document.cookie.split(';');
  for (var i=0; i < aCookie.length; i++)
  {
	var aCrumb = aCookie[i].split('=');
	if (sName == trim(aCrumb[0])) {
	  return unescape(aCrumb[1]);
	}
  }

  return null;
}



function CheckNum()
{
	if(event.keyCode < 48 || event.keyCode > 57) event.keyCode=null;
}

function CheckSpecialChars()
{
        var ch = event.keyCode;

        if((ch >= 49 && ch <= 58) || (ch >= 65 && ch <= 90) || (ch >= 97 && ch <= 122)) return;
        else event.keyCode = null;
}


function IsNumeric(t) 
{
	var i,j;
	var Digit = '1234567890'
	astr = Digit;

	if(t.length == 0) return(false);
	if (astr.length > 1) {
		for(i=0;i<t.length;i++) {
			if(astr.indexOf(t.substring(i,i+1)) < 0)  {
				j=1;
				return(false);
			}
		}
	}
	return(t);
}


function IsContinueNo(t)
{
	var i;
	var cont_flag=false;
	var next='';

	for(i=0; i<t.length-1; i++) {
		next = parseInt(t.substring(i, i+1)) + 1;
		if(t.substring(i+1, i+2) == next) cont_flag = true;
		else return(false); 
	}
	return(cont_flag);
}

function WhiteChk(strValue) {
  var flag=true;
	if (strValue!="") {
		for (var i=0; i < strValue.length; i++) {
			if (strValue.charAt(i) == " ") {
			  flag=false;
			  break;
			}
		}
	}
	return flag;
}


function HaveSpecialChars(t)
{
        var i,j;

        for(i=0;i<t.length;i++) {
                ch = t.substring(i, i+1);
                if((ch >= ' ' && ch <= '/') || (ch >= ':' && ch <= '@') || (ch >= '[' && ch <= '`') || (ch >= '{' && ch <= '~')) return(true);
        }
        return(false);
}


function IsAlphaNumeric(t)
{
	var i,j;

	for(i=0;i<t.length;i++) {
		ch = t.substring(i, i+1);
		if((ch >= '0' && ch <= '9') || (ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <= 'z')) j=0;
                else return(false);
	}
	return(true);
}


function CheckEmail2(email)
{
        myreg = /(\w)@\w.\w.\w/;
	if(!myreg.test(email)) return false;

	if(IsHangul(email) == true) return(false); 

    	return true;
}



function IsHangul(str)
{
   
	for (i = 0; i < str.length; i++) {
		ch = str.substring(i, i+1);
		if (ch < ' ' || ch > '~') return(true);
	}
	return(false);
}

function is_lunar(year) {
  if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))
    return true;
  else
    return false;
}

function CheckJoomin(ssn)
{
	if(!IsNumeric(ssn)) return false;

    	var year   = parseInt(ssn.substr(0,2));
    	var month  = parseInt(ssn.substr(2,2));
    	var day    = parseInt(ssn.substr(4,2));
    	var gender = parseInt(ssn.charAt(6));

	if(ssn.substr(2,2).charAt(0) == "0") month = parseInt(ssn.substr(2,2).charAt(1));
	if(ssn.substr(4,2).charAt(0) == "0") day = parseInt(ssn.substr(4,2).charAt(1));

	if ( month < 1 || month > 12 || day < 1 || gender < 1 || gender > 4 ) return false;

    	if(month==2) {
       		year += gender<3 ? 1900 : 2000;
        	if(is_lunar(year)) {
            		if(day > 29) return false;
        	} else {
            		if(day > 28) return false;
        	}
    	} else {
        	var arrayOfLasts = new Array(31,29,31,30,31,30,31,31,30,31,30,31);
        	if(day > arrayOfLasts[month-1]) return false;
    	}
	
	var key = "234567892345";
	var total = 0;
	for(var i=0; i<12; i++)
	{
		total = total + ssn.charAt(i)*key.charAt(i);
	}
	total = (11 - (total % 11)) % 10;
	
	if(ssn.charAt(12) != total)
	{
		return false;
	}
	
	return true;
}

function hexa(numb){
  var nb1=Math.floor(numb/16);  // 16À¸·Î ³ª´« ¼Ò¼öÁ¡ ¾ø´Â Á¤¼ö
  var nb2=numb%16;              // 16À¸·Î ³ª´©°í ³ª¸ÓÁö
  var chr = convert(nb1);
  var str=""+chr;
  chr = convert(nb2);
  str+=chr;
  return(str);
}

function convert(nr){
  var chr;
  if (nr==10){chr="A"}
  else if (nr==11){chr="B"}
  else if (nr==12){chr="C"}
  else if (nr==13){chr="D"}
  else if (nr==14){chr="E"}
  else if (nr==15){chr="F"}
  else {chr=nr;}
  return(chr);
}

function CheckSrhString(str)
{
	if(str.indexOf("\"") != -1 || str.indexOf("'") != -1) return false;
	return true;
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

