var newsTween = false;
var newsElement = false;

function initScrollingNews()
{
	newsElement = document.getElementById("scrolling").firstChild;
	if(newsElement.offsetHeight > newsElement.parentNode.offsetHeight)
	{
		var moveup = document.getElementById("moveup");
		var movedwn = document.getElementById("movedwn");
		
		moveup.style.display = "block";
		movedwn.style.display = "block";
		
		moveup.onmousedown = newsScrollUpStart;
		moveup.onclick = returnFalse;
		
		movedwn.onmousedown = newsScrollDownStart;
		movedwn.onclick = returnFalse;
	}
	
	var today = new Date;
	var year = today.getFullYear();
	var month = today.getMonth() + 1;
	var buildLegend = (section == 'main-site' ? true : false)
	buildCalendar('./events-' + year + '-' + (month < 10 ? '0' + month : month) + '-' + section + '.xml', document.getElementById("news-cal"), buildLegend);
}

function newsScrollUpStart(e)
{
	var evt = e ? e : window.event;
	if(((evt.which) ? evt.which : evt.button) != 1)
		return;

	document.onmouseup = newsScrollRelease;
	if(this.setCapture)
		this.setCapture();

	newsScrollStop();

	var posStart = newsElement.style.top ? parseInt(newsElement.style.top, 10) : 0;
	var posStop = 0;
	if(posStart != posStop)
	{
		newsTween = new Tween(newsElement.style, "top", Tween.none, posStart, posStop, Math.abs(posStart - posStop) / 60, "px");
		newsTween.start();
	}
	return false;
}

function newsScrollDownStart(e)
{
	var evt = e ? e : window.event;
	if(((evt.which) ? evt.which : evt.button) != 1)
		return;

	document.onmouseup = newsScrollRelease;
	if(this.setCapture)
		this.setCapture();

	newsScrollStop();
	
	var posStart = newsElement.style.top ? parseInt(newsElement.style.top, 10) : 0;
	var posStop = (newsElement.offsetHeight * -1) + newsElement.parentNode.offsetHeight;
	if(posStart != posStop)
	{
		newsTween = new Tween(newsElement.style, "top", Tween.none, posStart, posStop, Math.abs(posStart - posStop) / 60, "px");
		newsTween.start();
	}
	return false;
}

function newsScrollStop()
{
	if(newsTween)
		newsTween.stop();
	return false;
}

function newsScrollRelease(e)
{
	newsScrollStop();

	document.onmouseup = null;
	if(this.releaseCapture)
		this.releaseCapture();

	return false;
}

function returnFalse()
{
	return false;
}

onloadEvents.push(initScrollingNews);
