$(document).ready(function() {
	// validate signup form on keyup and submit

$.validator.addMethod('username', function (value) {
				return /^\w+$/.test(value);
			}, 'der Benutzername darf nur Zahlen, Buchstaben und _ enthalten.Der Benutzername darf keine Umlaute oder andere Sonderzeichen enthalten!');
	var validator = $("#signupform").validate({
		rules: {
			firstname: "required",
			lastname: "required",
			plak: {
				required: true,
				minlength: 4,

				username: true,
				remote: "registration/plak/"
			},
			email: {
				required: true,
				email: true,
				remote: "registration/email/"
			},
			terms_chk: "required"
		},
		messages: {
			firstname: "Sie können sich erst registrieren, nachdem Sie dieses Feld ausgefüllt haben",
			lastname: "Sie können sich erst registrieren, nachdem Sie dieses Feld ausgefüllt haben",
			plak: {
				required: "Sie können sich erst registrieren, nachdem Sie dieses Feld ausgefüllt haben",
				minlength: jQuery.format("Mindestens {0} Zeichen eintragen"),
				regex: "lETTERS",
				remote: jQuery.format("{0} ist schon vergeben")

			},
			email: {
				required: "Sie können sich erst registrieren, nachdem Sie dieses Feld ausgefüllt haben",
				minlength: "Die email-Adresse ist nicht valid",
				remote: jQuery.format("{0} wird schon verwendet")
			},
			terms_chk: "Sie müssen die Nutzungsbedingungen akzeptieren, um sich registrieren zu können"
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) {
		if ( element.is(":checkbox") )
				error.appendTo ( element.parent().next().next());
			else
				error.appendTo( element.parent().next() );
		},

		// specifying a submitHandler prevents the default submit, good for the demo
		// set this class to error-labels to indicate valid fields
		success: function(label) {
			// set &nbsp; as text for IE
			label.html("&nbsp;").addClass("checked");

		}
	});
});
