function Ajax()
{
	var handler = null;

	try
	{
		handler = new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch (e)
	{
		try
		{
			handler = new ActiveXObject("Microsoft.XMLHTTP");
		}
		catch (e)
		{
			try
			{
				handler = new XMLHttpRequest();
			}
			catch (e)
			{
				handler = null;
			}
		}
	}

	if ( handler == null )
		return null;

	this.Open = function(processFunction, url, method, vars)
	{
		this.URL = url;
		this.Method = method.toUpperCase();

		try
		{
			if (this.Method == "POST")
			{
				handler.open(this.Method, this.URL, true);
				handler.setRequestHeader("Method", "POST " + this.URL + " HTTP/1.1");
				handler.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			}
			else
			{
				handler.open("GET", this.URL + "?" + vars, true);
				vars = "";
			}

			handler.onreadystatechange = function()
			{
				processFunction(handler);
			}

			handler.send(vars);
		}
		catch (e)
		{
			alert(e);
		}
	};
}

function Defaults(passed)
{
	var pattern = /function[^(]*\(([^)]*)\)/;
	var args = passed.callee.toString().match(pattern)[1].split(/\s*,\s*/);
	var str = "", i = 1;
	
	for ( ; i < arguments.length; i++)
	{
		if (typeof passed[i-1] == "undefined")
		{
			str += args[i-1] + "=" + fix(arguments[i]) + ";";
		}
	}
	
	return str;

	function fix(x)
	{
		if (typeof x == "string")
			return "'" + x.replace(/\'/g, "\\'") + "'";
		return x;
	}
}

function Load(id, target, method, querystring)
{
	eval ( Defaults ( arguments , '' , '' , 'GET' , '' ) );
					 
	var ajax = new Ajax();

	if ( ajax == null )
	{
		document.getElementById(id).innerHTML = 'Error: AJAX is not working!';
		return;
	}
	
	var proc = function(handler)
	{
		if ( handler.readyState == 4 && handler.status == 200 )
		{
			document.getElementById(id).innerHTML = handler.responseText;
		}
		else if ( handler.readyState == 4 && handler.status == 404 )
		{
			document.getElementById(id).innerHTML = '<p>Er is een fout opgetreden bij het laden van de gegevens. Probeer het later opnieuw of neem contact op met de webmaster.</p>';
		}
		else
		{
			document.getElementById(id).innerHTML = '<p class="ac"><br /><br /><img alt="Loading data..." src="/templates/v3/images/loading.gif" /></p>';
		}
	};
	
	ajax.Open(proc, target, method,querystring);
}