var topbox_timerInterval = 5000;

var topbox_defaultHtml = null;
var topbox_array = null;
var topbox_currentIndex = 0;
var topbox_timerid = null;

function topbox_init(url, interval)
{
	var e = document.getElementById("topbox");
	if (e) {
		if (!topbox_defaultHtml)
			topbox_defaultHtml = e.innerHTML;

		var o = getXMLHttpRequestObject();
		if (o) {
			o.onreadystatechange = function() {
				if (o.readyState == 4) {
					if (o.responseXML) {
						topbox_array = o.responseXML.getElementsByTagName("item");
					}
				}
			}
			o.open("GET", (url) ? url : "./xml/topbox.xml");
			o.send(null);
		}

		if (interval)
			topbox_timerInterval = interval;
		topbox_start(true);
	}
}

function topbox_finalize()
{
	topbox_stop();
}

function topbox_start(isFromFirst, isAsap)
{
	if (isFromFirst)
		topbox_currentIndex = 0;

	topbox_timerid = setTimeout("topbox_next();", (isAsap) ? 0 : topbox_timerInterval);
}

function topbox_stop()
{
	if (topbox_timerid) {
		clearTimeout(topbox_timerid);
		topbox_timerid = null;
	}
}

function topbox_next()
{
	topbox_timerid = null;

	var e = document.getElementById("topbox");
	if (e) {
		if (topbox_array) {
			var s = null;
			if (topbox_currentIndex < topbox_array.length) {
				s = getNodeString(topbox_array[topbox_currentIndex].childNodes[0]);
				++topbox_currentIndex;
				topbox_start();
			}
			else
				s = topbox_defaultHtml;
			if (s)
				e.innerHTML = s;
		}
	}
}

function topbox_reinit(isReload)
{
	if (isReload) {
		topbox_finalize();
		topbox_init();
	}
	else {
		topbox_stop();
		topbox_start(true, true);
	}
}

function topbox_toggle()
{
	if (topbox_timerid)
		topbox_stop();
	else
		topbox_start(false, true);
}

