String.prototype.repeat = function(num)
{
	return new Array(num + 1).join(this);
}

google.load("jquery", "1.6.3");
google.load("jqueryui", "1.8.16");
google.load("swfobject", "2.2");

google.setOnLoadCallback(function()
{
	$(function()
	{
		/**
		 * Setup some default stuff
		 */
		$("a[rel='confirm']").click(function(event)
		{
			return confirm("weet u het zeker?");
		});

		$("a[rel='external']").attr("target", "_blank");

		$("input.selected").focus();

		jQuery.validator.messages.required = {};
		jQuery.validator.messages.remote = {};
		jQuery.validator.messages.email = {};
		jQuery.validator.messages.url = {};
		jQuery.validator.messages.date = {};
		jQuery.validator.messages.dateISO = {};
		jQuery.validator.messages.number = {};
		jQuery.validator.messages.digits = {};
		jQuery.validator.messages.creditcard = {};
		jQuery.validator.messages.equalTo = {};
		jQuery.validator.messages.accept = {};
		jQuery.validator.messages.maxlength = {};
		jQuery.validator.messages.minlength = {};
		jQuery.validator.messages.rangelength = {};
		jQuery.validator.messages.range = {};
		jQuery.validator.messages.max = {};
		jQuery.validator.messages.min = {};

		jQuery.validator.addMethod("postalcode", function(value, element) {
				$(element).val(value.toUpperCase());
				value = $(element).val();
				return this.optional(element) || /^[0-9]{4}\ ?[A-Z]{2}$/.test(value);
			},
			""
		);
		jQuery.validator.addMethod("europeandate", function(value, element) {
				return this.optional(element) || /^[0-9]{2}\-[0-9]{2}\-[0-9]{4}$/.test(value);
			},
			""
		);
		jQuery.validator.addMethod("checkFirstName", function (value, element){
			return this.optional(element) || (value != 'voornaam' && value != '');
		}, "");
		jQuery.validator.addMethod("checkLastName", function (value, element){
			return this.optional(element) || (value != 'achternaam' && value != '');
		}, "");
		jQuery.validator.addMethod("checkActivationCode", function(value, element) {
				return this.optional(element) || /^[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{4}$/.test(value);
			},
			""
		);
		jQuery.validator.addMethod("checkNormalInput", function(value, element) {
				return this.optional(element) || value == '' || /^[0-9a-zA-Z\-_\.,\ !\*\^#@\(\)%\$&=\+~\|'";:\?]*$/.test(value);
			},
			""
		);
		jQuery.validator.setDefaults({
			focusInvalid: true,
			errorPlacement: function(error, element) {
			},
			highlight: function (element, errorClass) {
				$(element).css({"color": "red"});
				$("label[for='" + $(element).attr("id") + "']").css({"color": "red"});
			},
			unhighlight: function (element, errorClass) {
				$(element).css({"color": "black"});
				$("label[for='" + $(element).attr("id") + "']").css({"color": "black"});
			}
		});
	});
});

