/**
 * Make previous links inactive and set active link.
 */
function updateBannerLinks(bannerNr) {
	for (var i = 1; i <= bannersysteemImages.length; i++) {
		document.getElementById("bannerlink" + i).className = "bannerlink";
		document.getElementById("bannerlink" + bannerNr).className = "bannerlinkactief";
	}
}

/**
 * Deselect banner (animation).
 */

function deselectBanner(bannerNr) {
	if(hiddenBanner != document.getElementById('bannersysteemImage1')) {
		var currentBanner = document.getElementById('bannersysteemImage1');
		var nextBanner = document.getElementById('bannersysteemImage2');	
	} else {
		var currentBanner = document.getElementById('bannersysteemImage2');
		var nextBanner = document.getElementById('bannersysteemImage1');	
	}
	var attributes = {
		'opacity': {
			'from': 1, 'to': 0
		},
		duration: (fade_out_duration / 1000).toString()
	};
	var myDeselectAnim = new YAHOO.util.Anim(currentBanner, attributes); 
	var onCompleteFunction = function() {
		hiddenBanner = currentBanner;
	}; 
	myDeselectAnim.onComplete.subscribe(onCompleteFunction);
	selectBanner(nextBanner,bannerNr);
	myDeselectAnim.animate();
}

/**
 * Select banner (animation).
 */
function selectBanner(bannerElement,bannerNr) {
		updateBannerLinks(bannerNr);
		// Set current banner link.
		bannerElement.src = bannersysteemImages[bannerNr-1].image;
		if (bannersysteemImages[bannerNr-1].url) {
			bannersysteemurl.href = bannersysteemImages[bannerNr-1].url;
			bannersysteemurl.style.cursor = 'pointer';
		}
		else {
			bannersysteemurl.href = '#';
			bannersysteemurl.style.cursor = 'default';
		}
		var attributes = {
			'opacity': {
				'from': 0,
				'to': 1
			},
			duration: (fade_out_duration / 1000).toString()
		};
		var mySelectAnim = new YAHOO.util.Anim(bannerElement, attributes);
		mySelectAnim.animate();
}

/**
 * Banner is clicked.
 */
function clickBanner(next) {
	switchToNextBanner(next);
}

/**
 * Select next banner.
 */
function switchToNextBanner(bannerNr) {
	if (bannerNr > bannersysteemImages.length) {
		bannerNr = 1;
	}
	switchBanner(bannerNr);
}


/**
 * Swap / deselect previous banner and select next banner.
 */
function switchBanner(bannerNr) {
	if(hiddenBanner != document.getElementById('bannersysteemImage1')) {
		var currentBanner = document.getElementById('bannersysteemImage1');
		var nextBanner = document.getElementById('bannersysteemImage2');	
	} else {
		var currentBanner = document.getElementById('bannersysteemImage2');
		var nextBanner = document.getElementById('bannersysteemImage1');	
	}
	// Clear previous timeout if a timer was set.
	if (mytimeout) {
		clearTimeout(mytimeout);
	}
	// Clear next timeout if a timer was set.
	if (nexttimeout) {
		clearTimeout(nexttimeout);
	}
	if (bannerNr > 0) {
		deselectBanner(bannerNr);
	}
	
	// Select banner, if there was no previous banner (<0) then
	// don't do animation.
	if (bannerNr > 0) {
		// After animation show next banner.
		mytimeout = setTimeout(function(){
			switchToNextBanner(bannerNr+1);
		}, switch_duration);
	}	
}

var mytimeout         = null;
var nexttimeout       = null;
var fade_out_duration = 1500;
var fade_in_duration  = 1500;
var switch_duration   = 10000;
var bannersysteemImage1 = null;
var bannersysteemImage2 = null;
var bannersysteemurl  = null;
var hiddenBanner = document.getElementById('bannersysteemImage2');

function initBanner(param_switch_duration) {
	if(typeof(param_switch_duration) != 'undefined') {
		switch_duration = param_switch_duration;
	}
	bannersysteemImage1     = document.getElementById('bannersysteemImage1');
	bannersysteemImage2     = document.getElementById('bannersysteemImage2');
	bannersysteemurl  = document.getElementById('bannersysteemUrl');
	if (bannersysteemImages.length == 1) {
		// Er is maar 1 banner, dus de link kan weg
		document.getElementById("bannerlink1").style.display = "none";
	} else if (bannersysteemImages.length > 1) {
		switchToNextBanner(1);
	}
};

