function addLoadEvent(func){
	var oldonload = window.onload;

	if(typeof window.onload != 'function'){
		window.onload = func;
	}else{
		window.onload = function(){
			oldonload();
			func();
		}
	}
}

var fadeInterval;

function prepareFader(){
	if(!document.getElementById("fader"))
		return;

	var lis = document.getElementById("fader").getElementsByTagName("li");

	for(var i=0;i<lis.length;i++){
		lis[i].id="fader"+(i+1);
		if(i<lis.length-1){
			lis[i].style.display = "none";
		}
	}

	fadeInterval = setInterval("fader('fader')", 5000);
}

function fader(id){
	var lis = document.getElementById(id).getElementsByTagName("li");
	var fadeIn = 0;
	var fadeOut = lis.length - 1;

	for(var i=0;i<lis.length - 1;i++){
		if(lis[i].style.display=="block"){
			fadeOut = i;
			fadeIn = i+1;
		}
	}

	fade(lis[fadeIn].id, 0, 100, 500);
	fade(lis[fadeOut].id, 100, 0, 500);

}

function fade(id, opacStart, opacEnd, millisec){
	var speed = Math.round(millisec / 100);
	var timer = 0;
	if(opacStart > opacEnd){
		for(i = opacStart; i >= opacEnd; i--){
			setTimeout("opacity(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}
	}else if(opacStart < opacEnd){
		for(i = opacStart; i <= opacEnd; i++){
			setTimeout("opacity(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}
	}
}

function opacity(opacity, id){
	if(opacity==0){
		document.getElementById(id).style.display="none";
	}else if(opacity==100){
		document.getElementById(id).style.opacity = 100;
		document.getElementById(id).style.filter = "";
		document.getElementById(id).style.display="block";
	}else{
		document.getElementById(id).style.opacity = (opacity / 100);
		document.getElementById(id).style.filter = "alpha(opacity=" + opacity + ")";
		document.getElementById(id).style.display="block";
	}
}

addLoadEvent(prepareFader);
