var control=0;
var textHistoryback="";
var ObjHistoryback=null;
function llamarasincrono(url, objcontenedor, parametros, subpagina){
	//objcontenedor.innerHTML="pagina="+url+"parmetros="+parametros;
	if (objcontenedor.parentNode)
	{
		var pagina_requerida = false
		//Activamos el cargando en el objeto;
		if ((objcontenedor.parentNode.id=="modulo"))
			ponercargando(true, objcontenedor.parentNode.style.left,objcontenedor.parentNode.style.top);
		if (window.XMLHttpRequest) {// Si es Mozilla, Safari etc
			pagina_requerida = new XMLHttpRequest()
		}
		else if (window.ActiveXObject)
		{ // pero si es IE
			try {
					pagina_requerida = new ActiveXObject("Msxml2.XMLHTTP")
				} 
			catch (e){ // en caso que sea una versión antigua
						try{
							pagina_requerida = new ActiveXObject("Microsoft.XMLHTTP")
							}
						catch (e){}
					}
		}
		else return false
		
		pagina_requerida.onreadystatechange=function()
		{ // función de respuesta
		if (objcontenedor)
			cargarpagina(pagina_requerida, objcontenedor,url,parametros, subpagina);
			
		}
		pagina_requerida.open('POST', url, true) // asignamos los métodos open y send
		pagina_requerida.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		pagina_requerida.send(parametros)
	}
} // Fin llamarasincrono

// todo es correcto y ha llegado el momento de poner la información requerida
// en su sitio en la pagina xhtml
function cargarpagina(pagina_requerida, objcontenedor, url, parametros, subpagina){
	try{
		if ((pagina_requerida.readyState == 4) && (pagina_requerida.status==200 || window.location.href.indexOf("http")==-1))
		{
			//alert("***"+objcontenedor.innerHTML+"***1");
			if (subpagina=="acceso")
			{
				if (LimpiarTexto(pagina_requerida.responseText)!="OK")
				{
					texto=replace(pagina_requerida.responseText,"[salto]","\n ");					
					alert(texto);
				}
			}
			else
			{
			
				if (pagina_requerida.responseText.indexOf("swf")>0)
				{
					if (objcontenedor.id=="megabanner")
					componermegabanner(pagina_requerida.responseText);
					else
					componersuperoferta(pagina_requerida.responseText);
					
				}
				else
				{
					textHistoryback=objcontenedor.innerHTML;
					ObjHistoryback=objcontenedor;
					objcontenedor.innerHTML=pagina_requerida.responseText;
				}
			//alert("***"+objcontenedor.innerHTML+"***");
			// ocultamos el cargando;
			if ((objcontenedor.parentNode.id=="modulo"))
				ponercargando(false, 0,0);
			//alert(objcontenedor.innerHTML)
			}
			control=0;
		}
	}
	catch (e)
	{
			if (control<3)
			{
				llamarasincrono(url, objcontenedor, parametros);
				control++;
			}
			else
			{
				ponercargando(false, 0,0);
			}
	}

}
function LimpiarTexto(txt)
{
	try{ 
	//ini = /^ /;//Espacio en blanco al principio 
	//fin = / $/;//Espacio en blanco al final 
	saltoline="\n"
	saltocarro="\r"
	espacio="  "
	txt=replace(txt,saltoline,""); 
	txt = replace(txt,saltocarro,""); 
	txt = replace(txt,espacio,"");
	} 
	catch(e){ 
	alert(e); 
	} 
	return txt; 
}
function replace(texto,s1,s2){
	return texto.split(s1).join(s2);
}

function backajax()
{
	ObjHistoryback.innerHTML=textHistoryback;
}
//Funcion de carga oculta o muestra en una posición el cargando.
function ponercargando(visible, posicionlef,posiciontop)
{
	var estadocargando=document.getElementById('cargando');

	if (visible)
	{
		estadocargando.style.display="block";
		estadocargando.style.left=posicionlef;
		estadocargando.style.top=posiciontop;
	}
	else
		estadocargando.style.display="none";
		//estadocargando.style.display="none";
}
