$(document).ready(function() {
	// validate signup form on keyup and submit
	var validator = $("#signupform").validate({
		rules: {
			firstname: "required",
			lastname: "required",
			mobile: "required",
			postcode: "required",
			username: {
				required: true,
				minlength: 2,
				remote: "users.php"
			},
			password: {
				required: true,
				minlength: 5
			},
			age: {
				required: true
				
			},
			
			rallyid: {
				required: true
				
			},
			
			ethnicityid: {
				required: true
				
			},
			universityid: {
				required: true
				
			},
			facultyid: {
				required: true
				
			},
			levelid: {
				required: true
				
			},
			graduationyear: {
				required: true
				
			},
			employment_status_id: {
				required: true
				
			},
			
			gender: {
				required: true
				
			},	
			
			self_employed: {
				required: true
				
			},	
			
			business_idea: {
				required: true
				
			},	
			
			mobile: {
				required: true,
				number: true,
				minlength: 10		

			},
			postcode: {
				required: true,
				minlength: 5
			},
			
			password_confirm: {
				required: true,
				minlength: 5,
				equalTo: "#password"
			},
			email: {
				required: true,
				email: true,
				remote: {
				url: "http://makeithappen.flyingstartonline.com/public/home/check_email",
				type: "post"
				}	
			},
			dateformat: "required",
			terms: "required"
		},
		messages: {
			firstname: "Enter your firstname",
			lastname: "Enter your lastname",
			username: {
				required: "Enter a username",
				minlength: jQuery.format("Enter at least {0} characters"),
				remote: jQuery.format("{0} is already in use")
			},
			password: {
				required: "Provide a password",
				rangelength: jQuery.format("Enter at least {0} characters")
			},
			
			mobile: {
				required: "Provide a mobile number",
				rangelength: jQuery.format("Enter at least {0} characters")
			},
			
			postcode: {
				required: "Provide a post code"
				
			},
			
			age: {
				required: "Select your age"
				
			},
			
			rallyid: {
				required: "Select an Event"
				
			},
			
			ethnicityid: {
				required: "Select your ethnicity"
				
			},
			
			universityid: {
				required: "Select University"
				
			},
			
			facultyid: {
				required: "Select Faculty"
				
			},
			
			levelid: {
				required: "Select Level"
				
			},
			
			graduationyear: {
				required: "Select Year of Graduation"
				
			},
			
			employment_status_id: {
				required: "Select Employment Status"
				
			},
			
			gender: {
				required: "Select"
				
			},	
			
			self_employed: {
				required: "Select"
				
			},	
			
			business_idea: {
				required: "Select"
				
			},	
			password_confirm: {
				required: "Repeat your password",
				minlength: jQuery.format("Enter at least {0} characters"),
				equalTo: "Enter the same password as above"
			},
			email: {
				required: "Enter a valid email address",
				minlength: "Enter a valid email address",
				remote: jQuery.format("{0} is already in use")
			},
			dateformat: "Choose your preferred dateformat",
			terms: " "
		},
		
		// specifying a submitHandler prevents the default submit, good for the demo
		submitHandler: function() {
			$.post("http://makeithappen.flyingstartonline.com/public/home/send_email", $("#signupform").serialize());
			 $('#form').fadeOut('slow');   
			 $('#done').fadeIn('slow');
		},
		

		// set this class to error-labels to indicate valid fields
		success: function(label) {
			// set &nbsp; as text for IE
			label.html("&nbsp;").addClass("checked");
		}
	});
	
	// propose username by combining first- and lastname
	$("#username").focus(function() {
		var firstname = $("#firstname").val();
		var lastname = $("#lastname").val();
		if(firstname && lastname && !this.value) {
			this.value = firstname + "." + lastname;
		}
	});

});