// JavaScript: activate JQuery validate plugin
  $(document).ready(function(){

  jQuery.validator.addMethod("alphanumeric", function(value, element) {
	return this.optional(element) || /^\w+$/i.test(value);
  }, "Letters, numbers, spaces or underscores only please");  

  jQuery.validator.addMethod("lettersonly", function(value, element) {
	return this.optional(element) || /^[a-z]+$/i.test(value);
  }, "Letters only please"); 

  jQuery.validator.addMethod("numbersonly", function(value, element) {
	return this.optional(element) || /^[0-9]+$/i.test(value);
  }, "Numbers only please"); 

	// validate signup form on keyup and submit
	$("#regform").validate({
		rules: {
			fname: {
				required: true,
				lettersonly: true,
				minlength: 2,
				maxlength: 35
			},
			lname: {
				required: true,
				lettersonly: true,
				minlength: 2,
				maxlength: 35
			},
			login: {
				required: true,
				minlength: 8,
				maxlength: 35
			},
			password: {
				required: true,
				alphanumeric: true,
				minlength: 8,
				maxlength: 35
			},
			cpassword: {
				required: true,
				equalTo: "#password",
				alphanumeric: true,
				minlength: 8,
				maxlength: 35
			},
			email: {
				required: true,
				email: true
			},
			email2: {
				required: true,
				equalTo: "#email",
				email: true
			},
			address1: {
				required: true,
				minlength: 5,
				maxlength: 65
			},
			city: {
				required: true,
				minlength: 3,
				maxlength: 45
			},
			state: {
				required: true,
				lettersonly: true
			},
			zip: {
				required: true,
				numbersonly: true,
				minlength: 5,
				maxlength: 5
			},
			phone1: {
				required: true,
				minlength: 10,
				maxlength: 14
			},
			captchacode: "required"
		},
		messages: {
			login: {
				required: "Please enter a login name",
				minlength: "Your login name must consist of at least 8 characters",
				maxlength: "Your login name cannot contain more than 35 characters"
			},
			password: {
				required: "Please provide a password",
				minlength: "Your password must be at least 8 characters long"
			},
			cpassword: {
				required: "Please provide a password",
				minlength: "Your password must be at least 8 characters long",
				equalTo: "Please enter the same password as above"
			},
			city: {
				required: "Please enter your city",
				minlength: "City name must be at least 3 characters",
				maxlength: "City name cannot be more than 45 characters"
			},
			state: {
				required: "Please select a state",
				lettersonly: "Please select a state"
			},
			zip: {
				required: "Please provide a zip code",
				minlength: "Zip code must be 5 characters",
				maxlength: "Zip code must be 5 characters"
			},
			email: "Please enter a valid email address",
			cemail: {
				required: "Please confirm your email address",
				equalTo: "Please enter the same email address as above"
			},
			captchacode: "Please enter the numbers and/or letters you see in the CAPTCHA code"
		}
	});
	
	// check if confirm password is still valid after password changed
	$("#password").blur(function() {
		$("#cpassword").valid();
	});

});
  