$().ready(function() {


$.validator.addMethod("checkinput", function(value,label) {
		return !value.match(/[^-a-zA-Z0-9', ]/);
}, 'illegal characters used');


$.validator.addMethod("checktel", function(value, element) {
	return this.optional(element) || (!value.match(/[^-0-9 .+\(\)]/));
},'enter valid telephone number');


$.validator.addMethod("checkoptional", function(value,element) {
	return this.optional(element) || (!value.match(/[^-a-zA-Z0-9', ]/));
}, 'illegal characters used');



var validator = $("#donateForm").validate({

		rules: {
			amount: {
				required:true,
				number: true
				
			},
			ministry: "required",
			name:{
				required:true,
				checkinput:true
			},
			address1:{
				required:true,
				checkinput:true
			},
			address2: "checkoptional",
			city:{
				required:true,
				checkinput:true
			},
			state:{
				required:true,
				checkinput:true
			},
			zip:{
				required:true,
				checkinput:true
			},
			tel: {
				checktel:true
			},
			email: {
				required: true,
				email: true
			}			
			},
		messages: {
			amount: {
				required: "required",
				number: "Please enter a number"
			},
			ministry: "required",
			name: {
				required: "required",
				checkinput: "illegal characters used"
				},
			address1: {
				required: "required",
				checkinput: "illegal characters used"
				},
			city: {
				required: "required",
				checkinput: "illegal characters used"
				},
			state: {
				required: "required",
				checkinput: "illegal characters used"
				},
			zip: {
				required: "required",
				checkinput: "illegal characters used"
				},
			email: {
				required: "required",
				email: "Enter a valid email"
				}
			},
			errorElement: "label",
			errorPlacement: function(error, element) {
				element.next("label").remove();
				error.insertAfter( element );
				element.next().addClass("error");				
			},

			success: function(error) {
				error.removeClass('error');
				error.addClass('success');
				error.html('&nbsp;');
			}
	});
		
		
});

