agendaCurPos = agendaDest = agendaSpeed = agendaTimer = agendaTime = 0;
function highlightAgenda(item){
	if ($("ul.h_agenda_list").size() && $('#'+item).size() > 0){
		$("ul.h_agenda_list>li").removeClass("highlight");
		$("li#"+item).addClass("highlight");
		$("li#"+item).each(function(i){
			prevNode = this.previousSibling;
			thisHeight = 0;
			while (prevNode){
				if (prevNode.offsetHeight) thisHeight += prevNode.offsetHeight;
				prevNode = prevNode.previousSibling;
			}
		});
		agendaDest = thisHeight;
		agendaTime = 15;
		$("ul.h_agenda_list").each(function(){agendaCurPos = this.scrollTop;});
		if (agendaSpeed == 0){
			if (agendaCurPos < agendaDest)
				agendaSpeed = 1;
			else
				agendaSpeed = -1;
		}
		clearInterval(agendaTimer);
		agendaTimer = setInterval(handleAgendaMovement,25);
	} else {
		today = new Date();
		itemList = item.split('_');
		window.location = root+'events.php?form_date_range='+today.getFullYear()+'-'+itemList[1]+'#event_'+itemList[1]+'_'+itemList[2];
	}
}

function handleAgendaMovement(){
	agendaTime --;
	//alert((speed*timeLeft)+ ":" + (agendaDest-curPos));
	if (agendaSpeed > 0){
		if ((agendaSpeed*agendaTime) < (agendaDest-agendaCurPos)){
			//we need to accelerate
			agendaSpeed *= 2;
		} else {
			//we need to decelerate
			agendaSpeed /= 2;
		}
	} else {
		//alert((agendaSpeed*timeLeft) + ':' + (agendaDest-curPos));
		if ((agendaSpeed*agendaTime) > (agendaDest-agendaCurPos)){
			//we need to accelerate
			agendaSpeed *= 2;
		} else {
			//we need to decelerate
			agendaSpeed /= 2;
		}	
	}
	agendaCurPos += agendaSpeed;
	if (agendaTime < 1){
			curPos = agendaDest;
			agendaSpeed = 0;
			clearInterval(agendaTimer);	
	}
	$("ul.h_agenda_list").each(function(){this.scrollTop = agendaCurPos;});
}
