var obj = false;
var Host;
var Initialized = false;
function NewAjaxObj()
{
	var object = false;
	if (!window.XMLHttpRequest)
	{
		var ms_xhr_ver = false;
		window.XMLHttpRequest = function()
		{
			if (ms_xhr_ver) return new ActiveXObject(ms_xhr_ver);
			var xhr = false;
			var versions = [
			"Msxml2.XMLHTTP.7.0", 
			"Msxml2.XMLHTTP.6.0", 
			"Msxml2.XMLHTTP.5.0", 
			"Msxml2.XMLHTTP.4.0", 
			"MSXML2.XMLHTTP.3.0", 
			"MSXML2.XMLHTTP",
			"Microsoft.XMLHTTP"];
			var n = versions.length;
			for (var i = 0; i < n; i++)
			{
				try
				{
					if (xhr = new ActiveXObject(versions[i]))
					{
						ms_xhr_ver = versions[i];
						break;
					}
				}
				catch (e)
				{
					
				}
			}
			return xhr;
		};
	}

	if (window.XMLHttpRequest)
	{
		object = new XMLHttpRequest();
	}
	else if (window.ActiveXObject)
	{
		object = new ActiveXObject("Microsoft.XMLHTTP");
	}
	return object;
}
function InitAjax(Link)
{
	Initialized = true;
	obj = NewAjaxObj();
	if (obj == false)
	{
		Initialized = false;
	}
	Host = Link;
}
function OpenAjaxURL(URL, ID)
{
	OpenAjaxObjectURL(URL, ID, obj);
}
function OpenNewAjaxURL(URL, ID)
{
	OpenAjaxObjectURL(URL, ID, NewAjaxObj());
}
function OpenAjaxObjectURL(URL, ID, Object)
{
	if (Initialized && (Object != false))
	{
		try
		{
			Object.open("GET", "http://" + Host + URL, true);
			Object.onreadystatechange = function()
			{
				if (Object.readyState == 4)
				{
					if (Object.status == 200)
					{
						if (ID != false)
						{
							document.getElementById(ID).innerHTML = Object.responseText; 
						}
					}
					else
					{
						if (ID != false)
						{
							document.getElementById(ID).innerHTML = Object.statusText; 
						}
					}
				}    
			}
			Object.send(null);
		}
		catch (e)
		{
			if (ID != false)
			{
				document.getElementById(ID).innerHTML = e; 
			}
		}
	}
}