function fadeIn(element,opacity){
	var reduceOpacityBy=5;
	var rate=30;	

	if(opacity<100){
		opacity+=reduceOpacityBy;
		if(opacity>100)
			opacity=100;

		setOpacity(element,opacity)
	}

	if(opacity<100){
		setTimeout(function(){
			fadeIn(element, opacity);
		}, rate);
	}
}

function slideDown(container,content,finalSize,size,speed){
	var increaseSizeBy=20;
	
	if(size<finalSize){
		size+=increaseSizeBy;
		if(size>finalSize)
			size=finalSize;
		
		container.style.height=size+"px";
		
		var top=size-content.offsetHeight;
		if(top>0)
			top=0;
		
		content.style.top=top+"px";
		
		setTimeout(function(){
			slideDown(container,content,finalSize,size,speed);
		}, speed);
	}
}

function slideUp(container,content,finalSize,size,speed){
	var reduceSizeBy=20;
	
	if(size>finalSize){
		size-=reduceSizeBy;
		if(size<finalSize)
			size=finalSize;
		
		container.style.height=size+"px";
		
		var top=size-content.offsetHeight;
		if(top<(-1*content.offsetHeight))
			top=(-1*content.offsetHeight);
		
		content.style.top=top+"px";
		
		setTimeout(function(){
			slideUp(container,content,finalSize,size,speed);
		}, speed);
	}
	else{
		content.innerHTML="";
	}
}

function slide(container,content,direction,speed){
	switch(direction){
	case "up":
		var size=content.offsetHeight;
		content.style.top=0+"px";
		slideUp(container,content,0,size,speed);
		break;
	case "down":
		var finalsize=content.offsetHeight;
		content.style.top=0-finalsize+"px";
		slideDown(container,content,finalsize,0,speed);
		break;
	}
}
