window.addEvent('domready',function() {

	$$('a[rel=external]').set('target', '_blank');

	if ($('q')) {
		initSearchForm();
	}
	
	if (location.href.contains('/contact/') && $('formcontact')) {
		initContactForm();
	}
	
	if ($('content')) {
		resizeContent();
	}
});

window.onload = function() {
    if ($('slideshow')) {
		initSlideShow();
	}
}

var resizeContent = function() {
	if ($('content').getSize().y < 700) {
		$('content').setStyle('height', '700px');
	}
}

var initSearchForm = function() {
	new OverText($('q'));

	$('q').addEvents({
		'focus' : function() {
			this.addClass('active');
		},
		'blur' : function() {
			this.removeClass('active');		
		}
	});
}

var initContactForm = function() {
	$('formcontact').addEvent('submit',function(e) {
		new Event(e).stop();

		var valid = true;

		$$('.reqFld').each(function(field) {
			field.removeClass('reqFldEmpty');
			if(field.get('value') == '') {
			  field.addClass('reqFldEmpty');
			  valid = false;
			}
		});

		if (!valid) {
			alert('De gekleurde velden zijn verplicht');
			return;
		}

		$("formcontact").submit();
	});
}

var timeoutSlideshow;

var initSlideShow = function() {
	Pic.each(function(image) {
		new Element('img', {
			'src' : image
		}).setStyle('opacity', 0).inject($('productImg'));
	});

	$('productImg').getElement('img').destroy();
	$('productImg').getElement('img').setStyle('opacity', 1);

	initSlideShowPeriodical();

	$('controls').setStyle('opacity', 0);

	$$('div.control').each(function(control) {
		control.addEvents({
			'mouseenter' : function() {
				this.getElement('img').set('src', this.getElement('img').get('src').replace('.', '_blue.'));
			},
			'mouseleave' : function() {
				this.getElement('img').set('src', this.getElement('img').get('src').replace('_blue', ''));
			}
		});
	})

	$('slideshow').addEvents({
		'mouseenter' : function() {
			$('controls').fade('in');
		},
		'mouseleave' : function() {
			if ($('control_play').getStyle('display') == 'inline') {
				$('controls').fade('out');
			}
		}
	});

	$('control_play').addEvent('click', function() {
		pauseSlideShow();
	});

	$('control_pause').addEvent('click', function() {
		initSlideShowPeriodical();
	});

	$('control_next').addEvent('click', function() {
		pauseSlideShow();
		nextSlide();
	});

	$('control_previous').addEvent('click', function() {
		pauseSlideShow();
		previousSlide();
	});
}

var pauseSlideShow = function() {
	$('control_play').setStyle('display', 'none');
	$('control_pause').setStyle('display', 'inline');
	$clear(timeoutSlideshow);
};

var initSlideShowPeriodical = function() {
	$('control_pause').setStyle('display', 'none');
	$('control_play').setStyle('display', 'inline');
	$clear(timeoutSlideshow);
	timeoutSlideshow = nextSlide.periodical(3000);
}

var nextSlide = function() {
	$('productImg').getElement('img').fade('out').inject($('productImg'));
	$('productImg').getElement('img').fade('in'); 
}

var previousSlide = function() {
	$('productImg').getElement('img').fade('out')
	$('productImg').getElements('img').getLast().inject($('productImg'), 'top').fade('in');
}