/**
 * @author ffurst
 */

function XmlBanner(xml, varname) {
	this.url = xml;
	this.varname = varname;
	this.params = null;
	var dseed = new Date();
	this.id = "xmlBan"+(Math.round(Math.random()* dseed.getMilliseconds()));
	
	var code = "<div id=\""+this.id+"\" class=\"xmlBanner\"></div>";
	
	document.write(code);
}

function _XmlBanner_start() {
	eval(this.varname+".getData()");
}
XmlBanner.prototype.start = _XmlBanner_start;

function _XmlBanner_getData()
{
	showRsp = new this.showResponse(this.id);
	var myAjax = new Ajax.Request(
					this.url,
					{
						method: 'post',
						parameters: this.params,
						onComplete: showRsp.init,
						onFailure: tesss
					});
	
	setTimeout(this.varname+".getData()", 15000);
}
XmlBanner.prototype.getData = _XmlBanner_getData;

function tesss() {
	alert("Ocorreu um erro ou retornar os dados.");
}

function _XmlBanner_showResponse(id)
{
	eval('this.init = function (originalRequest) {'+
		'xml = originalRequest.responseXML;'+
		'regs = xml.getElementsByTagName("Playlist")[0].getElementsByTagName("OnAir");'+
		' '+
		'if(regs.length > 0)	'+
		'	for(var i=0; i<regs.length; i++) {'+
		'		var desc = regs[i].getElementsByTagName("CurIns")[0].getElementsByTagName("Name")[0].firstChild.nodeValue;'+
		'		'+		
		'	}'+
		'else {'+
		'	sel.options[0] = null;  '+
		'	alert("Dados não encontrados!");'+
		'}'+
		'$("'+id+'").innerHTML = desc;'+
	'}');
}

XmlBanner.prototype.showResponse = _XmlBanner_showResponse;