﻿	//특수문자 및 한글입력 방지 확인
	function FuncString(chkfield){
			var checkOK = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
			var checkStr = chkfield;
			var allValid = true;
			var allNum = "";
			checkStr = checkStr.toUpperCase();
			for (i = 0;  i < checkStr.length;  i++)
			{
			  ch = checkStr.charAt(i);
			  for (j = 0;  j < checkOK.length;  j++)
				if (ch == checkOK.charAt(j))
					break;
			    	if (j == checkOK.length)
			    	{
			      		allValid = false;
			      		break;
			    	}
			}
		if (allValid == false) return false;
		if (allValid == true) return true;
	}

	//이메일 문자열 확인
	function FuncEmailString(chkfield){
		var checkOK = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ@._-";
		var checkStr = chkfield;
		var allValid = true;
		var allNum = "";
		checkStr = checkStr.toUpperCase();
		for (i = 0;  i < checkStr.length;  i++)
		{
		  ch = checkStr.charAt(i);
		  for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
				break;
		    	if (j == checkOK.length)
		    	{
		      		allValid = false;
		      		break;
		    	}
		}
		if (allValid == false) return false;
		if (allValid == true) return true;
	}


	//이메일 형식 확인 ---------------------------------------------------
	function FuncEmailChk(p_obj,p_name){
		if(p_obj.value == ""){
			alert(p_name + " 빈문자 혹은 공백을 입력할 수 없습니다.");
			p_obj.focus();
			return false;
		
		}else{
			var str = p_obj.value;
			if (FuncEmailString(str)) {
				for(var i=0;i<str.length;i++){
					if (str.substring(i+1,i+2) =="@"){
						var str_1 = "y";
					}
		
					if (str_1 == "y" && str.substring(i,i+1) =='.'){
						return true;
					}
		
				}
				alert("이메일 형식에 맞지 않습니다.");
				p_obj.focus();
				return false;
			
			
			}else{
				alert("이메일은 한글을 입력할 수 없습니다.");
				return false;
			}

		}
		
	}


	//숫자열 입력확인 ---------------------------------------------------
	function FuncCheckNumeric(p_obj,p_name){
		var tocheck = p_obj.value;
		var isnum = true;
		if(isNaN(tocheck)){
			alert(p_name + " 숫자만 입력가능 합니다.");
			p_obj.value ="";
			p_obj.focus();
			return false;
		}
		
		for (var j = 0 ; j < tocheck.length; j++) {
 			if (tocheck.substring(j, j + 1) != "0" &&
		    tocheck.substring(j, j + 1) != "1" &&
		    tocheck.substring(j, j + 1) != "2" &&
		    tocheck.substring(j, j + 1) != "3" &&
		    tocheck.substring(j, j + 1) != "4" &&
		    tocheck.substring(j, j + 1) != "5" &&
		    tocheck.substring(j, j + 1) != "6" &&
		    tocheck.substring(j, j + 1) != "7" &&
		    tocheck.substring(j, j + 1) != "8" &&
		    tocheck.substring(j, j + 1) != "9") {
				alert("숫자만 가능합니다.");
				p_obj.value ="";
				p_obj.focus();
				return false;
			}
		}
		
		return true;
	}


	//날짜유형 검색
	function FuncCheckDate(p_obj,p_name){
		var tocheck = p_obj.value;
		var tempdate = "";
		var resultdate = "";
		
		
		for (var j = 0 ; j < tocheck.length; j++) {
 			if (tocheck.substring(j, j + 1) == "0" ||
		    tocheck.substring(j, j + 1) == "1" ||
		    tocheck.substring(j, j + 1) == "2" ||
		    tocheck.substring(j, j + 1) == "3" ||
		    tocheck.substring(j, j + 1) == "4" ||
		    tocheck.substring(j, j + 1) == "5" ||
		    tocheck.substring(j, j + 1) == "6" ||
		    tocheck.substring(j, j + 1) == "7" ||
		    tocheck.substring(j, j + 1) == "8" ||
		    tocheck.substring(j, j + 1) == "9") {
			
				tempdate += (tocheck.substring(j, j + 1)).toString();
			}
		}
		
		if (tempdate.length != 8){
			alert(p_name + "의 날짜 형식이 잘못되었습니다.");
			p_obj.value = "";
			p_obj.focus();
			return false;
		}else{
			
			resultdate = tempdate.substr(0,4).toString() + '-' +  tempdate.substr(4,2).toString() + '-' + tempdate.substr(6,2).toString();
			var checkdate = new Date((resultdate.toString()).replace("-","/"));
			
			if (parseFloat(tempdate.substr(0,4)) != parseFloat(checkdate.getFullYear())){
				alert(p_name + "은 유효하지 않은 날짜입니다.");
				p_obj.value = "";
				p_obj.focus();
				return false;
			}
			
			
			if (parseFloat(tempdate.substr(4,2),10) != parseFloat(checkdate.getMonth())+1){
				alert("월 체크에러");
				return false;
			}
						
			
			if (parseFloat(tempdate.substr(6,2)) != parseFloat(checkdate.getDate())){
				alert("날 체크에러");
				return false;
			}
			
			eval(p_obj).value = resultdate;

			return true;
		}
	}
	
	//날짜유형 검색
	function FuncCheckDate2(p_obj , p_name ){
		var tocheck = p_obj.value;
		var tempdate = "";
		var resultdate = "";
		
		for (var j = 0 ; j < tocheck.length; j++) {
 			if (tocheck.substring(j, j + 1) == "0" ||
		    tocheck.substring(j, j + 1) == "1" ||
		    tocheck.substring(j, j + 1) == "2" ||
		    tocheck.substring(j, j + 1) == "3" ||
		    tocheck.substring(j, j + 1) == "4" ||
		    tocheck.substring(j, j + 1) == "5" ||
		    tocheck.substring(j, j + 1) == "6" ||
		    tocheck.substring(j, j + 1) == "7" ||
		    tocheck.substring(j, j + 1) == "8" ||
		    tocheck.substring(j, j + 1) == "9") {
			
				tempdate += (tocheck.substring(j, j + 1)).toString();
			}
		}
		
		if (tempdate.length != 8){
			alert(p_name + "의 날짜 형식이 잘못되었습니다.");
			p_obj.value = "";
			//p_obj.focus();
			return false;
		}else{
			resultdate = tempdate.substr(0,4).toString() + '-' +  tempdate.substr(4,2).toString() + '-' + tempdate.substr(6,2).toString();
			
			var m_year = tempdate.substr(0,4).toString();
			
			var checkdate = new Date((resultdate.toString()).replace("-","/"));
			
			// Y2K 문제 해결
			if ( m_year >= 2000 )
			{
				b_year = m_year;
			}
			else
			{
				b_year = m_year + 1900;
			}
			
			if (parseInt(tempdate.substr(0,4)) != parseInt(m_year)){
				alert(p_name + "은 유효하지 않은 날짜입니다.1");
				//p_obj.value = "";
				//p_obj.focus();
				return false;
			}
			/*if (parseInt(tempdate.substr(4,2).replace("0","")) != parseInt(checkdate.getMonth())+1){
				alert(parseInt(tempdate.substr(4,2).replace("0","")) + " , " + parseInt(checkdate.getMonth())+1);
				alert(p_name + "은 유효하지 않은 날짜입니다.2");
				//p_obj.value = "";
				//p_obj.focus();
				return true;
			}

			if (parseInt(tempdate.substr(6,2).replace("0","")) != parseInt(checkdate.getDate())){
				alert(p_name + "은 유효하지 않은 날짜입니다.3");
				//p_obj.value = "";
				//p_obj.focus();
				return true;
			}*/
			
			//parseInt 할때 10진주 표기 하지 예) parseInt('10' , 10)
			
			if (parseInt(tempdate.substr(4,2).toString(),10) != parseInt(checkdate.getMonth()) +1){
				
				//alert(parseInt(checkdate.getMonth(),10) + 1));
				alert(p_name + "은 유효하지 않은 날짜입니다.2");
				//p_obj.value = "";
				//p_obj.focus();
				return false;
			}

			if (parseInt(tempdate.substr(6,2).toString(),10) != parseInt(checkdate.getDate(),10)){
				alert(p_name + "은 유효하지 않은 날짜입니다.3");
				//p_obj.value = "";
				//p_obj.focus();
				return false;
			}

			//p_obj.value = resultdate;
			return true;
		}
	}


	//빈문자열 검색 ---------------------------------------------------
	function FuncNullchk(p_obj,p_name){
		var p_string = p_obj.value;
		if (p_string.length < 1){
			alert(p_name + " 빈문자 혹은 공백을 입력할 수 없습니다.");
			p_obj.focus();
			return false;
		}
		return true;
	}


	//전화번호 체크 ---------------------------------------------------
	function FuncTelCheck(p_obj,p_name){
		
			if(!FuncNullchk(eval(p_obj + "1"),p_name)){
				return false;
			}else{
				if(!FuncCheckNumeric(eval(p_obj + "1"),p_name)){
					return false;
				}
		
			}
		
			if(!FuncNullchk(eval(p_obj + "2"),p_name)){
				return false;
			}else{
				if(!FuncCheckNumeric(eval(p_obj + "2"),p_name)){
					return false;
				}
		
			}
		
			if(!FuncNullchk(eval(p_obj + "3"),p_name)){
				return false;
			}else{
				if(!FuncCheckNumeric(eval(p_obj + "3"),p_name)){
					return false;
				}
			}
			return true;
	}




	//금액 유형으로 변경
	function FuncCurrency(p_value){

        var Moneys = p_value.toString();
        var currency = ""; 
        for(i=0;i < Moneys.length; i++){ 
                currency += Moneys.substring(i,i+1);         
                if(((Moneys.length - i-1)%3) == 0 && (Moneys.length-i-1) > 0 ) 
				currency += ","; 
        } 		
	
		return currency;
	}

	//자리 단위 맞추기
	function FuncRound(p_value, p_num){
		var strvalue = 0;
		if (p_value >= Math.pow(10,p_num)){
			strvalue = p_value % Math.pow(10,p_num);
			if (parseInt(strvalue) > 0){
				return Math.ceil(p_value / Math.pow(10,p_num)) * Math.pow(10,p_num);
			}else{
				return p_value;
			}
		}else{
				return p_value;
		}
		
	
	}
	
	function FuncSearchCheck(p_frm){
		if(p_frm.searchword.value == "" || p_frm.searchword.value == null){
			alert("검색어를 입력하세요.");
			p_frm.searchword.focus();
			return false;
		}else{
			return true;	
		}
	}
	
	// 500 이미지 보기
	function FuncBigImage500(p_mediumcd,p_ca,p_type,p_itemcd,p_num,p_url){
		showModalDialog('/include/popup/ProductViewImage.asp?mediumcd='+ p_mediumcd + '&ca=' + p_ca+'&imagetype='+ p_type + '&itemcd=' + p_itemcd + '&imgnum=' + p_num+"&url="+p_url, window, 'resizable: no; help: no; status: no; scroll: no; ');
		//window.open('/include/popup/ProductViewImage.asp?imagetype='+ p_type + '&itemcd=' + p_itemcd + '&imgnum=' + p_num+"&url="+p_url,'','');
	}
	
	function MakeFlashString(source,id,width,height,wmode, otherParam)
	{	
		return "<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,22,0\" width="+width+" height="+height+" id="+id+"><param name=allowScriptAccess value=always /><param name=wmode value="+wmode+" /><param name=movie value="+source+" /><param name=quality value=high />"+otherParam+"<embed src="+source+" quality=high wmode="+wmode+" type=\"application/x-shockwave-flash\" pluginspage=\"https://www.macromedia.com/shockwave/download/index.cgi?p1_prod_version=shockwaveflash\" width="+width+" height="+height+"></embed></object>";
	}

	function MakeObjectString(classid, codebase, name, id, width,height, param)
	{
		return "<object classid="+classid+" codebase="+codebase+" name="+name+" width="+width+" height="+height+" id="+id+"><param name=wmode value="+wmode+" />"+param+"</object>";
	}

	// innerHTML Type
	function SetInnerHTML(target, code)
	{ 
		target.innerHTML = code; 
	}

	// Direct Write Type
	function DocumentWrite(src)
	{
		document.write(src);
	}
	
    function FUN_Input_Calc_Byte(Obj, MaxByte){

        var Obj_String;                 //**    검사 할 입력폼의 글자
        var Obj_Count_Byte      =0;     //**    검사 할 글자의 Byte 수
        var Obj_String_Length   =0;     //**    검사 글자의 길이
        var tmpString;                  //**    글자의 임시저장
        var OverByte            = 0;    //**    오버되는 글자 바이트
        var i;

        Obj_String          = new String(Obj.value);
        Obj_String_Length   = Obj_String.length;

        for(i=0;i<Obj_String_Length;i++){
            tmpString       = Obj_String.charAt(i);

            if(escape(tmpString).length > 4){
                Obj_Count_Byte  +=2;
            }else if (tmpString != '\r'){
                Obj_Count_Byte  ++;
            }
        }
 
        if(Obj_Count_Byte > MaxByte){

            OverByte    = Obj_Count_Byte - MaxByte;
            alert('입력범위를 초과하였습니다.');

            //**    글자 자르기

                FUN_Input_Cut_Text(Obj, MaxByte);

            //**    Byte 수 다시 측정
            setTimeout(function(){ FUN_Input_Calc_Byte(Obj, MaxByte); }, 300);
        }

        var CheckText = document.all[Obj.name +'_Byte'];
            if(CheckText){
                CheckText.innerText = Obj_Count_Byte +'/'+ MaxByte +'Byte';
            }

        return;
    }

    function FUN_Input_Calc_Byte_Check(Obj, MaxByte){

        var Obj_String;                 //**    검사 할 입력폼의 글자
        var Obj_Count_Byte      =0;     //**    검사 할 글자의 Byte 수
        var Obj_String_Length   =0;     //**    검사 글자의 길이
        var tmpString;                  //**    글자의 임시저장
        var OverByte            = 0;    //**    오버되는 글자 바이트
        var i;

        Obj_String          = new String(Obj.value);
        Obj_String_Length   = Obj_String.length;

        for(i=0;i<Obj_String_Length;i++){
            tmpString       = Obj_String.charAt(i);

            if(escape(tmpString).length > 4){
                Obj_Count_Byte  +=2;
            }else if (tmpString != '\r'){
                Obj_Count_Byte  ++;
            }
        }

        if(Obj_Count_Byte > MaxByte){

            OverByte    = Obj_Count_Byte - MaxByte;
            alert('입력범위를 초과하였습니다.');
            return false;
        }else{
			return true;
        }

    }
    
	//**    글자 자르기

    function FUN_Input_Cut_Text(Obj, MaxByte){
        var Obj_String;                 //**    검사 할 입력폼의 글자
        var Obj_Count_Byte      =0;     //**    검사 할 글자의 Byte 수
        var Obj_String_Length   =0;     //**    검사 글자의 길이
        var tmpString;                  //**    글자의 임시저장
        var i;
        var a='', b;

        Obj_String          = new String(Obj.value);
        Obj_String_Length   = Obj_String.length;


        for(i=0;i<Obj_String_Length;i++){
            if(Obj_Count_Byte < MaxByte){
                tmpString       = Obj_String.charAt(i);

                if(escape(tmpString).length > 4){

                    Obj_Count_Byte  +=2;

                }else if(tmpString != '\r'){

                    Obj_Count_Byte  ++;
                }

            }else{
                break;
            }
        }

                
        if((Obj_Count_Byte - MaxByte) == 0){
            Obj_String  = Obj_String.substring(0, i);
        }else{
            Obj_String  = Obj_String.substring(0, i-1);
        }

 

        if((MaxByte % 2)==1){
            Obj_String_Length   = (Obj_String.length - 1);

            if(escape(Obj_String.charAt(Obj_String_Length)).length > 4){
                Obj_String  = Obj_String.substring(0, Obj_String_Length);
            }

        }

        Obj.value   = Obj_String;

        return;

    }   
	
	// 타이포웍스 댓글 프레임 높이 지정
	function resizeIfr(obj, minHeight) {
        minHeight = minHeight || 10;
        try {
            var getHeightByElement = function(body) {
                var last = body.lastChild;
                try {
                    while (last && last.nodeType != 1 || !last.offsetTop) last = last.previousSibling;
                    return last.offsetTop+last.offsetHeight;
                } catch(e) {
                    return 0;
                }
        }
        var doc = obj.contentDocument || obj.contentWindow.document;
        if (doc.location.href == 'about:blank') {
            obj.style.height = minHeight+'px';
            return;
        }
        
        if (/MSIE/.test(navigator.userAgent)) {
            var h = doc.body.scrollHeight;
        // ie8에선 ie7과 비교시 약 15px 더 적게 값이 적용됨. if(window.JSON) h+=15;
        } else {
            var s = doc.body.appendChild(document.createElement('DIV'))
            s.style.clear = 'both';

            var h = s.offsetTop;
            s.parentNode.removeChild(s);
        }
        
        if (h < minHeight) h = minHeight;
        obj.style.height = h + 'px';
        if (typeof resizeIfr.check == 'undefined') resizeIfr.check = 0;
        if (typeof obj._check == 'undefined') obj._check = 0;
        
        setTimeout(function(){ resizeIfr(obj,minHeight) }, 200); // check 5 times for IE bug
        } catch (e) { 
            //alert!(e);
        }
    }

