var aTables = new Array();

function init()
{
	sURLXML += '&iRound='+iRound;
//	alert(sURLXML);
	var oAjax = aAjaxObjects.getFreeAjaxObject();
	oAjax.loadXMLDoc(sURLLocal+'?sURL='+(escape(sURLXML)));
}

function ParseHighScoreList(oXML)
{
	var aLists = oXML.getElementsByTagName('LIST');
	for (var i=0;i<aLists.length;i++)
	{
		var oListXML = aLists[i];
		var iID = 0;

		for (var j=0;j<oListXML.attributes.length;j++)
			if (oListXML.attributes[j].nodeName == 'id')
				iID = oListXML.attributes[j].value;

		var sName = oListXML.getElementsByTagName('NAME')[0].firstChild.data;

		var aEntries = oListXML.getElementsByTagName('POS');
		var aParsedEntries = new Array();
		for (var j=0;j<aEntries.length;j++)
		{
			var oEntryXML = aEntries[j];
			var iPos = 0;

			for (var k=0;k<oEntryXML.attributes.length;k++)
				if (oEntryXML.attributes[k].nodeName == 'id')
					iPos = oEntryXML.attributes[k].value;

			var sTeamName = oEntryXML.firstChild.data;
			var sSchool = oEntryXML.childNodes[1].firstChild.data;
			var sCity = oEntryXML.childNodes[2].firstChild.data;
			
			aParsedEntries[iPos] = new Array();
			aParsedEntries[iPos]['teamName'] = sTeamName;
			aParsedEntries[iPos]['school'] = sSchool;
			aParsedEntries[iPos]['city'] = sCity;
		}

		aTables[iID] = new Array();
		aTables[iID]['name'] = sName;
		aTables[iID]['entries'] = aParsedEntries;
	}

	return BuildTables();
}

function BuildTables()
{
	var sHTML = '';

	for (var iKey in aTables)
	{
		var sName = aTables[iKey]['name'];
		var aEntries = aTables[iKey]['entries'];

		sHTML += '<P><TABLE border="0" width="430">\n';
		sHTML += '\t<TR><TD colspan="2"><strong>'+sName+'</strong></TD></TR>\n';
		for (var iPos in aEntries)
			sHTML += '\t<TR><TD width=\"22\">'+iPos+'</TD><TD width=\"126\">'+aEntries[iPos]['teamName']+'</TD><TD width=\"167\">'+aEntries[iPos]['school']+'</TD><TD>'+aEntries[iPos]['city']+'</TD></TR>\n';
		sHTML += '</TABLE></P>\n';
	}

	return ShowHTML(sHTML);
}

function ShowHTML(sHTML)
{
	var x = document.getElementById('tables');
	x.innerHTML = sHTML;

	return true;
}

function delegate(that, thatMethod)
{
	return function(e)
	{
		return thatMethod.call(that,e);
	}
}
