$(document).ready(function(){
	
	function onSubmit(form){
		var bizPhone = $('#bizphone').attr('value');
		var fax = $('#fax').attr('value');
		
		var cleanedPhone = bizPhone.replace(/\D/g,'');
		var cleanedFax = fax.replace(/\D/g,'');

		$('#bizphone').attr('value',cleanedPhone);
		$('#fax').attr('value',cleanedFax);
		
		form.submit();
	}
	
	function countUnchecked() {
      var n = $(".inputcheckbox:unchecked").length;
      if (n > 2){
		$("#chex").text("Please select at least one of the above.");
	} else {
		$("#chex").text(" ");
	}
    }
	$(":checkbox").click(countUnchecked);

	
	jQuery.validator.addMethod("phoneUS", function(phone_number, element) {
	    phone_number = phone_number.replace(/\s+/g, ""); 
		return this.optional(element) || phone_number.length > 9 && phone_number.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/);
	}, "Please specify a valid phone number");
	
	// form validation jquery
	var validConf = {
		focusCleanup:true,
		errorClass:'errormsg',
		validClass:'valid',
		success: function(input){
			input.addClass("success");
		},
		submitHandler:onSubmit,
		rules:{
			sevfld_2:{
				required:true,
				minlength:2
			},
			sevfld_3:{
				required:true,
				minlength:2
			},
			sevfld_1:{
				required:true,
				email:true,
				equalTo:'#email'
			},
			email:{
				required:true,
				email:true
			},
			sevfld_9:{ 
				phoneUS:true
			},
			sevfld_10:{ 
				phoneUS:true
			},
			

		},
		errorPlacement: function(error,element){
			if( element.attr('name') == '4'){
				error.insertAfter('#mailinglists');
			} else {
				error.insertAfter(element);
			}
		},
		messages:{
			sevfld_2:{
				required:'<i class="shortlabel">Please enter your first name.</i>',
				minlength:'<i class="shortlabel">Please enter your first name.</i>'
			},
			sevfld_3:{
				required:'<i class="shortlabel">Please enter your last name.</i>',
				minlength:'<i class="shortlabel">Please enter your last name.</i>'
			},
			email:{
				required:"Please enter your email address.",
				email: "Your email must be in the format of name@domain.com."
			},
			sevfld_1:{
				required:"Please confirm your email address.",
				equalTo:'Please enter an email confirmation that matches email.',
				email: "Your email must be in the format of name@domain.com."
				
			},
			sevfld_9:'<i class="shortlabel">Please enter a phone number with 10 digits.</i>',
			sevfld_10:'<i class="shortlabel">Please enter a fax number with 10 digits.</i>'
		}
	}

	$('#email_form').validate(validConf);

});
