$(document).ready(function() {
	$.validator.addMethod("nospace", function(value, element) {
		var temp;
		temp = true;
		str1 = /\s/;
		str2 = /[A-Za-z0-9_]/;
		temp = !str1.test(value);
		temp = !str2.test(value);
		return temp;
	}, "Only A-Z, a-z, 0-9 and _ is allowed.");
	
	 $("#frmRegister").validate({
		errorElement:'div',
		rules: {
			username: {
				required: true,		
				minlength: 2,			
				maxlength: 20,				
				remote: SITEROOT + "/modules/register/ajax_chkemail.php"
			},
			password: {
				required: true,
				minlength: 6				
			},
			cnpassword: {
				required: true,
				minlength: 6,				
				equalTo: "#password"
			},
			FirstName: {
				required: true,
				minlength: 2,
				maxlength: 20
			},
			LastName: {
				required: true,
				minlength: 2,
				maxlength: 20
			},
			Address: {
				required: true,
				minlength: 2				
			},
			Country: {
				required: true				
			},
			province: {
				required: true				
			},
			city: {
				required: true
			},			 
			PostalCode: {
				required: true,
				minlength: 4,
				maxlength: 6
				//	nospace: true
			},
			HomePhone: {
				required: true,
				minlength: 5,
				maxlength: 15,
				digits: true
			},
			CellPhone: {				
				minlength: 5,
				maxlength: 15,
				digits: true
			},
			OtherPhone: {				
				minlength: 5,
				maxlength: 15,
				digits: true
			},
			Fax: {
				minlength: 5,
				maxlength: 15,
				digits: true
			},
			Email: {
				required: true,
				email: true,
				remote: SITEROOT + "/modules/register/ajax_chkemail.php"
				
			},
			contactmethod: {
				required: true
			},
			TimeToCall: {
				required: true
			},
			TypeId: {
				required: true
			}
		
		},
		messages: {
			username: {
				required: "Please enter user name",		
				minlength: jQuery.format("Enter at least {0} characters"),		
				maxlength: jQuery.format("Enter at most {0} characters"),
				remote: "Username already in use. Please enter another one."
			},
			password: {
				required: "Please enter password",
				minlength: jQuery.format("Enter at least {0} characters")				
			},
			cnpassword: {
				required: "Please enter confirm password",
				minlength: jQuery.format("Enter at least {0} characters"),				
				equalTo: "Enter the same password as above"
			},
			FirstName: {
				required: "Please enter first name",
				minlength: jQuery.format("Enter at least {0} characters"),
				maxlength: jQuery.format("Enter at most {0} characters")
			},
			LastName: {
				required: "Please enter last name",
				minlength: jQuery.format("Enter at least {0} characters"),
				maxlength: jQuery.format("Enter at most {0} characters")
			},
			Address: {
				required: "Please enter address",
				minlength: jQuery.format("Enter at least {0} characters"),
				maxlength: jQuery.format("Enter at most {0} characters")
			},
			Country: {
				required: "Please select country"
				
			}, 
			province: {
				required: "Please select province"
				
			}, 
			city: {
				required: "Please select city"
			},
			
			PostalCode: {
				required: "Please enter postal code.",
				minlength: jQuery.format("Enter at least {0} characters"),
				maxlength: jQuery.format("Enter at most {0} characters")
			},
			HomePhone: {
				required: "Please enter home phone number.",
				minlength: jQuery.format("Enter at least {0} characters"),
				maxlength: jQuery.format("Enter at most {0} characters")
			},
			CellPhone: {
				required: "Please enter mobile number.",
				minlength: jQuery.format("Enter at least {0} characters"),
				maxlength: jQuery.format("Enter at most {0} characters")
			},
			OtherPhone: {
				required: "Please enter another phone number.",
				minlength: jQuery.format("Enter at least {0} characters"),
				maxlength: jQuery.format("Enter at most {0} characters")
			},
			Fax: {
				required: "Please enter fax number.",
				minlength: jQuery.format("Enter at least {0} characters"),
				maxlength: jQuery.format("Enter at most {0} characters")
			},

			Email: {
				required: "Please enter email.",			
				remote: "Email address already in use. Please enter another one."
			},
			contactmethod: {
				required: "Please select preferred contact method."
			},
			TimeToCall: {
				required: "Please select time to call "
			},
			TypeId: {
				required: "Please select caregiver type."
			}
		},
	
		// set this class to error-labels to indicate valid fields
		success: function(label) {
			// set &nbsp; as text for IE
			label.hide();
			//document.frmRegister.submit();
		},
		submitHandler: function(){
			document.frmRegister.submit();
		}
	});

});