/****************************************
(c) 2010 Niels Kim, 050media
Lay-out: De Postwagen
Bestand: functies.js
****************************************/

var $$ = $.fn;

$$.extend({
	SplitID : function() {
		return this.attr('id').split('-').pop();
    },
	Slideshow : {
		Ready : function() {
			$('#head_slide_controls ul li')
			.hover(
				function() {
					$(this).addClass('head_slide_control_hover');
				},
				function() {
					$(this).removeClass('head_slide_control_hover');
				}
			)
			.click(
				function() {
					$$.Slideshow.Interrupted = true;

					$('div.head_slide').hide();
					$('#head_slide_controls ul li').removeClass('head_slide_control_huidig');	
					
					$('div#head_slide-' + $(this).SplitID()).show();
					$(this).addClass('head_slide_control_huidig');
        
					$$.Slideshow.Counter = parseInt($(this).SplitID());
					clearTimeout($$.Slideshow.Tijd);
					$$.Slideshow.Tijd = setTimeout('$$.Slideshow.Resume();', 5000); // Resume after 5 seconds
				}
			);

			this.Counter = 1;
			this.Interrupted = false;

			this.Transition();
		},
		Resume : function() {
			$('div.head_slide').hide();
			$('#head_slide_controls ul li').removeClass('head_slide_control_huidig');	

			if (this.Counter == 5) {
				this.Counter = 1;
			}
			else {
				this.Counter++;
			}

			this.Interrupted = false;
			this.Transition();
		},
		Transition : function() {
			if (this.Interrupted) {
				return;
			}

			this.Last = this.Counter - 1;

			if (this.Last < 1) {
				this.Last = 5;
			}

			$('div#head_slide-' + this.Last).fadeOut(
				'slow',
				function() {
					$('#head_slide_control-' + $$.Slideshow.Last).removeClass('head_slide_control_huidig');
					$('#head_slide_control-' + $$.Slideshow.Counter).addClass('head_slide_control_huidig');
					$('#head_slide-' + $$.Slideshow.Counter).fadeIn('slow');

					$$.Slideshow.Counter++;

					if ($$.Slideshow.Counter > 5) {
						$$.Slideshow.Counter = 1;
					}	

					setTimeout('$$.Slideshow.Transition();', 5000);
				}
			);
		}
	}
});

$(document).ready(
	function() {
		$$.Slideshow.Ready();
	}
);

$('#newsletterpost').submit(function(event) {
	var valid = true;
	$("#newsletterpost input.req").each(function () {
		$(this).removeClass('error');
		var val = $(this).val();
		val = $.trim(val);

		if(val.length == 0) {
			event.preventDefault();
			event.stopPropagation();
			alert("Er moet een emailadres ingevuld worden");
			valid = false;
			$(this).addClass('error');
		} else if($(this).hasClass('emailaddress')) {
			var emailPattern = /^([A-Za-z0-9_\+\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
			if(!emailPattern.test($(this).val())) {
				$(this).addClass('error');
				event.preventDefault();
				event.stopPropagation();
				alert("Het ingevulde emailadres is incorrect.");
				valid = false;
				return false;
			}
		}
	});
});

