function Validate(){}

// ¸ðµç ±ÛÀÚ°¡ ¾ËÆÄºª/space ÀÌ¸é true
Validate.prototype.isOnlyAlpabetic = function(str)
{
	var invalidCharactersRegExp = /[^a-z ]/i;
	var isValid = ! (invalidCharactersRegExp.test(str));
	return isValid;
}


// ¸ðµç ±ÛÀÚ°¡ ¾ËÆÄºªnumeric ÀÌ¸é true
Validate.prototype.isAlpaNumeric = function(str)
{
	var invalidCharactersRegExp = /[^a-z0-9.,;%$#@& ]/i;
	var isValid = ! (invalidCharactersRegExp.test(str));
	return isValid;
}

// ¸ðµç ±ÛÀÚ°¡ spaceÀÎ °æ¿ì true
Validate.prototype.isAllSpace = function(str)
{
	var invalidCharactersRegExp = /[^ ]/;
	var isValid = ! (invalidCharactersRegExp.test(str));
	return isValid;
}

// ÇÑ±ÛÀº 1ÀÚÀÌ»ó, ¿µ¹®Àº 2ÀÚÀÌ»óÀÎ °æ¿ì true
Validate.prototype.isCheckSearchCode = function(str)
{
	var isValid = false;
	if(!this.isAllSpace(str)){
		if(str.length >= 1){
			if(this.isOnlyAlpabetic(str)){ if(str.length >=2 ){ isValid = true; } }
			else{ isValid = true; }				
		}
	}
	return isValid;
}

//  ¼ýÀÚ¸¸ true
Validate.prototype.isOnlyNumeric = function(str)
{
	var invalidCharactersRegExp = /[^\d]/;
	var isValid = ! (invalidCharactersRegExp.test(str));
	return isValid;
}

//  ³¯Â¥¸¸ true
Validate.prototype.isOnlyDate = function(yyyy, mm, dd)
{
	var isValid = true;
	var enteredDate = new Date(dd + " " + Validate.prototype.MMtoMon(mm) + " " + yyyy);
	if(enteredDate.getDate() != dd)	{	isValid = false ; }
	return isValid;
}

//  ¸ÞÀÏ true
Validate.prototype.isValidEmail = function(email)
{
	var invalidCharactersRegExp = /^\w([a-zA-Z_0-9\-\.])*@\w(\.?[-\w])*\.([a-z]{3}(\.[a-z]{2})?|[a-z]{2}(\.[a-z]{2})?)$/i;
	var isValid = invalidCharactersRegExp.test(email);
	return isValid;
}


//  ÈÞ´ëÆù true
Validate.prototype.isValidCellPhone = function(cellphone)
{
	if(cellphone.substring(0,3) != "010" && cellphone.substring(0,3) != "011" && cellphone.substring(0,3) != "016" && cellphone.substring(0,3) != "017" && cellphone.substring(0,3) != "018" && cellphone.substring(0,3) != "019") {
		return false ;
	} else {
		return true ;
	}
}

//  ¿ùÀÌ ¸ÂÀ¸¸é true
Validate.prototype.isValidMonStr = function(mStr)
{
	var invalidCharactersRegExp = /jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec/;
	var isValid = invalidCharactersRegExp.test(mStr.toLowerCase());
	return isValid;
}

// jan -> 01
Validate.prototype.MonStrtoMM = function(mStr)
{
	switch(mStr.toLowerCase()){
		case "jan": return "01"; break;
		case "feb": return "02"; break;
		case "mar": return "03"; break;
		case "apr": return "04"; break;
		case "may": return "05"; break;
		case "jun": return "06"; break;
		case "jul": return "07"; break;
		case "aug": return "08"; break;
		case "sep": return "09"; break;
		case "oct": return "10"; break;
		case "nov": return "11"; break;
		case "dec": return "12"; break;
		default : return ""; break;
		}
}

// 01 -> Jan
Validate.prototype.MMtoMon = function(mm)
{
	switch(mm.toLowerCase()){
		case "01": return "Jan"; break;
		case "02": return "Feb"; break;
		case "03": return "Mar"; break;
		case "04": return "Apr"; break;
		case "05": return "May"; break;
		case "06": return "Jun"; break;
		case "07": return "Jul"; break;
		case "08": return "Aug"; break;
		case "09": return "Sep"; break;
		case "10": return "Oct"; break;
		case "11": return "Nov"; break;
		case "12": return "Dec"; break;
		default : return ""; break;
		}
}

// ÁÖ¹Îµî·Ï¹øÈ£ È®ÀÎ (0: Á¤»óÀÎÁõ, 1:¾ÕÀÚ¸® ¿¡·¯, 2:µÞÀÚ¸® ¿¡·¯, 3:ÁÖ¹Î¹øÈ£±ÔÄ¢¿¡ À§¹èµÇ´Â ¿¡·¯)
Validate.prototype.isJuminNo = function(jumin_no1, jumin_no2){
	if (jumin_no1.length != 6 || !this.isOnlyNumeric(jumin_no1)) {    		
    		return 1;
  	}
  	
  	if (jumin_no2.length != 7 || !this.isOnlyNumeric(jumin_no2)) {    		
    		return 2;
  	}
  	
       	//--  ÁÖ¹Îµî·Ï¹øÈ£ validation check
        var chk =0
        
        for (var i = 0; i <=5 ; i++){ 
        	chk = chk + ((i%8+2) * parseInt(jumin_no1.substring(i,i+1)))
        }
   
        for (var i = 6; i <=11 ; i++){ 
        	chk = chk + ((i%8+2) * parseInt(jumin_no2.substring(i-6,i-5)))
        }
        
	chk = 11 - (chk %11)
	chk = chk % 10
	
	if (chk != jumin_no2.substring(6,7)){
		return 3 ;
	}
     	
	return 0;
}  	  	

// 2008-11-21  ¾Èº´È£ Ãß°¡ 
//¼ýÀÚÃ¼Å© 0~9 ¡ç¡æ¡è¡é del, backSpace µî ±âº»Å° Çã¿ë
// Validate.prototype.fc_onfocus ¿¡¼­ È£Ãâ
Validate.prototype.fc_onlyNum_check = function (){
		var key = event.keyCode;
		if(!(key==8||key==9||key==13||key==46||key==144||(key>=48&&key<=57)||key==110||key==190||(key>=37&&key<=40))){
			//  alert('¼ýÀÚ¸¸ ÀÔ·Â °¡´ÉÇÕ´Ï´Ù');
			event.returnValue = false;
		}
}
//imeMode º¯°æ & ¼ýÀÚÃ¼Å© È£Ãâ
//onActivate ÀÌº¥Æ®·Î ¹ß»ý½ÃÅ°¾ß imeMode °¡ ÀÛµ¿
Validate.prototype.fc_onlyNum = function (xobj){
	xobj.style.imeMode ="disabled";
	xobj.onkeydown = Validate.prototype.fc_onlyNum_check;
}
//ÄÞ¸¶ Âï±â
Validate.prototype.fc_formatNumber = function(n,d){ 
	n=Validate.prototype.fc_round(n,d);
	for (var i = n.indexOf('.') - 3; i > 0; i -= 3) {
		n = n.substring(0, i) + ',' + n.substring(i);
	}
	
	return parseInt(n.substring(n.indexOf('.')+1,n.indexOf('.')+d+1)) == 0 ? n.substring(0, n.indexOf('.')) : n.substring(0, n.indexOf('.')) +"."+ n.substring(n.indexOf('.')+1,n.indexOf('.')+d+1);
}
// round ÇÔ¼ö ( n = °ª, d= ¼Ò¼ýÁ¡ ÀÚ¸´¼ö) 
Validate.prototype.fc_round = function(n, d) { 
	n = n - 0;
	d = d || 2;  
	var f = Math.pow(10, d);
	n = Math.round(n * f) / f;
	n += Math.pow(10, - (d + 1));
	n += '';  
	return d == 0 ? n.substring(0, n.indexOf('.')) : n.substring(0, n.indexOf('.') + d + 1);
} 
