//=====================================================================================
// Made in Korea Start (JQuery)
//=====================================================================================
	document.writeln("<scr" + "ipt type=\"text/jav" + "asc" + "ript\" src=\"/BasicJs/jquery.js\"></scr" + "ipt>");

    function ReturnFieldValue(FieldName, FieldType){   // 필드에 입력된 값을 반환한다
        if(FieldName == null){
            alert("필드 정보를 입력하세요.");
        }else if(FieldType == "input" || FieldType == "textarea" || FieldType == "select"){
            return $.trim($(FieldType + "[name=" + FieldName+ "]").val());
        }else if(FieldType == "radio" || FieldType == "checkbox"){
            return $.trim($(":input:" + FieldType + "[name=" + FieldName + "]:checked").val());
        }
    }

    function FieldCheckAlert(FieldName, AlertMent, FieldType, FocusYN){ // 필드에 값이 입력됬는지 체크
        var ReturnValue = false;

        if(FieldName == null){
            alert("필드 정보를 입력하세요.");
        }else if(!ReturnFieldValue(FieldName, FieldType)){
            alert(AlertMent);

            if(FocusYN == "Y"){
                if(FieldType == "input" || FieldType == "textarea" || FieldType == "select"){
                    $(FieldType + "[name=" + FieldName + "]").focus();
                }else if(FieldType == "radio" || FieldType == "checkbox"){
                    $(":input:" + FieldType + "[name=" + FieldName + "]").focus();
                }
            }

            ReturnValue = false;
        }else{
            ReturnValue = true;
        }

        return ReturnValue;
    }

    function ButtonValueReturn(FieldName){ // Radio,Checkbox의 선택된 값을 반환한다
        var ReturnValue;

        $("input[name=" + FieldName + "]").each(function(){
            if(this.checked == true){
                ReturnValue = this.value;
            }
        });

        return ReturnValue
    }

    function chkPatten(field, patten){ // 입력된 값들의 형식 체크
        var idCheck = /^[a-zA-Z]{1}[a-zA-Z0-9_-]{0,12}$/;
        var pwCheck = /^[a-zA-Z0-9_-]{4,12}$/;
        var mailCheck = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
        var telCheck = /^[0-9]{8,11}$/;
		var nameCheck = /^[가-힝a-zA-Z]{2,10}$/g;
//		var nameCheck = /^[a-zA-Z가-힝]/g;
        
        patten = eval(patten);

        if(!patten.test(ReturnFieldValue(field, "input"))){
            return false;
        } else {
            return true;
        }
    }
    
    function EmailCheck(FieldName){
        var EmailValue = $("input[name=" + FieldName + "1]").val() + '@' + $("input[name=" + FieldName + "2]").val();
        var mailCheck = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

        if(!mailCheck.test(EmailValue)){
            alert("올바른 이메일 형식이 아닙니다.");
            return false;
        } else {
            return true;
        }
    }

    function EmailCheck2(FieldName){
        var EmailValue = $("input[name=" + FieldName + "]").val();
        var mailCheck = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

        if(!mailCheck.test(EmailValue)){
            alert("올바른 이메일 형식이 아닙니다.");
            return false;
        } else {
            return true;
        }
    }

    function NumberCheck(CheckObject){ // 입력 필드에 숫자 이외의 값은 삭제
        CheckObject.value = CheckObject.value.replace( /\D/g, '' );

        //$(".NumberCheck").bind("keyup", function(event){ NumberCheck(this); });
    }

    function ShowHidden(Type, Name, ChangeState, Option){
        /*
            대상의 Display 상태를 변경한다.
            Type : Class, Id
            Name : class 나 id 명
            ChangeState : show, hide
            Option : slow
        */        
            
        if(ChangeState != "show" && ChangeState != "hide"){
            alert(Name + " " + Type + "의 변경할 Display 속성을 입력하세요.");
            return;
        }

        var Oj;

        if(Type == "Class"){
            Type = ".";
        }else if(Type == "Id"){
            Type = "#";
        }
        
        Oj = "$(\"" + Type + Name + "\")";
        eval(Oj + "." + ChangeState + "(\"" + Option+ "\")");
    }

    function ZipcodeSearch(FieldName){
        window.open("/Etc/ZipcodeSearch.asp?FieldName=" + FieldName, "ZipcodeSearch", "scrollbars=yes, width=100, height=100");
    }

    function ZipcodeSearchCheck(){
        var SearchText = ReturnFieldValue("SearchText", "input");

        if(!FieldCheckAlert("SearchText", "검색할 지역을 입력하세요.", "input", "Y")){ return false; }

        $.ajax({
            type : "post",
            url : "/Etc/Ajax_ZipcodeSearch.asp",
            data : "SearchText=" + SearchText,
            error: function(html){
                alert("실행중 에러 발생");
            },
            success: function(html){
                if(html == "Not Found"){
                    $(".ResultFail").show();
                    $("input[name=SearchText]").attr({"value" : ""});
                }else{
                    $(".ResultSuccess").show();
                    $("#ZipcodeList").html(html);
                }
            }
        });

        return false;
    }

    function AddressSend(SeqNum){
        ZipCode = $("#Zipcode" + SeqNum).text().split("-");
        
        ReturnValue = Array();

        ReturnValue[0] = ZipCode[0];
        ReturnValue[1] = ZipCode[1];
        ReturnValue[2] = $("#Address" + SeqNum).text();

        var FieldName = ReturnFieldValue("FieldName", "input");

        for(var i = 1; i <= 3; i++){
            opener.$("input[name=" + FieldName + i + "]").attr({"value" : ReturnValue[i - 1]});
        }

        opener.$("input[name=" + FieldName + "4]").focus();
        self.close();
    }
    
    function JuminOverlapCheckPopup(Gubun){
        $("input[name=JuminOverlapCheckState]").attr({"value" : "" });
        
        if(!JuminCheck("Jumin")){ return; }

        window.open("/Etc/JuminOverlapCheckPopup.asp?Gubun=" + Gubun, "JuminOverlapCheckPopup", "scrollbars=yes, width=100, height=100");
    }

    function JuminOverlapCheck(Gubun){
        $("#ResultFail").hide();
        $("#ResultSuccess").hide();

        if(!FieldCheckAlert("Jumin1", "주민등록번호를 입력하세요.", "input", "Y")){ return false; }
        if(!FieldCheckAlert("Jumin2", "주민등록번호를 입력하세요.", "input", "Y")){ return false; }
        if(!JuminCheck("Jumin")){ return false; }

        var Jumin1 = ReturnFieldValue("Jumin1", "input");
        var Jumin2 = ReturnFieldValue("Jumin2", "input");
        
        $.ajax({
            type : "post",
            url : "/Etc/Ajax_JuminOverlapCheck.asp",
            data : "Gubun=" + Gubun + "&Jumin1=" + Jumin1 + "&Jumin2=" + Jumin2,
            error: function(html){
                alert("실행중 에러 발생");
            },
            success: function(html){
                if(html == "Not Found"){
                    $("#ResultSuccess").show();
                    
                    if(Gubun == "Donator"){
                        DonateApplicantInfomaintLoad();
                    }
                }else{
                    $("#ResultFail").show();
                }
            }
        });

        return false;
    }

    function JuminOverlapCheck2(Gubun){
        var OverlapCheck = "Y";

        if(!FieldCheckAlert("Jumin1", "주민등록번호를 입력하세요.", "input", "Y")){ return false; }
        if(!FieldCheckAlert("Jumin2", "주민등록번호를 입력하세요.", "input", "Y")){ return false; }
        if(!JuminCheck("Jumin")){ return false; }

        var Jumin1 = ReturnFieldValue("Jumin1", "input");
        var Jumin2 = ReturnFieldValue("Jumin2", "input");
        var OldJumin1 = ReturnFieldValue("OldJumin1", "input");
        var OldJumin2 = ReturnFieldValue("OldJumin2", "input");
        
        if((OldJumin1 != "" && OldJumin2 != "") && (OldJumin1 == Jumin1 && OldJumin2 == Jumin2)){
            OverlapCheck = "N";
        }

        if(OverlapCheck == "Y"){
            $.ajax({
                type : "post",
                url : "/Etc/Ajax_JuminOverlapCheck.asp",
                data : "Gubun=" + Gubun + "&Jumin1=" + Jumin1 + "&Jumin2=" + Jumin2,
                error: function(html){
                    alert("실행중 에러 발생");
                },
                success: function(html){
                    if(html == "Not Found"){
                        $("input[name=JuminOverlapCheckState]").attr({value: "Y"});
                        JuminSend3(Gubun);
                    }else{
                        $("input[name=JuminOverlapCheckState]").attr({value: "N"});
                        alert("이미 등록이 되어 있는 주민번호입니다.");
                    }
                }
            });
        }
    }

    function JuminSend(Gubun){
        var Jumin1 = ReturnFieldValue("Jumin1", "input");
        var Jumin2 = ReturnFieldValue("Jumin2", "input");
        
        opener.$("input[name=Jumin1]").attr({"value" : Jumin1 });
        opener.$("input[name=Jumin2]").attr({"value" : Jumin2 });
        opener.$("input[name=JuminOverlapCheckState]").attr({"value" : "Y" });

        if(Gubun == "DonateApplicant"){
            opener.RepresentativeDisplay();
        }else if(Gubun == "Donator"){
            var BirthCheck = Jumin2.substr(0, 1);

            if(BirthCheck == 1 || BirthCheck == 2){
                Jumin1 = 19 + Jumin1;
            }else{
                Jumin1 = 20+ Jumin1;
            }

             opener.$("select[name=BirthYear]").attr({value: Jumin1.substr(0, 4)});
             opener.$("select[name=BirthMonth]").attr({value: Jumin1.substr(4, 2)});
             opener.$("select[name=BirthDay]").attr({value: Jumin1.substr(6, 2)});
        }

        self.close();
    }

    function JuminSend2(){
        var Jumin1 = ReturnFieldValue("Jumin1", "input");
        var Jumin2 = ReturnFieldValue("Jumin2", "input");
        
        opener.$("input[name=Jumin1]").attr({"value" : Jumin1 });
        opener.$("input[name=Jumin2]").attr({"value" : Jumin2 });
        opener.$("input[name=JuminOverlapCheckState]").attr({"value" : "Y" });

        DonateApplicantInfoSendning()

        var BirthCheck = Jumin2.substr(0, 1);

        if(BirthCheck == 1 || BirthCheck == 2){
            Jumin1 = 19 + Jumin1;
        }else{
            Jumin1 = 20+ Jumin1;
        }

         opener.$("select[name=BirthYear]").attr({value: Jumin1.substr(0, 4)});
         opener.$("select[name=BirthMonth]").attr({value: Jumin1.substr(4, 2)});
         opener.$("select[name=BirthDay]").attr({value: Jumin1.substr(6, 2)});

        self.close();
    }

    function JuminSend3(Gubun){
        var Jumin1 = ReturnFieldValue("Jumin1", "input");
        var Jumin2 = ReturnFieldValue("Jumin2", "input");
        
        $("input[name=Jumin1]").attr({"value" : Jumin1 });
        $("input[name=Jumin2]").attr({"value" : Jumin2 });
        $("input[name=JuminOverlapCheckState]").attr({"value" : "Y" });

        if(Gubun == "DonateApplicant"){
            RepresentativeDisplay();
        }else if(Gubun == "Donator"){
            var BirthCheck = Jumin2.substr(0, 1);

            if(BirthCheck == 1 || BirthCheck == 2){
                Jumin1 = 19 + Jumin1;
            }else{
                Jumin1 = 20+ Jumin1;
            }

             $("select[name=BirthYear]").attr({value: Jumin1.substr(0, 4)});
             $("select[name=BirthMonth]").attr({value: Jumin1.substr(4, 2)});
             $("select[name=BirthDay]").attr({value: Jumin1.substr(6, 2)});
        }
    }

    function DonateApplicantInfoSendning(){
        var Name = ReturnFieldValue("Name", "input");
            
        if(Name != ""){
            var OldJumin1 = opener.ReturnFieldValue("OldJumin1", "input");
            var OldJumin2 = opener.ReturnFieldValue("OldJumin2", "input");
            var DonateApplicantInfoSendingYN = "N";

            if(OldJumin1 == "" && OldJumin2 == ""){
                DonateApplicantInfoSendingYN = "Y";
            }else if((OldJumin1 != "" && OldJumin2 != "") && (OldJumin1 != Jumin1 && OldJumin2 != Jumin2)){
                DonateApplicantInfoSendingYN = "Y";
            }
        }

        if(DonateApplicantInfoSendingYN == "Y"){
            opener.$("input[name=Name]").attr({value: ReturnFieldValue("Name", "input")});
            opener.$("select[name=Tel1]").attr({value: ReturnFieldValue("Tel1", "input")});
            opener.$("input[name=Tel2]").attr({value: ReturnFieldValue("Tel2", "input")});
            opener.$("input[name=Tel3]").attr({value: ReturnFieldValue("Tel3", "input")});
            opener.$("select[name=Hp1]").attr({value: ReturnFieldValue("Hp1", "input")});
            opener.$("input[name=Hp2]").attr({value: ReturnFieldValue("Hp2", "input")});
            opener.$("input[name=Hp3]").attr({value: ReturnFieldValue("Hp3", "input")});
            opener.$("input[name=Zipcode1]").attr({value: ReturnFieldValue("Zipcode1", "input")});
            opener.$("input[name=Zipcode2]").attr({value: ReturnFieldValue("Zipcode2", "input")});
            opener.$("input[name=Zipcode3]").attr({value: ReturnFieldValue("Address", "input")});
            opener.$("input[name=Zipcode4]").attr({value: ReturnFieldValue("DetailAddress", "input")});
        }
    }

    function AllCheck(FieldName){ // Checkbox 전체 선택, 선택 상태값은 AllCheck 필드에 저장
        var AllCheckState, CheckState, CheckStateValue;

        AllCheckState = ReturnFieldValue("AllCheck", "input");

        if(AllCheckState == ""){
            CheckState = true;
            CheckStateValue = "Y";
        }else{
            CheckState = false;
            CheckStateValue = "";
        }

         $("input[name=AllCheck]").attr({ value : CheckStateValue});

        $("input[name=" + FieldName + "]").each(
            function(){
                this.checked = CheckState;
            }
        );
    }

	function setComma(str){
		str = "" + str + "";
		var retValue = "";
		
		for(i = 0; i < str.length; i++)
			if(i > 0 && (i % 3) == 0)
				retValue = str.charAt(str.length - i -1) + "," + retValue;
			else
				retValue = str.charAt(str.length - i -1) + retValue;
		
		return retValue;
	}

    function CheckValueReset(FieldName){
        $("input[name=" + FieldName + "]").attr({checked : false });
    }

    function JuminCheck(FieldName){
        var Number = $("input[name=" + FieldName + "1]").val() + $("input[name=" + FieldName + "2]").val();
		var Sum=0;
		var Chk=0;
	
		for	(i=0;i<12;i++)	{
			if(i<8)
				Sum+=parseInt(Number.charAt(i))*(i+2);

			if(i>7)
				Sum+=parseInt(Number.charAt(i))*(i-6);
		}
		
		Chk = (Sum%11) + parseInt(Number.charAt(12));

        if(!(Chk == 1 || Chk == 11))	{
            alert("올바른 주민등록번호가 아닙니다.");
			return false;
		}else{
            return true;
        }
    }

    function JuminCheck2(Number){
		var Sum=0;
		var Chk=0;
	
		for	(i=0;i<12;i++)	{
			if(i<8)
				Sum+=parseInt(Number.charAt(i))*(i+2);

			if(i>7)
				Sum+=parseInt(Number.charAt(i))*(i-6);
		}
		
		Chk = (Sum%11) + parseInt(Number.charAt(12));

        if(!(Chk == 1 || Chk == 11))	{
            alert("올바른 주민등록번호가 아닙니다.");
			return false;
		}else{
            return true;
        }
    }
	
	function ForeignNumberCheck(FieldName){
		var ForeignNumber = $("input[name=" + FieldName + "1]").val() + $("input[name=" + FieldName + "2]").val();

		sum = 0;

		if(ParseInt(ForeignNumber.Substring(7, 2)) % 2 != 0){
			return false;      
		}

		for(var i = 0; i < 12; i++){
			sum += ParseInt(ForeignNumber.Substring(i, 1)) * ((i % 8) + 2);
		}

		if((((11 - (sum % 11)) % 10 + 2) % 10) == ParseInt(ForeignNumber.Substring(12, 1))){
			return true;
		}else{
			return false;
		}
	}

    function EmailInputFieldDisplay(Value){
        $("input[Name=Email2]").attr({value: Value});
        
        if($("select[name=EmailDomain]").val() == ""){
//            $("input[Name=Email2]:style").attr({width: 120});
            $("input[Name=Email2]").css({width: 120});
            $("#EmailTD").css({width:130});
        }else{
//            $("input[Name=Email2]:style").attr({width: 0});
            $("input[Name=Email2]").css({width: 0});
            $("#EmailTD").css({width:0});
        }
    }

    function Random(StartNumber, FinishNumber){
       var rand = Math.floor(Math.random() * FinishNumber) + StartNumber;

       return rand;
    }
    
    function TextLength(FieldName){
        var cByte = 0;
        var ContentsLength = $(":textarea:input[name=" + FieldName +"]").val().length;
        
        for(var i = 0; i < ContentsLength; i++){
            var TempChar = $(":textarea:input[name=" + FieldName +"]").val().charAt(i);

            if(escape(TempChar).length > 4)
                cByte += 2;
            else
                cByte += 1;
        }

        return cByte;
    }
    
//    $(document).ajaxError(
//        function(info, xhr){
//            if(xhr.status == 500){
//                alert(xhr.statusText);
//            }
//        }
//    );
//=====================================================================================
// Made in Korea Finish (JQuery)
//=====================================================================================
