jQuery.validator.addMethod("timeOfDay", function(value, element) { 
	var check = true;
	var re = /^(\d{1,2}):(\d{2}) *([ap]\.?m\.?)?$/
	if(regs = value.match(re)) { 
		if(regs[3]) { 
			if(regs[1] < 1 || regs[1] > 12) { 
				check = false;
			} 
		} else { 
			if(regs[1] > 23) { 
				check = false;
			} 
		} 
		if(regs[2] > 59) { 
			check = false;
		} 
	} else { 
		check = false;
	} 
	return this.optional(element) || check; 
}, "Please a valid time (hh:mm am/pm.)"); 
jQuery.validator.addMethod("phone", function(phone_number, element) {
    phone_number = phone_number.replace(/\D+/g, "");
	return this.optional(element) || phone_number.match(/^(1)?([2-9]\d{2})([2-9]\d{2})(\d{4})$/);
}, "Please specify a valid phone number");
jQuery.validator.addMethod("zipCode", function(value, element) {
	return this.optional(element) || /^\d{5}(-\d{4})?$/.test(value);
}, "Please specify a valid Zip Code");
jQuery.validator.addMethod("stateUS", function(value, element) {
	var ast = "al|ak|as|az|ar|ca|co|ct|de|dc|fm|fl|ga|gu|hi|id|il|in|ia|ks|ky|la|me|mh|md|ma|mi|mn|ms|mo|mt|ne|nv|nh|nj|nm|ny|nc|nd|mp|oh|ok|or|pw|pa|pr|ri|sc|sd|tn|tx|ut|vt|vi|va|wa|wv|wi|wy|";
	return (ast.indexOf(value.toLowerCase() + "|") > -1);
}, "Please specify a valid U.S. state");