$(function() {
	
	
		var validateName = $('#validateName');
		var validateSurname = $('#validateSurname');
		var validateStreet = $('#validateStreet');
		var validatePostalcode = $('#validatePostalcode');
		var validateCity = $('#validateCity');
		var validateCountry = $('#validateCountry');
		var validateUsername = $('#validateUsername');
		var validatePassword = $('#validatePassword');
		var validatePassword2 = $('#validatePassword2');
		var validateEmail = $('#validateEmail');
		var paswoord = "";
		var paswoord2 = "";
		validateName.removeClass('error');
		validateSurname.removeClass('error');
		validateStreet.removeClass('error');
		validatePostalcode.removeClass('error');
		validateCity.removeClass('error');
		validateCountry.removeClass('error');
		validateUsername.removeClass('error');
		validatePassword.removeClass('error');
		validatePassword2.removeClass('error');
		validateEmail.removeClass('error');
		$('#name').keyup(function () {
			var t = this; 
			checkField(validateName, t, "Please fill in your name");
		});
		$('#surname').keyup(function () {
			var t = this; 
			checkField(validateSurname, t, "Please fill in your surname");
		});
		$('#street').keyup(function () {
			var t = this; 
			checkField(validateStreet, t, "Please fill in your street");
		});
		$('#postalcode').keyup(function () {
			var t = this; 
			checkField(validatePostalcode, t, "Please fill in your postalcode");
		});
		$('#city').keyup(function () {
			var t = this; 
			checkField(validateCity, t, "Please fill in your city");
		});
		$('#country').keyup(function () {
			var t = this; 
			checkField(validateCountry, t, "Please fill in your country");
		});
		$('#password').keyup(function () {
			var t = this; 
			paswoord = t.value;
			checkField(validatePassword, t, "Please fill in your password");
			checkPasswords();
		});

		$('#password2').keyup(function () {
			var t = this; 
			paswoord2 = t.value;
			checkPasswords();
		});
		
		function checkPasswords() {
			if (paswoord === paswoord2) {
				validatePassword2.removeClass('error');
				validatePassword2.addClass('ok').html('<span class="msg_tekst">Thank you.</span>');
				
			} else {
				validatePassword2.removeClass('ok');
				validatePassword2.addClass('error').html('<span class="msg_tekst">Please fill in the same password</span>');
			}
		}
		
		$('#email').keyup(function () {
			var t = this; 
			if (this.value != this.lastValue) {

				if (this.timer) clearTimeout(this.timer);

				if (!this.value) {
					validateEmail.removeClass('ok');
					validateEmail.addClass('error');
				} 
				this.timer = setTimeout(function () {
					
                    $.ajax({
                        url: 'includes/ajax_functions.php',
                        data: 'action=check_email&email=' + t.value,
                        dataType: 'json',
                        type: 'post',
                        success: function (j) {
                            // put the 'msg' field from the $resp array from check_username (php code) in to the validation message
                        	//alert("test");
                    		if (j.ok) {
                    			validateEmail.removeClass('error');
        						validateEmail.addClass('ok').html('<span class="msg_tekst">' + j.msg + '</span>');
                    		} else {
                    			validateEmail.removeClass('ok');
        						validateEmail.addClass('error').html('<span class="msg_tekst">' + j.msg + '</span>');
                    		}                    		
                        }
                    });
                }, 200);
				this.lastValue = this.value;
			}
		});
		$('#username').keyup(function () {
			var t = this; 
			if (t.value != t.lastValue) {

				if (t.timer) clearTimeout(t.timer);

				if (!t.value) {
					validateUsername.removeClass('ok');
					validateUsername.addClass('error').html('<span class="msg_tekst">Please fill in username</span>');
				} else {
					this.timer = setTimeout(function () {
						
	                    $.ajax({
	                        url: 'includes/ajax_functions.php',
	                        data: 'action=check_username&username=' + t.value,
	                        dataType: 'json',
	                        type: 'post',
	                        success: function (j) {
	                            // put the 'msg' field from the $resp array from check_username (php code) in to the validation message
	                        	//alert("test");
	                    		if (j.ok) {
	                    			validateUsername.removeClass('error');
	                    			validateUsername.addClass('ok').html('<span class="msg_tekst">' + j.msg + '</span>');
	                    		} else {
	                    			validateUsername.removeClass('ok');
	                    			validateUsername.addClass('error').html('<span class="msg_tekst">' + j.msg + '</span>');
	                    		}                    		
	                        }
	                    });
	                }, 200);
				}
				
				
				t.lastValue = t.value;
			}
		});
		
		function checkField(field, t, msg) {
			
			if (t.value != t.lastValue) {

				if (t.timer) clearTimeout(t.timer);

				if (!t.value) {
					field.removeClass('ok');
					field.addClass('error').html('<span class="msg_tekst">' + msg + '</span>');
				} else {
					field.removeClass('error');
					field.addClass('ok').html('<span class="msg_tekst">Thank you.</span>');
				}
				t.lastValue = t.value;
			}
		}
		
	});