var xmlHttpRequest;
function getXMLHttpRequest()
{
	var xmlHttp = null;
	if (window.XMLHttpRequest)
	{
		// If IE7, Mozilla, Safari, etc: Use native object
		xmlHttp = new XMLHttpRequest(); // no var
	}
	else if (window.ActiveXObject)
	{
		// ...otherwise, use the ActiveX control for IE5.x and IE6
		xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); // no var

	}
	return xmlHttp;
}
function synchronousDynamicContent(url, target_element)
{
	var xmlHttp = getXMLHttpRequest();
	if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return;
    }
	xmlHttp.open("GET",url,false);
    xmlHttp.send(null);
    target_element.innerHTML = xmlHttp.responseText;
    playerInit();
}
function loadDynamicContent(url,target_content_area) {
	//alert(url);
	xmlHttpRequest = getXMLHttpRequest();
	var target_element = document.getElementById(target_content_area);
	if(xmlHttpRequest != null)
	{
		xmlHttpRequest.onreadystatechange = function()
		{

			if (xmlHttpRequest.readyState == 4)
			{
				if (xmlHttpRequest.status == 200||xmlHttpRequest.status == 0)
				{
					target_element.innerHTML = xmlHttpRequest.responseText;
				}
				else if(xmlHttpRequest.status == 404||xmlHttpRequest.status == 403||xmlHttpRequest.status == 401||xmlHttpRequest.status == 402||xmlHttpRequest.status == 400||xmlHttpRequest.status == 500)
				{
					target_element.innerHTML = "<table cellspacing='0' cellpadding='0' width='100%' height='100%' border='0'><tr><td valign='middle' align='center' height='100%' width='100%'><img src='images/utility/uc.gif'></td></tr></table>";
				}
				else
				{
					alert("There was a problem retrieving the XML data:\nStatus Text:" + xmlHttpRequest.statusText + ":\nStatus Code:" + xmlHttpRequest.status);
				}
    		}

		}
		xmlHttpRequest.open("GET", url, true);
		xmlHttpRequest.send("");

	}
	else
	{
		alert("Your Browser Doesn't seem to support ActiveX or Native XMLHttp. Please View this site on a different browser:\n\nInternet Explorer 6+\nFireFox\nMozilla 1.0+\nSafari\nOpera");
	}
}
function synchronousGetXMLFromServer(url)
{
	var xmlHttp = getXMLHttpRequest();
	if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return;
    }
	xmlHttp.open("GET",url,false);
    xmlHttp.send(null);
    return xmlHttp.responseXML;
}
function getXMLFromServer(component, url)
{
	//alert("getXMLFromServer called:" + component + "," + url);
	var response = null;
	var xmlHttp = getXMLHttpRequest();
    if (xmlHttp==null)
    {
            alert ("Browser does not support HTTP Request")
            return;
    }
    var loading = false;
    xmlHttp.onreadystatechange=function()
    {
            if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
            {
                    response = xmlHttp.responseXML;
                    alert(response);
                    return response;
            }
            else
            {
                    if(!loading)
                    {
                            showLoading(component, url);
                            loading = true;
                    }
            }
    }
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
    return response;
}
function showLoading(target_element, url)
{
	target_element.innerHTML = "<table cellspacing='0' cellpadding='0' width='100%' height='100%' border='1'><tr><td valign='middle' align='center' height='100%' width='100%'>Loading " + url + ": <img src='images/utility/progress_bar.gif'></td></tr></table>";
}
function getLinkData(menu_name, requested_link, target_content_area)
{
	initMenus();
	//replace content area with loading image
	var target_element = document.getElementById(target_content_area);
	if(target_element)
	{
		showLoading(target_element, requested_link);
		var url = "content/" + menu_name + "/" + requested_link + ".html";
		loadDynamicContent(url, target_content_area);
		//synchronousDynamicContent(url, target_element);
	}
	else
	{
		alert("target element not specified. No where to load data...aborting");
	}
}
