$().ready(function() {


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


$.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');

$.validator.addMethod("checkurl", function(value,element) {
	return this.optional(element) || /http:\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/.test(value);
}, 'enter a valid URL');

$.validator.addMethod("checkmessage", function(value,label) {
		return !value.match(/[^-a-zA-Z0-9'",.\!\?\/\\+\$\&\(\)@:;%_ ]/);
}, 'illegal characters');


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

		rules: {
			name:{
				required:true,
				checkinput:true
			},
			email: {
				required: true,
				email: true
			},
			message: {
				required: true,
				checkmessage: true
			}
			},
		messages: {
			name: {
				required: "required",
				checkinput: "illegal characters"
				},			
			email: {
				required: "required",
				email: "Enter a valid email"
				},
			message: {
				required: "required",
				checkmessage: "illegal characters"
				}
			},
			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;');
		},
		submitHandler: function(form) {
		jQuery("#contactForm").ajaxSubmit({
  			 		url:"ajax/contacts-mailer.php",
  			 		type:"post",
  			 		success: showResponse
  			 		});
		return false;
		}
		});


});


function showResponse(responseText, statusText,validator) {

$(".success").hide();


if (responseText == 'true') {
alert("Thank you for emailing Digital Group Media. We will respond as soon as possible.");

validator.resetForm();


} else if (responseText == 'false') {
alert("Sorry your email could not be sent. Please try again.");
}

return false;
}