function checkBirthdate()
{
	var day   = parseInt($('#birthdate select:eq(0) option:selected').val(), 10);
	var month = parseInt($('#birthdate select:eq(1) option:selected').val(), 10);
	var year  = parseInt($('#birthdate select:eq(2) option:selected').val(), 10);

	var oDate = new Date(year, month - 1, day);
	if (oDate.getDate() != day ||
	    oDate.getMonth() + 1 != month ||
	    oDate.getFullYear()  != year) {
		alert('Je hebt een ongeldige geboortedatum opgegeven.');
		return false;
	}

	return true;
}

function checkPassword()
{
	var email = $('#reg_email').val();
	var pass = $('#reg_password').val();

	if (email == pass) {
		return 'Het wachtwoord mag niet hetzelfde zijn als het e-mailadres.';
	}

	if (pass.length < 6) {
		return 'Het wachtwoord moet minimaal 6 karakters zijn.';
	}

	// Bixiekids passwords do not pass these validations

	/*if (!(/\d/.test(pass))) {
		return 'Het wachtwoord moet minimaal 1 cijfer bevatten.';
	}

	if (/^[\d]*$/.test(pass)) {
		return 'Het wachtwoord mag niet uit enkel cijfers bestaan.';
	}

	if (pass == pass.toLowerCase()) {
		return 'Het wachtwoord moet minimaal 1 hoofdletter bevatten.';
	}*/

	return 'Dit wachtwoord is ok.';
}

$(document).ready(function()
{
	// show bixiekids checkbox (so it isn't shown when javascript is disabled)
	$('#bixiekids').removeClass('displayNone');
	$('#bixiekids').addClass('displayBlock');

	$('#bixiekidsuser').click(function() {
		disableRegularForm(this.checked);
	});

	$('#bixiekidslogin').click(function() {
		var email = $('#reg_email').val();
		var pass = $('#reg_password').val();
		if (email && pass) {
			$.getJSON('/bixiekids/?email=' + email + '&pass=' + pass + '&callback=data', function(data) {
				if (typeof(data.email) != 'string') {
					msg('Deze gegevens zijn niet bij Bixiekids bekend');
					disableRegularForm(false);
					$('#bixiekidsuser').attr('checked', '');
					return false;
				}
				$('#reg_firstname').val(data.voornaam);
				$('#reg_lastname').val(data.achternaam);
				$('#reg_city').val(data.woonplaats);
				var parts = data.geboortedatum.split('-');
				$('#reg_birthDay option[value=' + parts[2] + ']').attr('selected', 'true');
				$('#reg_birthMonth option[value=' + parts[1] + ']').attr('selected', 'true');
				$('#reg_birthYear option[value=' + parts[0] + ']').attr('selected', 'true');
				disableRegularForm(false);
				$('#reg_passwordcheck').focus();
			});
		}
		else
		{
			msg('Je moet eerst je Bixiekids gegevens invullen om deze op te kunnen halen.');
		}
		return false;
	});

	$('#reg_password').change(function() {
		$('#passwordcheck').removeClass('displayNone');
		$('#passwordcheck').html(checkPassword());
	});

});

function disableRegularForm(bool)
{
	jQuery.each($('#privateData input'), function() {
		this.disabled = bool;
	});
	jQuery.each($('#privateData select'), function() {
		this.disabled = bool;
	});

	if (bool) {
		$('#reg_passwordcheck').attr('disabled', 'disabled');
		$('#bixiekidslogin').attr('disabled', '');
		$('#bixiekidslogin').removeClass('displayNone');
		$('#bixiekidslogin').addClass('displayBlock');
	} else {
		$('#reg_passwordcheck').attr('disabled', '');
		$('#bixiekidslogin').removeClass('displayBlock');
		$('#bixiekidslogin').addClass('displayNone');
		$('#bixiekidslogin').attr('disabled', 'disabled');
	}
}
