var xmlHttp;
var i, n;
var oldlist="";

function getXmlHttpObject() {
	xmlHttp=null;
	try {xmlHttp=new XMLHttpRequest();}	// FF, Opera 8+, Safari, IE7+
	catch (e1) {
		try {xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");} // IE 6
		catch (e2) {
			try {xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");} // IE 5.5
			catch (e3) {document.getElementById("ListHere").innerHTML="Turn off/Apaga JavaScript!";} 
			// JavaScript on, but no Ajax support
		} 
	}
	return xmlHttp;
}

function movehist() {
	var s, redcol;
	s=setTimeout(movehist,80);
	document.getElementById("history").style.top = i;
	redcol=Math.round(255*(n+i)/n);
	document.getElementById("current").style.color = "rgb("+redcol+",0,0)";
	if (i===0) {
		clearTimeout(s);
	}
	i++;
}

function stateChanged() {
	var listInfo, sep, refRate, songlist;
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
		listInfo=unescape(xmlHttp.responseText);
		sep=listInfo.indexOf("|||");
		refRate=listInfo.substr(0,sep)+"000";
		setTimeout(showList,refRate);
		
		songlist=listInfo.substr(sep+3);
		if (oldlist!==songlist) {
			document.getElementById("ListHere").innerHTML=songlist;
			document.getElementById("history").style.position="relative";
			n=12;
			i=-n;
			movehist();
		}
		oldlist=songlist;
	}
}

function showList() {
	var url;
	xmlHttp=getXmlHttpObject();
	url="songlist_js.php?sid="+Math.random();
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}
