function Ajax(URL, LAYER, AFTERLOAD, POST, HIDE_LOADING)
{
	var REQUEST;

	if(!HIDE_LOADING && LAYER)
		show_loading(LAYER);

	if (window.XMLHttpRequest)
	{
		REQUEST = new XMLHttpRequest();
		REQUEST.onreadystatechange = function(){processStatusChange();}
	}
	else if (window.ActiveXObject)
	{
		REQUEST = new ActiveXObject("Microsoft.XMLHTTP");
		if (REQUEST)
		{
			REQUEST.onreadystatechange = function(){processStatusChange();}
		}
	}

	URL = URL + "&AJAX=1&AID=" + Math.random();

	if (POST == '' || POST == undefined)
	{
		REQUEST.open("GET", URL, true);
		REQUEST.send(null);
	}
	else
	{
		REQUEST.open("POST", URL, true);
		REQUEST.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=ISO-8859-1');
		REQUEST.send(POST);
	}

	return REQUEST;

	function processStatusChange()
	{
		var JAVASCRIPT;
		var SCRIPT_ALL = new RegExp('(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)', 'img');
		var SCRIPT_ONE = new RegExp('(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)', 'im');

		if(REQUEST.readyState == 4)
		{
			var SCRIPTS_AJAX;
			CONTENIDO = REQUEST.responseText.split("@@@", 2);

			if(CONTENIDO[1])
			{
				JAVASCRIPT = CONTENIDO[0];
				HTML = CONTENIDO[1];
			}
			else
			{
				HTML = CONTENIDO[0];
			}

			if(LAYER)
			{
				LAYER_SHOW = document.getElementById(LAYER);
			}


			/*
			if(REQUEST.status != 200)
			{
				if(LAYER)
				{
					LAYER_SHOW.innerHTML = '';
				}

				return;
			}
			*/

			if(LAYER)
			{
				if(JAVASCRIPT)
					eval(JAVASCRIPT);

				LAYER_SHOW.innerHTML = HTML;
			}

			SCRIPTS_AJAX = HTML.match(SCRIPT_ALL);

			if(SCRIPTS_AJAX && SCRIPTS_AJAX.length > 0)
			{
				for(CONT = 0; CONT < SCRIPTS_AJAX.length; CONT++)
				{
					eval(SCRIPTS_AJAX[CONT].match(SCRIPT_ONE)[1]);
				}
			}

			afterLoad();
		}
	}

	function afterLoad()
	{
		if(AFTERLOAD)
		{
			eval(AFTERLOAD);
		}
	}

	function show_loading(LAYER)
	{
		LOADING_LAYER_NAME = 'AJAX_LOADING_LAYER'

		if(!document.getElementById(LOADING_LAYER_NAME))
		{
			AJAX_LAYER = document.getElementById(LAYER);

			var LOADING_LAYER = document.createElement('div');
			var LOADING_IMAGE_LAYER = document.createElement('div');

			LOADING_IMAGE_LAYER.innerHTML = '<img src="' + CONFIG['PATH_UTILS'] + 'stx/img/ajax_loader.gif"/>';
			LOADING_IMAGE_LAYER.className = "AJAX_LOADING_IMAGE";
			LOADING_IMAGE_LAYER.style.top = js_getimgtop(AJAX_LAYER) + (AJAX_LAYER.offsetHeight / 2);
			LOADING_IMAGE_LAYER.style.left = js_getimgleft(AJAX_LAYER) + (AJAX_LAYER.offsetWidth / 2) - 110;

			LOADING_LAYER.className = "AJAX_LOADING";
			LOADING_LAYER.style.width = AJAX_LAYER.offsetWidth;
			LOADING_LAYER.style.height = AJAX_LAYER.offsetHeight;
			LOADING_LAYER.style.top = js_getimgtop(AJAX_LAYER);
			LOADING_LAYER.style.left = js_getimgleft(AJAX_LAYER);

			AJAX_LAYER.appendChild(LOADING_LAYER);
			AJAX_LAYER.appendChild(LOADING_IMAGE_LAYER);
		}
	}
}
