function ObjAjax()
{ 
	var xmlhttp=false;
	try
	{
		xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch(e)
	{
		try
		{
			xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
		catch(E)
		{
			if (!xmlhttp && typeof XMLHttpRequest!="undefined") xmlhttp=new XMLHttpRequest();
		}
	}
	return xmlhttp; 
}



function llamarasincrono(pagina,contenedor)
{
	var ajax=ObjAjax();
	
	var vector=contenedor.split(".");
	
	if(vector[1])
	{
		var obj=opener.document.getElementById(vector[1]);
	}
	else
	{
		var obj=document.getElementById(contenedor);
	}
	
	var ancho=obj.offsetWidth;
	var alto=obj.offsetHeight;
	
	  obj.innerHTML="<div id='loader'>"+obj.innerHTML+"</div><div id='fader' style='width: "+ancho+"px; height:"+alto+"px; display:none;'><table width='"+ancho+"' height='"+alto+"' cellpadding='0' cellspacing='0' border='0'><tr><td align='center' valign='middle'><img src='http://tutramiteenmexico.com/images/loadingfb.gif' /></td></tr></table></div>";
	
	if(vector[1])
	{
		new Effect.Fade(opener.document.getElementById('loader'), { duration: 0.4 });
		new Effect.Appear(opener.document.getElementById('fader'), { duration: 0.4, delay: 0.4 });
	}
	else
	{
		new Effect.Fade(document.getElementById('loader'), { duration: 0.4 });
		new Effect.Appear(document.getElementById('fader'), { duration: 0.4, delay: 0.4 });
	}
	ajax.open("POST", pagina, true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.send(null);
	
	ajax.onreadystatechange=function()
		{ 
		if (ajax.readyState==4)
			{
			TEXTO=rescatar_contenido(ajax.responseText);
			obj.innerHTML=TEXTO;
			ejecutar_scripts(ajax.responseText);
			obj.style.display="none";
			if(vector[1])
				{
				new Effect.Appear(opener.document.getElementById(vector[1]), { duration: 0.4, delay: 0.4 });
				}
			else
				{
				new Effect.Appear(document.getElementById(contenedor), { duration: 0.4, delay: 0.4 });
				}
			}
		}		
}

function rescatar_contenido(texto)
{
	return texto;
}
function ejecutar_scripts(texto)
{
	var p1=texto.split("<scrip",2);
	if (p1[1]) {
		var p2=p1[1].split(">",2);
		var p3=p2[1].split("</script",2)
		if (p3[0] && p3[0]!='')
		{
			eval(p3[0]); 
		}
			texto=p1[0]+p3[1]; 
			texto=rescatar_contenido(texto); 
	}
}

function enviaformulario(pagina,formulario,contenedor)
{

	var ajax=ObjAjax();

	var vector=contenedor.split(".");
	
	if(vector[1])
	{
		var obj=opener.document.getElementById(vector[1]);
	}
	else
	{
		var obj=document.getElementById(contenedor);
	}
	
	var ancho=obj.offsetWidth;
	var alto=obj.offsetHeight;
	
	 obj.innerHTML="<div id='loader'>"+obj.innerHTML+"</div><div id='fader' style='width: "+ancho+"px; height:"+alto+"px; display:none;'><table width='"+ancho+"' height='"+alto+"' cellpadding='0' cellspacing='0' border='0'><tr><td align='center' valign='middle'><img src='http://tutramiteenmexico.com/images/loadingfb.gif' /></td></tr></table></div>";
	
	if(vector[1])
	{
		new Effect.Fade(opener.document.getElementById('loader'), { duration: 0.4 });
		new Effect.Appear(opener.document.getElementById('fader'), { duration: 0.4, delay: 0.4 });
	}
	else
	{
		new Effect.Fade(document.getElementById('loader'), { duration: 0.4 });
		new Effect.Appear(document.getElementById('fader'), { duration: 0.4, delay: 0.4 });
	}
	
	var texto='';
	
	for(var i=0;i<formulario.elements.length;i++)
	{
		switch(formulario.elements[i].getAttribute("type"))
		{
			case "text": 
				if(i==0)
					texto=formulario.elements[i].name+"="+formulario.elements[i].value;
				else
					texto=texto+"&"+formulario.elements[i].name+"="+formulario.elements[i].value;
				break;
			case "password": 
				if(i==0)
					texto=formulario.elements[i].name+"="+formulario.elements[i].value;
				else
					texto=texto+"&"+formulario.elements[i].name+"="+formulario.elements[i].value;
				break;
			case "checkbox": 
			case "radio": 
				if(i==0)
				{
					if(formulario.elements[i].checked)
						texto=formulario.elements[i].name+"="+formulario.elements[i].value;
				}
				else
				{
					if(formulario.elements[i].checked)
						texto=texto+"&"+formulario.elements[i].name+"="+formulario.elements[i].value;
				}
				break;
			case "hidden": 
				if(i==0)
					texto=formulario.elements[i].name+"="+formulario.elements[i].value;
				else
					texto=texto+"&"+formulario.elements[i].name+"="+formulario.elements[i].value;
				break;
			case "reset": 
			case "submit": 
				break;
			case "button": 
				if(i==0)
					texto=formulario.elements[i].name+"="+formulario.elements[i].value;
				else
					texto=texto+"&"+formulario.elements[i].name+"="+formulario.elements[i].value;
				break;
			case null:
				if(formulario.elements[i].length==undefined)
				{
					if(i==0)
						texto=formulario.elements[i].name+"="+formulario.elements[i].value;
					else
						texto=texto+"&"+formulario.elements[i].name+"="+formulario.elements[i].value;
				}
				else
				{
					for(var j=0;j<formulario.elements[i].length;j++)
					{
						if(formulario.elements[i].options[j].selected)
						{
							if(i==0)
								texto=formulario.elements[i].name+"="+formulario.elements[i].options[j].value;
							else
								texto=texto+"&"+formulario.elements[i].name+"="+formulario.elements[i].options[j].value;
						}
					}
				}
				break;
		}
		
	}
	
	 
	
	//alert('envio:'+texto);
	ajax.open("POST", pagina, true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.send(texto);
	
	ajax.onreadystatechange=function()
		{ 
		if (ajax.readyState==4)
			{
			TEXTO=rescatar_contenido(ajax.responseText);
			obj.innerHTML=TEXTO;
			ejecutar_scripts(ajax.responseText);
			obj.style.display="none";
			if(vector[1])
				{
				new Effect.Appear(opener.document.getElementById(vector[1]), { duration: 0.4, delay: 0.4 });
				}
			else
				{
				new Effect.Appear(document.getElementById(contenedor), { duration: 0.4, delay: 0.4 });
				}
			}
		}		
}


function llamaycierra(pagina,contenedor,ventana)
{
	var ajax=ObjAjax();
	
	var vector=contenedor.split(".");
	
	if(vector[1])
	{
		var obj=opener.document.getElementById(vector[1]);
	}
	else
	{
		var obj=document.getElementById(contenedor);
	}
	
	obj.innerHTML="Cargando...";
	
	ajax.open("POST", pagina, true);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.send(null);
	
	ajax.onreadystatechange=function()
	{ 
		if (ajax.readyState==4)
		{
			TEXTO=rescatar_script(ajax.responseText);
			obj.innerHTML=TEXTO;
			ventana.close();
		}
		else
		{
			obj.innerHTML="Cargando...";
		}
	}		
}


function overlay(pagina)
	{
		llamarasincrono(pagina,'lightbox');
		muestraoverlay();
	}
	function muestraoverlay()
	{
		var arrayPageSize = getPageSize();
		new Effect.Appear(document.getElementById('overlay'), {duration: .2, from: 0.0, to: 0.8});
		document.getElementById('overlay').style.width=arrayPageSize[0] + 'px';
		document.getElementById('overlay').style.height=arrayPageSize[1] + 'px';
		new Effect.Appear(document.getElementById('lightbox'), {duration: .2, from: 0.0, to: 1});
	}
	function ocultaoverlay()
	{
		new Effect.Fade(document.getElementById('overlay'), { duration: .2 });
		new Effect.Fade(document.getElementById('lightbox'), { duration: .2 });
	}
		function getPageSize() 
	{
	        
	     var xScroll, yScroll;
		
		if (window.innerHeight && window.scrollMaxY) 
		{	
			xScroll = window.innerWidth + window.scrollMaxX;
			yScroll = window.innerHeight + window.scrollMaxY;
		}
		else 
			if (document.body.scrollHeight > document.body.offsetHeight)
			{ // all but Explorer Mac
				xScroll = document.body.scrollWidth;
				yScroll = document.body.scrollHeight;
			} 
			else 
			{ // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
				xScroll = document.body.offsetWidth;
				yScroll = document.body.offsetHeight;
			}
		
		var windowWidth, windowHeight;
		
		if (self.innerHeight) 
		{	// all except Explorer
			if(document.documentElement.clientWidth)
			{
				windowWidth = document.documentElement.clientWidth; 
			} 
			else 
			{
				windowWidth = self.innerWidth;
			} 
			windowHeight = self.innerHeight;
		} 
		else 
			if (document.documentElement && document.documentElement.clientHeight) 
			{ // Explorer 6 Strict Mode
				windowWidth = document.documentElement.clientWidth;
				windowHeight = document.documentElement.clientHeight;
			} 
			else 
				if (document.body) 
				{ // other Explorers
					windowWidth = document.body.clientWidth;
					windowHeight = document.body.clientHeight;
				}	
		
		// for small pages with total height less then height of the viewport
		if(yScroll < windowHeight)
		{
			pageHeight = windowHeight;
		} 
		else 
		{ 
			pageHeight = yScroll;
		}
	
		// for small pages with total width less then width of the viewport
		if(xScroll < windowWidth)
		{	
			pageWidth = xScroll;		
		} 
		else 
		{
			pageWidth = windowWidth;
		}

		return [pageWidth,pageHeight];
	}

