function setupCycle() {
	
	var container = $('#nBanner'),
		elements = container.find('.element');
		
	if(elements.length > 1) {
		
		var navigation = $('<div class="navigation" />'),
			navigationInner = $('<div class="navigation-inner" />'),
			opacity = .2;
	
		elements
			.each(function(i) {
				$('<a href="">&nbsp;</a>')
					.data('index', i)
					.data('opacity', opacity)
					.click(function(event) {
						elements.showIndex($(this).data('index'))
						event.preventDefault();
					})
					.appendTo(navigationInner);
				opacity += .1;
			})
			.cycle({
				interval : 4000,
				keep : true,
				onCycle : function() {
					navigationInner.children()
						.stop()
						.each(function() {
							var node = $(this);
							node.css('opacity', node.data('opacity'));
						})
						.eq(this.getCurrentIndex()).fadeTo('fast', .9);
				}
			});
			
		navigationInner.appendTo(navigation);
		
		navigation
			.hover(function() {
				elements.pauseCycle();				
			}, function() {
				elements.startCycle();
			})
			.appendTo(container);
			
		$('#logo').hover(function() {
			elements.pauseCycle();				
		}, function() {
			elements.startCycle();
		});
		
	};
	
};

function setupPortfolioCycle() {

	var container = $('#portfolio-slider');
	
	if(container.length) {
		
		var elements = container.find('.element');
		
		if(elements.length > 1) {
			
			var navigation = $('<div class="navigation" />')			
				.appendTo(container);
			
			elements
			
				.each(function(index) {
				
					var element = $(this),
						
						link = element.find('a').eq(0),
						href = link.attr('href'),
						title = link.attr('title'),
						
						image = element.find('img').eq(0),
						oSrc = image.attr('src'),
						//src = oSrc.substring(0, oSrc.indexOf('&format=')) + '&amp;format=projectoverzicht',
						src=oSrc+ '&amp;format=projectoverzicht',
						alt = image.attr('alt');
					
					var navigationElement = $('<div class="element" />')
						.appendTo(navigation);
						
					var navigationElementLink = $('<a href="' + href + '" title="' + title + '"><img src="' + src + '" alt="' + alt + '" /></a>')
						.data('index', index)
						.bind('click', function(event) {
							elements.showIndex($(this).data('index'));
							event.preventDefault();
						})
						.appendTo(navigationElement);
				
				})
				
				.cycle({
					onCycle : function() {
						var navigationElements = navigation.find('.element').removeClass('active');
						navigationElements.eq( this.getCurrentIndex()).addClass('active');
					},
					speed : 500,
					rotate : false
				});

		};
		
	};

};

$(function() {
		   
	// Smart back button
	var referrer = document.referrer,
		targetType = 'p',
		targetClass = 'back-button',
		buttonText = 'Ga terug';
		buttonTitle = 'Ga terug';
		
	if(referrer) {
		if(referrer.indexOf(document.location.host) >= 0) {
			var targets = document.getElementsByTagName(targetType);
			for(var i = 0, j = targets.length; i < j; i++) {
				var target = targets[i];
				if(target.className) {
					if(target.className.indexOf(targetClass) >= 0) {
						if(target.childNodes.length) {
							for(var k = 0, l = target.childNodes.length; k < l; k++)
								target.removeChild(target.childNodes[k]);
						};
						var button = document.createElement('a');
						button.href = referrer;
						button.title = buttonTitle;
						button.onclick = function() {
							window.history.back();
							return false;
						};
						button.appendChild(document.createTextNode(buttonText));
						target.appendChild(button);
					};
				};
			};
		};
	};
	
	// Fix PNG images if the user client is IE 6 or lower
	if($.browser.msie) {
		if($.browser.version <= 6) {
			$('head').append('<script type="text/javascript" src="style/footsteps2/js/jquery.pngfix.js" />');
			$('#logo img, #snelkoppelingen-line').pngfix();
		};
	};
	
	// Google +1 button load
	(function(d, t) {
		var g = d.createElement(t),
			s = d.getElementsByTagName(t)[0];
		g.async = true;
		g.src = 'https://apis.google.com/js/plusone.js';
		s.parentNode.insertBefore(g, s);
	})(document, 'script');

});
