jQuery.validator.messages.required 	= 'U dient dit veld in te voeren.';
jQuery.validator.messages.email 	= 'U dient een geldig email adres in te voeren.';
jQuery.validator.messages.equalTo	= 'Dit veld dient identiek aan het eerste wachtwoord te zijn.';

jQuery.validator.addMethod("IsEmail", function(value, element) {
	return this.optional(element) || /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/i.test(value);
}, "U dient een geldig email adres in te voeren.");

jQuery.validator.addMethod("IsString", function(value, element) {
	return this.optional(element) || typeof(value) == 'string';
}, "Bla.");

jQuery.validator.addMethod("IsText", function(value, element) {
	return this.optional(element) || typeof(value) == 'string';
}, "Bla.");

jQuery.validator.addMethod("IsAlphaNum", function(value, element) {
	return this.optional(element) || /^\w+$/i.test(value);
}, "Voer een alphanumerieke waarde in.");  

jQuery.validator.addMethod("IsDigit", function(value, element) {
	return this.optional(element) || /^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test(value);
}, "Voer een numerieke waarde in.");  

jQuery.validator.addMethod("IsURL", function(value, element) {
	return this.optional(element) || /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/i.test(value);
}, "Deze url is niet geldig, controleer of u \"http://\" ervoor heeft gezet.");  


jQuery.validator.addMethod("IsPostcode", function(value, element) { 
	return this.optional(element) || 	/^[1-9]\d{3} ?[a-zA-Z]{2}$/.test(value);
 }, "Voer een geldige postcode in.");

jQuery.validator.addMethod("maxWords", function(value, element, params) { 
    return this.optional(element) || value.match(/bw+b/g).length < params; 
}, "Please enter {0} words or less."); 
 
jQuery.validator.addMethod("minWords", function(value, element, params) { 
    return this.optional(element) || value.match(/bw+b/g).length >= params; 
}, "Please enter at least {0} words."); 
 
jQuery.validator.addMethod("rangeWords", function(value, element, params) { 
    return this.optional(element) || (value.match(/bw+b/g).length >= params[0] && $(element).val().match(/bw+b/g).length < params[1]); 
}, "Please enter between {0} and {1} words.");


jQuery.validator.addMethod("letterswithbasicpunc", function(value, element) {
	return this.optional(element) || /^[a-z-.,()'\"s]+$/i.test(value);
}, "Letters or punctuation only please");  

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("nowhitespace", function(value, element) {
	return this.optional(element) || /^S+$/i.test(value);
}, "No white space please"); 

jQuery.validator.addMethod("anything", function(value, element) {
	return this.optional(element) || /^.+$/i.test(value);
}, "May contain any characters."); 

jQuery.validator.addMethod("zinteger", function(value, element) {
	return this.optional(element) || /^d+$/i.test(value);
}, "Numbers only please");

jQuery.validator.addMethod("phone", function(value, element) {
	return this.optional(element) || /^d{3}-d{3}-d{4}$/.test(value);
}, "Must be XXX-XXX-XXXX");

jQuery.validator.addMethod("ziprange", function(value, element) {
	return this.optional(element) || /^90[2-5]\d\{2}-\d{4}$/.test(value);
}, "Your ZIP-code must be in the range 902xx-xxxx to 905-xx-xxxx");

