var membership = function() {
    return {
        init : function() {
            //Address Validation Method
            jQuery.validator.addMethod("addressCheck", function(){
                    address = $("[name=address]").val();
                    if($('[name=country]').val() == "US"){
                        //Match US address format
                        if(address.match(/[0-9][\d\s][a-zA-Z]/)){return true;}
                        else{return false;}
                    }
                    if($('[name=country]').val() != "US"){
                        //Match International address format
                        if(address.match(/[A-Za-z0-9]*[A-Za-z]\-[0-9]{1,3}\s[0-9][0-9][A-Za-z0-9]*/)){return true;}
                        else{return false;}
                    }
                }, "Please correct the address");

            //Manipulate Entry Fields
            var validator = $("#membership_form").validate({
                rules: {
                    corp_name: {required: true, minlength: 2},
                    fname: {required: true, minlength: 2},
                    lname: {required: true, minlength: 2},
                    email: {required: true, email: true},
                    inst: {required: true, minlength: 2},
                    pass1: {required: true, minlength: 8},
                    pass2: {required: true, equalTo: "#pass1"},
                    //address: {required: true, addressCheck: true},
                    address: {required: true},
                    city: {required: true, minlength: 2},
                    //state: {required: true, minlength: 2},
                    //zip: {required: true, minlength: 5},
                    zip: {required: true},
                    web_add: {required: false, url: true}
                    }
                });
            
            //Corpration Name Entry Field
            if($("[name=mem_type]").val() != "corp"){
                $("#corp_name_label").hide();
                $("[name=corp_name]").rules('remove', 'required')
            }
            
            $("[name=mem_type]").change(function(){
                if($("[name=mem_type]").val() == "corp"){
                    $('#corp_name_label').show();
                    $("[name=corp_name]").rules('add', 'required')
                    }
                else{
                    $("#corp_name_label").hide();
                    $("[name=corp_name]").rules('remove', 'required')
                    }
                });
            //Hide state field if not in US
            $("[name=country]").change(function(){
                if($("[name=country]").val() != "US"){
                    $("#state_label").hide();
                    //$("#zip_label").hide();
                    $("[name=state]").rules('remove', 'required')
                    //$("[name=zip]").rules('remove', 'required')
                    }
                else{
                    $("#state_label").show();
                    //$("#zip_label").show();
                    $("[name=state]").rules('add', 'required')
                    //$("[name=zip]").rules('add', 'required')
                    }
                });

            //$("#submit").click(function(){
            //    
            //    });
        }
    }
}();
$(membership.init);
 

