$(document).ready(function() {
	// validate signup form on keyup and submit
	var validator = $("#customer_registration").validate({
		rules: {
			firstname: "required",
			surname: "required",
			username: {
				required: true,
				email: true
				//,remote: "users.php"
				},
			password: {
				required: true,
				minlength: 5
				},
			password_confirm: {
				required: true,
				minlength: 5,
				equalTo: "#password"
				},
			phone_daytime: {
				required:true,
				phone: true
				},
			address1: "required",
			county: "required",
			postcode: {
				required: true,
				postcode: true
				},
			accept_terms: "required",
			child1_dob_day: "required",
			child1_dob_month: "required",
			child1_dob_year: "required",
			captcha: "required"
		},
		messages: {
			firstname: "Enter your firstname",
			surname: "Enter your lastname",
			username: {
				required: "Please enter a valid email address",
				minlength: "Please enter a valid email address",
				remote: jQuery.format("{0} is already in use")
				},
			password: {
				required: "Provide a password",
				rangelength: jQuery.format("Enter at least {0} characters")
				},
			password_confirm: {
				required: "Repeat your password",
				minlength: jQuery.format("Enter at least {0} characters"),
				equalTo: "Enter the same password as above"
				},
			phone_daytime: "Please enter a valid contact phone number",
			address1: "Please enter your house number and street address",
			county: "Please select your county",
			postcode: "Please enter a valid UK postcode",
			accept_terms: "Please indicate that you accept our terms and conditions",
			child1_dob_day: "?",
			child1_dob_month: "?",
			child1_dob_year: "?",
			captcha: "Please answer this security question"
		},
		// set this class to error-labels to indicate valid fields
		success: function(label) {
			// set &nbsp; as text for IE
			label.html("&nbsp;").addClass("checked");
		}
	});
	
	var profilevalidator = $("#customer_profile").validate({
		rules: {
			firstname: "required",
			surname: "required",
			username: {
				required: true,
				email: true
				},
			password_confirm: {
				required: function(element) { 
                	return $("#password").is(":true"); 
            		},
            	minlength: 5,
				equalTo: "#password"
				},
			current_password: {
				required: function(element) { 
                	return $("#password").is(":true"); 
            		},
				minlength: 5
				},
			address1: "required",
			postcode: "required",
			child1_dob_day: "required",
			child1_dob_month: "required",
			child1_dob_year: "required"
		},
		messages: {
			firstname: "Enter your firstname",
			surname: "Enter your lastname",
			username: {
				required: "Please enter a valid email address",
				minlength: "Please enter a valid email address",
				remote: jQuery.format("{0} is already in use")
				},
			password_confirm: {
				required: "Repeat your password",
				minlength: jQuery.format("Enter at least {0} characters"),
				equalTo: "Enter the same password as above"
				},
			current_password: {
				required: "Please enter your current password"
				},
			address1: "Please enter your house number and street address",
			postcode: "Please enter a valid postcode",
			child1_dob_day: "?",
			child1_dob_month: "?",
			child1_dob_year: "?"
		},
		// set this class to error-labels to indicate valid fields
		success: function(label) {
			// set &nbsp; as text for IE
			label.html("&nbsp;").addClass("checked");
		}
	});


var validator = $("#entryform").validate({
		rules: {
			title: {
				required: true,
				minlength: 2
				},
			field_id_23: "required",
			field_id_24: "required",
			field_id_25: "required",			
			field_id_26: "required",
			field_id_34: "required",
			field_id_37: "required"
		},
		messages: {
			title: "Please enter your child's name",
			field_id_23: "Please enter your child's date of birth",
			field_id_24: "Please enter your child's date of birth",
			field_id_25: "Please enter your child's date of birth",
			field_id_26: "Please enter your child's sex",
			field_id_34: "Please select a subscription level",
			field_id_37: "Please tell us where you heard about us"
		},
		groups: {
			dob: "field_id_23 field_id_24 field_id_25"
		},
		errorPlacement: function(error, element) {
			if (element.attr("name") == "field_id_23"
				|| element.attr("name") == "field_id_24" )
			  error.insertAfter("#field_id_25");
			else if (element.attr("name") == "field_id_26" )
			  error.insertAfter("#aftersex");
			else if (element.attr("name") == "field_id_34" )
			  error.insertAfter("#lastbox");
			else
			  error.insertAfter(element);
		}
		
		});
	var hp_postcodevalidator = $("#Postcodes").validate({
		submitHandler: function(form) {
			/*$(form).ajaxForm({ 
		       		target: '#postcodebox', 
	        		success: function() { 
		        	    $('#postcodebox').fadeIn('slow'); 
					}
			}); */
			$(form).ajaxSubmit({
				target: "#postcodebox"
			});

		},
		errorElement: "p",
		rules: {
			user_postcode: {
				required: true,
				postcode: true
				}
			}
		});

	var reg_postcodevalidator = $("#reg_postcodes").validate({
		errorElement: "p",
		rules: {
			user_postcode: {
				required: true,
				postcode: true
				}
			}
		});
});
