
jQuery(document).ready(function(){
	jQuery('.validatable_form').validate({
		errorElement: 'label',
		errorLabelContainer: jQuery('div.errorContainer'),
		submitHandler: function(form) {
			// prevent double submit
			if (!this.beenSubmitted) {
				this.beenSubmitted = true;
				form.submit();
			}
		}
    });

	jQuery('.validatable_register_form').validate({
    	groups: {
		    adres: 'street housenumber',
		    cityzipcode: 'zipCode city',
		    pocityzipcode: 'poBoxZipCode poBoxCity',
		    firstnamesex: 'firstName sex'
		},
		errorPlacement: function(error, element) {
		    if (element.attr('name') == 'street' 
		        || element.attr('name') == 'housenumber' ) {
		    error.insertAfter('#housenumber');
		    } else if (element.attr('name') == 'zipCode' 
		        || element.attr('name') == 'city' ) {
		    error.insertAfter('#city');
		    } else if (element.attr('name') == 'poBoxZipCode' 
		        || element.attr('name') == 'poBoxCity' ) {
		    error.insertAfter('#poBoxCity');
		    } else if (element.hasClass('radio')) {
		    	var radiogroup = element.parent().parent();
		    	radiogroup.addClass('error');	
		    	error.insertAfter(radiogroup);
		    } else if (element.attr('name') == 'firstName' 
		        || element.attr('name') == 'sex' ) {
			    error.insertAfter('#sex');
		    }
		    else {
		      error.insertAfter(element);
		    }
		    //adds red border to inputfields
		    if (element.tagName == 'input') {
		    	jQuery(element).addclass('error');
		    }
	    },
		rules: {
			password: {
				required: true
			},
			confirm_password: {
				required: true,
				equalTo: '#password'
			},			
			newpassword: {
				required: false
			},
			confirmnewpassword: {
				required: false,
				equalTo: '#password'
			}
		},	
		messages: {					required: 'Dit is een verplicht veld.',
			password: {
				required: 'Dit is een verplicht veld.'
			},
			confirm_password: {
				required: 'Dit veld is verplicht',
				equalTo: 'De wachtwoorden komen niet overeen'
			}
		},	
		submitHandler: function(form) {
			// prevent double submit
			if (!this.beenSubmitted) {
				this.beenSubmitted = true;
				form.submit();
			}
		}
    });	

	if ($('password.errors') != null) {
		$('password.errors').innerHTML = null;
	}
    	    
});

