
	;(function($) {

		$.email_check = function(email){
			var pattern = /^(\w+)@(\w+)[.](\w+)$/;
			var pattern2 = /^(\w+)@(\w+)[.](\w+)[.](\w+)$/;
		
			if (email.match(pattern) == null && email.match(pattern2) == null){
				return false;
			}else{
				return true;
			}
		};

		$.ssn_check = function(j1, j2){

			var sum = 0;
		
			for (i=0; i<j1.length; i++) {
				if (j1.charAt(i) >= 0 || j1.charAt(i) <= 9) { 
					if (i == 0)
						sum = (i+2) * j1.charAt(i);
					else
						sum = sum + (i+2) * j1.charAt(i);
				}else{
					return false;
				}
			}
		
			for (i=0; i<2; i++) {
				if (j2.charAt(i) >= 0 || j2.charAt(i) <= 9)
					sum = sum + (i+8) * j2.charAt(i);
				else
					return false;
			}
		
			for(i=2; i<6; i++) {
				if (j2.charAt(i) >= 0 || j2.charAt(i) <= 9)
					sum = sum + (i) * j2.charAt(i);
				else
					return false;
			}
		
			var checkSUM = sum % 11;
		
			if(checkSUM == 0) {
					var checkCODE = 10;
			} else if(checkSUM ==1) {
				var checkCODE = 11;
			} else {
				var checkCODE = checkSUM;
			}
		
			var check1 = 11 - checkCODE;
		
			if (j2.charAt(6) >= 0 || j2.charAt(6) <= 9)
				var check2 = parseInt(j2.charAt(6))
			else
				return false;
		
			if(check1 != check2)
				return false;
			else
				return true; 
		};

		$.corpnum_check = function(vencod){

			var sum = 0;
			var getlist =new Array(10);
			var chkvalue =new Array("1","3","7","1","3","7","1","3","5");
					
			for(var i=0; i<10; i++)
				getlist[i] = vencod.substring(i, i+1);
	
			for(var i=0; i<9; i++)
				sum += getlist[i]*chkvalue[i];
	
			sum = sum + parseInt((getlist[8]*5)/10);
			sidliy = sum % 10;
			sidchk = 0;
					
			if(sidliy != 0)
				sidchk = 10 - sidliy;
			else
				sidchk = 0;
	
			if(sidchk != getlist[9])
				return false;

			return true;

		};

	$.format_number = function(price){

		var price = String(price)
		var j = 1;
		var formatValue="";

		price = price.replace(/\,/gi, ' ');
		
		for(i=price.length ; i>0 ; i--){
			formatValue = price.substring(i-1,i) + formatValue;
			if ((j%3) == 0 && i>1 )
				formatValue = "," + formatValue;
			j++
		}
		return formatValue;

	};

	$.url_check = function(url){
		var expUrl = /^(https?|ftp|mms):\/\/[0-9a-z-]+(\.[_0-9a-z-]+)+(:\d+)?/;
		return expUrl.test(url);
	};

	})(jQuery);

	$.replace_all = function(str, replaceStr){
		return str.split(replaceStr).join("");
	};

	$.ltrim = function(str){

		var s = new String(str);

		if (s.substr(0,1) == " ")
			return $.ltrim(s.substr(1));
		else
			return s;
	};

	$.rtrim = function(str){

		var s = new String(str);

		if(s.substr(s.length-1,1) == " ")
			return $.rtrim(s.substring(0, s.length-1))
		else
			return s;
	}

	$.trim = function(str){
		return $.ltrim($.rtrim(str));
	}

	$.IsEmpty = function(str, SpaceCheck) {

		var retvalue = false;

		for (var i=0; i<str.length; i++) {
			if (SpaceCheck == true) {
				if (str.charAt(i) == ' ') {
					retvalue = true; break;
				}
			} else {
				if (str.charAt(i) != ' ') {
					retvalue = true; break;
				}
			}
		}
		return retvalue;
	}


	$.IsMultilingual = function(str, SpaceCheck) {
	
		var RetValue = false;

		if ($.IsEmpty(str, SpaceCheck))
			return false;
	
		for(i=0 ; i<str.length ; i++) {
			if (str.charCodeAt(i) > 127 || str.charCodeAt(i) < 0) {
				RetValue = true;
				break;
			}
		}
	
		return RetValue;
	
	};

	$.domain_check_eng = function(str){

		var str_len = str.length;

		if ($.trim(str) == "")
			return false;

		if (str.charAt(0) == "-" || str.charAt(str_len - 1) == "-")
			return false;

		if (str_len > 3) {
			if (str.charAt(2) == "-" && str.charAt(3) == "-")
				return false;
		}

		if (str_len > 64)
			return false;

		if ($.IsMultilingual(str, false))
			return false;

		for (var i=0; i < str_len; i++) {
			if (!(str.charAt(i) == "-" || (str.charAt(i) >= "0" && str.charAt(i) <= "9") || (str.charAt(i) >= "A" && str.charAt(i) <= "Z") || (str.charAt(i) >= "a" && str.charAt(i) <= "z"))) {
				return false;
			}
		}

		return true;
	};

	$.domain_check_kor = function(str){

		var str_len = str.length;

		if ($.trim(str) == "")
			return false;

		if (str.charAt(0) == "-" || str.charAt(str_len - 1) == "-")
			return false;

		if (str_len > 3) {
			if (str.charAt(2) == "-" && str.charAt(3) == "-")
			return false;
		}

		if (str_len > 18)
			return false;

		if (!$.IsMultilingual(str, true))
			return false;

		for (var i=0; i < str_len; i++) {
			if (!(str.charAt(i) == "-" || (str.charAt(i) >= "0" && str.charAt(i) <= "9") || (str.charAt(i) >= "A" && str.charAt(i) <= "Z") || (str.charAt(i) >= "a" && str.charAt(i) <= "z") || (str.charCodeAt(i) >= 0xAC00 && str.charCodeAt(i) <= 0xD7A3 ))) {
				return false;
			}
		}

		return true;

	};

	$.MultiCheckValue = function(target, chk_char, max_len){
		if(target.length >= 1){
			for(var i = 0; i < chk_char.length; i++){
				if(target.indexOf(chk_char.charAt(i)) >= 0)
					return false;
			}
		}
		return true;
	};

	$.MultinoncheckValue = function(target, chk_char, max_len){
		if(chk_char.length >= 1){
			for(var i = 0; i < target.length; i++){
				if(chk_char.indexOf(target.substring(i, i+1)) < 0)
					return true;
			}
		}
		return false;
	};

	$.CheckDomainMultiRegist = function(Obj, MaxCount){

	var temp = 0;
	var domain_list = Obj.value;
	
	var domain_length = domain_list.length;
	var domain_name	= new Array();
	var special = ' ~!@#$%^&*()_=+|\\{}[];"\'<>?\/';	// : ,
	var alpha = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
	var numeric = '1234567890';

	var han_dom_tld = new Array(".com", ".net" , ".org", ".kr", ".biz", ".info",".name", ".tv", ".cc", ".tel",".한국");
	var eng_dom_tld = new Array(".com", ".net" , ".org", ".kr", ".co.kr", ".info", ".biz", ".cc", ".tv", ".name", ".pe.kr", ".re.kr", ".ne.kr", ".seoul.kr",".busan.kr",".daegu.kr",".incheon.kr",".gwangju.kr",".daejeon.kr",".ulsan.kr",".gyeonggi.kr",".gangwon.kr",".chungbuk.kr",".jeonbuk.kr",".jeonnam.kr",".chungnam.kr",".gyeongbuk.kr",".gyeongnam.kr",".jeju.kr",".go.kr", ".or.kr", ".ac.kr", ".hs.kr", ".ms.kr", ".es.kr", ".sc.kr", ".kg.kr", ".eu", ".mobi", ".asia", ".me", ".mil.kr",".tel", ".co" );
	var ipm_tld = new Array(".ag",".cm",".mu",".sc",".in",".co.in",".net.in",".org.in",".firm.in",".gen.in",".ind.in", ".jp",".mn",".sg",".tl", ".tw",".at",".be",".ch",".cz",".de",".dk",".es",".im", ".li",".lt",".md",".pl",".uk",".lc",".vc",".gs",".hn", ".bz",".cx",".nf",".nz",".ws",".com.tw",".org.tw",".idv.tw", ".game.tw",".club.tw",".ebiz.tw",".co.uk",".com.sg",".so");

	if(domain_length == 0){
		alert("도메인 이름이 올바르지 않습니다.");
		return false;
	} else {
		var start_at = 0;
		var valid_domain = 0;

		for(var i = 0, j = 0; i <= domain_length; i++){
			var one_char = domain_list.charAt(i);
			if(one_char == '\n'){
				domain_name[j++] = domain_list.substring(start_at, i-1);
				start_at = i+1;
			}else if(i == domain_length)
				domain_name[j++] = domain_list.substring(start_at, i);
			}

			for(i = 0 ; i < domain_name.length; i++){
				valid_check = false;
				domain_name[i] = domain_name[i].replace(/(^\s*)|(\s*$)/g, "");
				domain_name[i] = $.trim(domain_name[i]);

				if(domain_name[i] != null && domain_name[i].length > 0){
					if (domain_name[i].charAt(0) == '.') {
					alert("도메인 이름은 '.'로 시작할 수 없습니다.");
					return false;
				}

				if (domain_name[i].charAt(0) == '-') {
					alert("도메인 이름은 '-'로 시작할 수 없습니다.");
					return false;
				}

				if(domain_name[i].charAt(domain_name[i].length-1) == '-') {
					alert("도메인 이름은 '-'로 끝날 수 없습니다.");
					return false;
				}

				if($.MultiCheckValue(domain_name[i], special, 67) == false) {
					alert("도메인 이름이 올바르지 않습니다.");
					return false;
				}

				var domain_kind = domain_name[i].substr(domain_name[i].indexOf('.')).toLowerCase();
				var origin_domainname = domain_name[i].substr(0, domain_name[i].length - domain_kind.length);

				if(origin_domainname.length < 1) {
					alert(domain_name[i] + '은 도메인 형식에 맞지 않습니다.\n확인 후 다시 입력해 주시기 바랍니다.');
					return false;
				} else {
					if(origin_domainname.charAt(origin_domainname.length-1) == '-') {
						alert("도메인 이름은 '-'로 끝날 수 없습니다.");
						return false;
					}
				}

				if ($.MultinoncheckValue(domain_name[i], numeric+alpha+'.-', 67) == true){
					if(origin_domainname.length < 2 || origin_domainname.length > 17) {
						alert("한글 도메인은 2자 이상 17자 이하로 구성됩니다.");
						return false;
					}

					for(j = 0; j < han_dom_tld.length; j++){
						if(domain_kind == han_dom_tld[j])
						valid_check = true;
					}

					if(valid_check == false){
						alert(domain_name[i] + "은 등록 가능한 도메인 종류가 아닙니다.\n한글도메인은 .com, .net, .kr, .org, .biz, .info, .name, .한국 만 등록 가능합니다.");
						return false;
					}

				} else {

					if(origin_domainname.length < 2 || origin_domainname.length > 63) {
						alert("도메인은 2자 이상 63자 이하로 구성됩니다.");
						return false;
					}

					if (origin_domainname.length > 3) {
						if (origin_domainname.charAt(2) == "-" && origin_domainname.charAt(3) == "-"){
							alert("도메인 이름이 올바르지 않습니다.");
							return false;
						}
					}

					for(j = 0; j < eng_dom_tld.length; j++){
						if(domain_kind == eng_dom_tld[j])
							valid_check = true;
						}

					for(j = 0; j < ipm_tld.length; j++){
						if(domain_kind == ipm_tld[j])
						valid_check = true;
					}

					if(valid_check == false){
						alert(domain_name[i] + "은 등록 가능한 도메인 종류가 아닙니다.\n확인 후 다시 입력해 주시기 바랍니다.");
						return false;
					}
				}

				valid_domain++;
			}
		}

		if(valid_domain > MaxCount){
			alert(valid_domain + '개의 도메인을 입력하셨습니다.\n한번에 ' + MaxCount + '개까지만 검색이 가능합니다.');
			return false;
		}
	}
		return true;
	}
