// JavaScript Document
//Control NIF
function IsUnsignedInteger(YourNumber)
{
var Template = /^d+$/ //Formato de numero entero sin signo
//return (Template.test(YourNumber)) ? 1 : 0 //Compara "YourNumber" con el formato "Template" y si coincidevuelve verdadero si no devuelve falso
	var ValidChars = "0123456789";
	var isValid=true;
	var Char;
	var elemento;
	elemento=YourNumber;
	for (k = 0; k < elemento.length && isValid == true; k++) 
	{ 
		  Char = elemento.charAt(k); 
		  if (ValidChars.indexOf(Char) == -1) 
			 {	
				isValid= false;
			 }
	}
	if (isValid==false){
		return 0;
	}
	else
	{
		return 1;
	}	
}
function IsChar(YourChar)
{
var Template = /^[a-z]$/i //Formato de letra
return (Template.test(YourChar)) ? 1 : 0 //Compara "YourChar" con el formato "Template" y si coincidevuelve verdadero si no devuelve falso
}
function IsNIF(YourNIF)
{
	if (YourNIF.length != 9) return 0 //Si la longitud de "YourNIF" es menor que 9 devuelve falso
	else if (!IsUnsignedInteger(YourNIF.substring(0, 8))) return 0 //Si los ocho primeros digitos no forman un numero entero sin signo valido devuelve falso
	else if (!IsChar(YourNIF.substring(8, 9))) return 0 //Si el ultimo digito no es una letra valida devuelve falso
	else
	{
		var ControlValue = 0 //Control de calculos segun el criterio de correccion
		var NIFCharIndex = 0 
		//Almacenara la posicion de la letra correpondiente a la parte numerica del DNI con respecto al array "NIFChars"
		//El siguiente array "NIFChars" contiene las letras de DNI ordenadas segun el criterio de correccion
		var NIFChars = new Array('T', 'R', 'W', 'A', 'G', 'M', 'Y', 'F', 'P', 'D', 'X', 'B', 'N', 'J', 'Z', 'S', 'Q', 'V', 'H', 'L', 'C', 'K', 'E')
		var NIFNumber = YourNIF.substring(0, 8) //Almacenanos la parte numerica del DNI en "NIFNumber"
		var NIFChar = YourNIF.substring(8, 9) //Almacenamos la letra del DNI en "NIFChar"
		NIFChar = NIFChar.toUpperCase() //Pasamos la letra del DNI a mayusculas por si acaso estaba en minusculas
		//Los siguientes 4 calculos sirven para calcular la posicion de la letra correspondiente al la parte numerica del DNI "NIFNumber" en en array "NIFChars"
		ControlValue = NIFNumber / NIFChars.length
		ControlValue = Math.floor(ControlValue);
		ControlValue = ControlValue * NIFChars.length
		NIFCharIndex = NIFNumber - ControlValue
		return (NIFChar == NIFChars[NIFCharIndex]) ? 1 : 0 
		//Si la letra coincide con la letra dada devuelve verdadero si no devuelve falso
	}
}

//Control básico de correo electronico
function IsMail(YourMail)
{
	var Template = /^[a-z-_0-9][a-z-_0-9.]+@[a-z-_=>0-9.]+.[a-z]{2,3}$/i //Formato de direccion de correo electronico
	return (Template.test(YourMail)) ? 1 : 0 
	//Compara "YourMail" con el formato "Template" y si coincidevuelve verdadero si no devuelve falso
}

//Obtención digito de control cuenta bancaria
function obtenerDigito(valor)
{
  valores = new Array(1, 2, 4, 8, 5, 10, 9, 7, 3, 6);
  control = 0;
  for (i=0; i<=9; i++)
    control += parseInt(valor.charAt(i)) * valores[i];
  control = 11 - (control % 11);
  if (control == 11) control = 0;
  else if (control == 10) control = 1;
  return control;
}

//Control cuenta bancaria
function chkbanc(dct,sucurt,bancot,cuentat)
{
mal=0;
 if(dct.length!=2)
 {
  alertas('Debe introducir dos numeros en los digitos de control de la cuenta bancaria');
  mal=1;
 }
 if(bancot.length!=4)
 {
  alertas('Debe introducir cuatro numeros en la casilla del banco de la cuenta bancaria');
  mal=1;
 }
 if(sucurt.length!=4)
 {
  alertas('Debe introducir cuatro numeros en la casilla de la sucursal de la cuenta bancaria');
  mal=1;
 }
 if(cuentat.length!=10)
 {
  alertas('Debe introducir diez numeros en la casilla del numero de cuenta de la cuenta bancaria');
  mal=1;
 }
 if(IsNumeric(dct)!=true)
 {
	 alertas('La casilla del banco de la cuenta bancaria deben ser numericos');
	 mal=1;
 }
 if(IsNumeric(sucurt)!=true)
 {
	 alertas('La casilla de la sucursal de la cuenta bancaria deben ser numericos');
	 mal=1;
 }
 if(IsNumeric(cuentat)!=true)
 {
	 alertas('La casilla del numero de cuenta de la cuenta bancaria deben ser numericos');
	 mal=1;
 }
 if(IsNumeric(bancot)!=true)
 {
	 alertas('La casilla del banco de la cuenta bancaria deben ser numericos');
	 mal=1;
 }
	if (mal==0)
	{
		if (!(obtenerDigito("00" + bancot + sucurt) ==  parseInt(dct.charAt(0))) || 
			!(obtenerDigito(cuentat) == parseInt(dct.charAt(1))))
		{
			mal=1;
			alertas('Los dígitos de control no se corresponden con los demás números de la cuenta');
		}
	
	}
	if(mal==0)
	{
		return true;
	}
	else
	{
		return false;
	}
}

//Control caracteres especiales
function IsCorrect(sText,campo)
{
   var ValidChars = "'^`´{}?¿[] $&%";
   var IsCorr=true;
   var Char;

 
   for (i = 0; i < sText.value.length && IsCorr == true; i++) 
	  { 
	  Char = sText.value.charAt(i); 
	  if (ValidChars.indexOf(Char) != -1) 
		 {
		 alertas("El " + campo + " no debe contener ninguno de los siguientes caracteres:('^`´{}?¿[] $&%)");
		sText.value="";
		IsCorr=false;
		 }
	  }
}

//Control Numérico
function IsNumeric(sText)
{
   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char;

 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
	  { 
	  Char = sText.charAt(i); 
	  if (ValidChars.indexOf(Char) == -1) 
		 {
		 IsNumber = false;
		 }
	  }
   return IsNumber;   
}

//Control es Fecha
function isFecha(dia,mes,anyo)
{
	mal=0;
	if ((IsNumeric(dd)) && (dd.length==2))
	{
		if ((parseFloat(dd)<1)||(parseFloat(dd)>31))
		{
			alertas('El dia debe ser un numero comprendido entre 1 y 31');
			mal=1;
		}
	}
	else
	{
		alertas('El dia debe ser un numero comprendido entre 1 y 31 con formato DD');
		mal=1;
	}
	if ((IsNumeric(mm)) && (mm.length==2))
	{
		if ((parseFloat(mm)<1)||(parseFloat(mm)>12))
		{
			alertas('El mes debe ser un numero comprendido entre 1 y 12');
			mal=1;
		}
	}
	else
	{
		alertas('El mes debe ser un numero comprendido entre 1 y 12 con formato MM');
		mal=1;
	}
	if (IsNumeric(aa))
	{
		if ((parseFloat(aa)<1901))
		{
			alertas('El año debe ser un numero mayor de 1900');
			mal=1;
		}
	}
	else
	{
		alertas('El año debe ser un numero mayor de 1900');
		mal=1;
	}
	if (mal!=0)
	{
		return false;
	}
	else
	{
		return true;
	}
}

//Apertura Ficheros
function abre(url,nomb)
{
  window.open(url,nomb);
}

//Apertura ofertas
function abreof(url)
{  
  numero=url.indexOf('www.redmil.org');
  numero3=url.indexOf('www.infobi.es');
  numero2=url.indexOf('/alt');
  numero4=url.indexOf('/bod');
  numero5=url.indexOf('?');
  if((numero==-1)&&(numero3==-1))
  {
    	window.open(url,'Ofertas_REDMIL');
  }
  else
  {
	  if((numero2==-1)&&(numero4==-1))
	  {
	  	navegar_cuerpo('cuerpo_redmil.asp',url);
	  }
	  else
	  {
		  if((numero5==-1))
		  {
			navegar_cuerpo('cuerpo_redmil.asp','ficha_alta.asp?url=' + url);
		  }
		  else
		  {
			navegar_cuerpo('cuerpo_redmil.asp','ficha_alta.asp?url=' + url + '$ori=1');
		  }
	  }
  }
}
// declare a global  XMLHTTP Request object
var XmlHttpObj;

// create an instance of XMLHTTPRequest Object, varies with browser type, try for IE first then Mozilla
function CreateXmlHttpObj()
{
	// try creating for IE (note: we don't know the user's browser type here, just attempting IE first.)
	try
	{
		XmlHttpObj = new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch(e)
	{
		try
		{
			XmlHttpObj = new ActiveXObject("Microsoft.XMLHTTP");
		} 
		catch(oc)
		{
			XmlHttpObj = null;
		}
	}
	// if unable to create using IE specific code then try creating for Mozilla (FireFox) 
	if(!XmlHttpObj && typeof XMLHttpRequest != "undefined") 
	{
		XmlHttpObj = new XMLHttpRequest();
	}
}

// called from onChange or onClick event of the continent dropdown list
function ContinentListOnChange() 
{
    var continentList = document.getElementById("tip");
    
    // get selected continent from dropdown list
    var selectedContinent = continentList.options[continentList.selectedIndex].value;
    
    // url of page that will send xml data back to client browser
    var requestUrl;
    // use the following line if using asp
    requestUrl = "cargastemaXML.asp" + "?filter=" + encodeURIComponent(selectedContinent);
    // use the following line if using php
    // requestUrl = "xml_data_provider.php" + "?filter=" + encodeURIComponent(selectedContinent);
    
	CreateXmlHttpObj();
	
	// verify XmlHttpObj variable was successfully initialized
	if(XmlHttpObj)
	{
        // assign the StateChangeHandler function ( defined below in this file)
        // to be called when the state of the XmlHttpObj changes
        // receiving data back from the server is one such change
		XmlHttpObj.onreadystatechange = StateChangeHandler;
		
		// define the iteraction with the server -- true for as asynchronous.
		XmlHttpObj.open("GET", requestUrl,  true);
		
		// send request to server, null arg  when using "GET"
		XmlHttpObj.send(null);		
	}
}


// this function called when state of  XmlHttpObj changes
// we're interested in the state that indicates data has been
// received from the server
function StateChangeHandler()
{
	// state ==4 indicates receiving response data from server is completed
	if(XmlHttpObj.readyState == 4)
	{
		// To make sure valid response is received from the server, 200 means response received is OK
		if(XmlHttpObj.status == 200)
		{			
			PopulatestipList(XmlHttpObj.responseXML.documentElement);
		}
		else
		{
			alertas("Problema recuperando la información del servidor, status code: "  + XmlHttpObj.status);
		}
	}
}

// populate the contents of the country dropdown list
function PopulatestipList(countryNode)
{
    var countryList = document.getElementById("stip");
	// clear the country list 
	for (var count = countryList.options.length-1; count >-1; count--)
	{
		countryList.options[count] = null;
	}

	var countryNodes = countryNode.getElementsByTagName('subtema');
	var idValue;
	var textValue; 
	var optionItem;
	// populate the dropdown list with data from the xml doc
	for (var count = 0; count < countryNodes.length; count++)
	{
   		textValue = GetInnerText(countryNodes[count]);
		idValue = countryNodes[count].getAttribute("id");
		optionItem = new Option( textValue, idValue,  false, false);
		countryList.options[countryList.length] = optionItem;
	}
}

// returns the node text value 

function GetInnerText (node)
{
	 return (node.textContent || node.innerText || node.text) ;
}

//XML combo Filler
// declare a global  XMLHTTP Request object
var XmlHttpObjXML;

// create an instance of XMLHTTPRequest Object, varies with browser type, try for IE first then Mozilla
function CreateXmlHttpObjXML()
{
	// try creating for IE (note: we don't know the user's browser type here, just attempting IE first.)
	try
	{
		XmlHttpObjXML = new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch(e)
	{
		try
		{
			XmlHttpObjXML = new ActiveXObject("Microsoft.XMLHTTP");
		} 
		catch(oc)
		{
			XmlHttpObjXML = null;
		}
	}
	// if unable to create using IE specific code then try creating for Mozilla (FireFox) 
	if(!XmlHttpObjXML && typeof XMLHttpRequest != "undefined") 
	{
		XmlHttpObjXML = new XMLHttpRequest();
	}
}

// called from onChange or onClick event of the continent dropdown list
function ContinentListOnChangeXML(query,url) 
{
    //var continentList = document.getElementById("tip");   
    // get selected continent from dropdown list
    //var selectedContinent = continentList.options[continentList.selectedIndex].value;   
    // url of page that will send xml data back to client browser
    var requestUrl;
    // use the following line if using asp
    requestUrl = url + "?filter=" + query;
    // use the following line if using php
    // requestUrl = "xml_data_provider.php" + "?filter=" + encodeURIComponent(selectedContinent);
	CreateXmlHttpObjXML();
	
   // verify XmlHttpObj variable was successfully initialized
	if(XmlHttpObjXML)
	{
        // assign the StateChangeHandler function ( defined below in this file)
        // to be called when the state of the XmlHttpObj changes
        // receiving data back from the server is one such change
		XmlHttpObjXML.onreadystatechange = StateChangeHandlerXML;
		
		// define the iteraction with the server -- true for as asynchronous.
		XmlHttpObjXML.open("GET", requestUrl,  true);
		
		// send request to server, null arg  when using "GET"
		XmlHttpObjXML.send(null);		
	}
}


// this function called when state of  XmlHttpObj changes
// we're interested in the state that indicates data has been
// received from the server
function StateChangeHandlerXML()
{
	// state ==4 indicates receiving response data from server is completed
	if(XmlHttpObjXML.readyState == 4)
	{
		// To make sure valid response is received from the server, 200 means response received is OK
		if(XmlHttpObjXML.status == 200)
		{			
			PopulatestipListXML(XmlHttpObjXML.responseXML.documentElement);
		}
		else
		{
			alertas("Problema recuperando la información del servidor, status code: "  + XmlHttpObjXML.status);
		}
	}
}

// populate the contents of the country dropdown list
function PopulatestipListXML(countryNode)
{
    var cmbtofill = document.getElementById("cmb2fil").value
	var countryList = document.getElementById(cmbtofill);
	// clear the country list 
	for (var count = countryList.options.length-1; count >-1; count--)
	{
		countryList.options[count] = null;
	}

	var countryNodes = countryNode.getElementsByTagName('rellenos');
	var idValue;
	var textValue; 
	var optionItem;
   		
	// populate the dropdown list with data from the xml doc
	for (var count = 0; count < countryNodes.length; count++)
	{
   		textValue = GetInnerText(countryNodes[count]);
		idValue = countryNodes[count].getAttribute("id");
		optionItem = new Option( textValue, idValue,  false, false);
		countryList.options[countryList.length] = optionItem;
	}
}

// returns the node text value 
function GetInnerTextXML (node)
{
	 return (node.textContent || node.innerText || node.text) ;
}

//Cargador DIVs en base a HTMLS
var div_destino="";
var imagen_cargando="imagenes/fondo/barra-loader.gif"
function cargaHTML(what,where) 
{ 
// get data from source (what)
 try 
	 {
	   objetoXMLHTTP = window.XMLHttpRequest?new XMLHttpRequest():
			new ActiveXObject("Microsoft.XMLHTTP");
	 }
 catch (e) 
	 { 
		/* do nothing */ 
	 }

 document.getElementById(where).innerHTML ='<center><span class="cargando_ajax"><br><br>Cargando<br><br><img alt="cargando" src="' + imagen_cargando + '"></center>';
// we are defining the destination DIV id, must be stored in global variable (div_destino)
 div_destino=where;
 objetoXMLHTTP.onreadystatechange = Lanzado; // when request finished, call the function to put result to destination DIV
 objetoXMLHTTP.open("GET", what);
 objetoXMLHTTP.send(null);
  return false;
}
function Lanzado() { // put data returned by requested URL to selected DIV
  if (objetoXMLHTTP.readyState == 4)
  {
	   if (objetoXMLHTTP.status == 200) 
		{
			document.getElementById(div_destino).innerHTML =objetoXMLHTTP.responseText;
			if(document.getElementById("top_opinar"))
			{
				parent.location.href='#'+div_destino;
				alertas('Su opinión (comentarios, valoración y/o documentación adjunta) ha sido introducida');
			}
			if(document.getElementById("top_listado"))
			{
				//parent.location.href='#'+div_destino;
			}
		}
		else
		{
			document.getElementById(div_destino).innerHTML = "<center><span class='cargando_ajax'>Ocurrió un error recuperando los datos</center>";
			//document.getElementById("error").innerHTML = objetoXMLHTTP.responseText;
		}
	}
}
function chgpag(pag,cap)
{
	document.getElementById("cap").value=cap;
	document.getElementById("pag").value=pag;
	recarga_div();
}
function orden(ord)
{
	document.getElementById("ord").value=ord;
	document.getElementById("cap").value='';
	document.getElementById("pag").value='';
	recarga_div();
}
function filtra()
{
	document.getElementById("cap").value='';
	document.getElementById("pag").value='';
	recarga_div();
}
// Rellenar combos filtros listados

var XmlHttpObjFiltro;

function FiltroListOnChangeXML(query,url) 
{
    //var continentList = document.getElementById("tip");   
    // get selected continent from dropdown list
    //var selectedContinent = continentList.options[continentList.selectedIndex].value;   
    // url of page that will send xml data back to client browser
    var requestUrl;
    // use the following line if using asp
    requestUrl = url + "?filter=" + query;
    // use the following line if using php
    // requestUrl = "xml_data_provider.php" + "?filter=" + encodeURIComponent(selectedContinent);
	CreateXmlHttpObjFiltro();
	
   // verify XmlHttpObj variable was successfully initialized
	if(XmlHttpObjFiltro)
	{
        // assign the StateChangeHandler function ( defined below in this file)
        // to be called when the state of the XmlHttpObj changes
        // receiving data back from the server is one such change
		XmlHttpObjFiltro.onreadystatechange = StateChangeHandlerFiltro;
		
		// define the iteraction with the server -- true for as asynchronous.
		XmlHttpObjFiltro.open("GET", requestUrl,  true);
		
		// send request to server, null arg  when using "GET"
		XmlHttpObjFiltro.send(null);		
	}
}

// create an instance of XMLHTTPRequest Object, varies with browser type, try for IE first then Mozilla
function CreateXmlHttpObjFiltro()
{
	// try creating for IE (note: we don't know the user's browser type here, just attempting IE first.)
	try
	{
		XmlHttpObjFiltro = new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch(e)
	{
		try
		{
			XmlHttpObjFiltro = new ActiveXObject("Microsoft.XMLHTTP");
		} 
		catch(oc)
		{
			XmlHttpObjFiltro = null;
		}
	}
	// if unable to create using IE specific code then try creating for Mozilla (FireFox) 
	if(!XmlHttpObjFiltro && typeof XMLHttpRequest != "undefined") 
	{
		XmlHttpObjFiltro = new XMLHttpRequest();
	}
}
function StateChangeHandlerFiltro()
{
	// state ==4 indicates receiving response data from server is completed
	if(XmlHttpObjFiltro.readyState == 4)
	{
		// To make sure valid response is received from the server, 200 means response received is OK
		if(XmlHttpObjFiltro.status == 200)
		{			
			PopulatestipListFiltro(XmlHttpObjFiltro.responseXML.documentElement);
		}
		else
		{
			alertas("Problema recuperando la información del servidor, status code: "  + XmlHttpObjFiltro.status);
		}
	}
}

// populate the contents of the country dropdown list
function PopulatestipListFiltro(countryNode)
{
    var cmbtofill = document.getElementById("cmb2fil").value
	var countryList = document.getElementById(cmbtofill);
	// clear the country list 
	for (var count = countryList.options.length-1; count >-1; count--)
	{
		countryList.options[count] = null;
	}

	var countryNodes = countryNode.getElementsByTagName('rellenos');
	var idValue;
	var textValue; 
	var optionItem;
   		
	// populate the dropdown list with data from the xml doc
   		textValue = "Todos";
		idValue = -1;
		optionItem = new Option( textValue, idValue,  false, false);
		countryList.options[countryList.length] = optionItem;
		
	for (var count = 0; count < countryNodes.length; count++)
	{
   		textValue = GetInnerText(countryNodes[count]);
		idValue = countryNodes[count].getAttribute("id");
		optionItem = new Option( textValue, idValue,  false, false);
		countryList.options[countryList.length] = optionItem;
	}
}

// returns the node text value 
function GetInnerTextFiltro (node)
{
	 return (node.textContent || node.innerText || node.text) ;
}

function cargaHTMLsinbarra(what,where) 
{ 
// get data from source (what)
 try 
	 {
	   objetoXMLHTTPsinbarra = window.XMLHttpRequest?new XMLHttpRequest():
			new ActiveXObject("Microsoft.XMLHTTP");
	 }
 catch (e) 
	 { 
		/* do nothing */ 
	 }
 div_sinbarra=where;
 objetoXMLHTTPsinbarra.onreadystatechange = Lanzado_sinbarra; // when request finished, call the function to put result to destination DIV
 objetoXMLHTTPsinbarra.open("GET", what);
 objetoXMLHTTPsinbarra.send(null);
  return false;
}
function Lanzado_sinbarra() { // put data returned by requested URL to selected DIV
  if (objetoXMLHTTPsinbarra.readyState == 4)
  {
	   if (objetoXMLHTTPsinbarra.status == 200) 
		{
			document.getElementById(div_sinbarra).innerHTML =objetoXMLHTTPsinbarra.responseText;
		}
		else
		{
			document.getElementById(div_sinbarra).innerHTML = "<center><span class='cargando_ajax'>Ocurrió un error recuperando los datos</center>";
		}
	}
}
function ejecuta(url) {
  var poststr = '';
  makePOSTPeticion(url, poststr);
}
var http_peticion = false;

function makePOSTPeticion(url, parameters) {
  http_peticion = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
	 http_peticion = new XMLHttpRequest();
	 if (http_peticion.overrideMimeType) {
		// set type accordingly to anticipated content type
		//http_peticion.overrideMimeType('text/xml');
		http_peticion.overrideMimeType('text/html');
	 }
  } else if (window.ActiveXObject) { // IE
	 try {
		http_peticion = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
		try {
		   http_peticion = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
	 }
  }
  if (!http_peticion) {
	 alertas('Cannot create XMLHTTP instance');
	 return false;
  }
  
  http_peticion.onreadystatechange = alertContents;
  http_peticion.open('POST', url, true);
  http_peticion.setRequestHeader("Content-type", "application/x-www-form-urlencoded","charset=UTF-8");
  http_peticion.setRequestHeader("Content-length", parameters.length);
  http_peticion.setRequestHeader("Connection", "close");
  http_peticion.send(parameters);
}

function alertContents() 
{
  if (http_peticion.readyState == 4) {
	 if (http_peticion.status == 200) 
	 {
		result = http_peticion.responseText;
	 } 
	 else 
	 {
		alertas(http_peticion.responseText);//'Hubo un problema al realizar su petición');
		//document.getElementById("errorr").innerHTML=http_form_request.responseText;
	 }
  }
}

var http_form_request = false;

function makePOST_Form(url, parameters) {
  http_form_request = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
	 http_form_request = new XMLHttpRequest();
	 if (http_form_request.overrideMimeType) {
		// set type accordingly to anticipated content type
		http_form_request.overrideMimeType('text/html');
	 }
  } else if (window.ActiveXObject) { // IE
	 try {
		http_form_request = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
		try {
		   http_form_request = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
	 }
  }
  if (!http_form_request) {
	 alertas('No se puede enviar el formulario');
	 return false;
  }
  
  http_form_request.onreadystatechange = alertContentsForm;
  http_form_request.open('POST', url, true);
  http_form_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded","charset=UTF-8");
  http_form_request.setRequestHeader("Content-length", parameters.length);
  http_form_request.setRequestHeader("Connection", "close");
  http_form_request.send(parameters);
}
function alertContentsForm() 
{
  if (http_form_request.readyState == 4) {
	 if (http_form_request.status == 200) 
	 {
		result = http_form_request.responseText;
	 } 
	 else 
	 {
		alertas(http_form_request.responseText);//'Hubo un problema al realizar su petición');
		//document.getElementById("errorr").innerHTML=http_form_request.responseText;
	 }
  }
}
function EnvioForm(formulario,accion,regreso,div,varform) 
{
  makePOST_Form(accion, varform);
  cargaHTML(regreso,div);
}

//Nuevo y traspasar a REDMIL_V2


function submit_formulario(formulario,accion,regreso,div)
{
	var elem = document.getElementById(formulario).elements;
	for (var k = 0; k < elem.length ; k++)
	{
		if (elem[k].type=='checkbox')
		{
			if(elem[k].checked==true)
			{
				valor='1';
			}
			else
			{
				valor='';
			}
		}
		else
		{
			if (elem[k].type=='radio')
			{
				if(elem[k].checked==true)
				{
					valor=elem[k].value;
				}
			}
			else
			{
			valor=elem[k].value;
			}
		}
		if (k==0)
		{
			url_extra='?'+elem[k].name + '=' + valor;
		}
		else
		{
			url_extra+='&'+elem[k].name + '=' + valor;
		}
	}
	varform=getFormElements(document.getElementById(formulario), '');
	regreso=regreso + url_extra;
	EnvioForm(formulario,accion,regreso,div,varform)
	cargaHTML(regreso,div);
	
}

function ir_en_pagina(sitio)
{
	location.href=sitio;
}

function Envio_Form_no_retorno(formulario,accion) 
{
	varform=getFormElements(document.getElementById(formulario), '');
	makePOST_Form(accion, varform);
}

function mis_items(accion, varform)
{
	makePOST_Form_resp(accion, varform);
}

function esEmail(texto) 
{ 
var textoStr = texto.toString() // transformo a string todo el campo
var tiene = 0
for(var i = 0;i < texto.length;i++)
	{ 
		// recorro letra por letra
		var oneChar = textoStr.charAt(i) 
		if (oneChar == "@")
		{ 
		// busco una arroba en cada letra
			tiene = 1 
		} 
	} 
if (tiene == 1)
	{ 
		// controlo si existe o no una arroba
		return true 
	}
	else 
	{ 
		return false 
	} 
}

//Formulario con respuesta alerta

var http_formwresp_request = false;
function makePOST_Form_resp(url, parameters) {
  http_formwresp_request = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
	 http_formwresp_request = new XMLHttpRequest();
	 if (http_formwresp_request.overrideMimeType) {
		// set type accordingly to anticipated content type
		//http_request.overrideMimeType('text/xml');
		http_formwresp_request.overrideMimeType('text/html');
	 }
  } else if (window.ActiveXObject) { // IE
	 try {
		http_formwresp_request = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
		try {
		   http_formwresp_request = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
	 }
  }
  if (!http_formwresp_request) {
	 alertas('No se puede enviar el formulario');
	 return false;
  }
  
  http_formwresp_request.onreadystatechange = alertContentsForm_resp;
  http_formwresp_request.open('POST', url, true);
  http_formwresp_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded","charset=UTF-8");
  http_formwresp_request.setRequestHeader("Content-length", parameters.length);
  http_formwresp_request.setRequestHeader("Connection", "close");
  http_formwresp_request.send(parameters);
}

function alertContentsForm_resp() 
{
  if (http_formwresp_request.readyState == 4) 
  {
	 if (http_formwresp_request.status == 200) 
	 {
		//alertas(http_request.responseText);
		result = http_formwresp_request.responseText;
		alertas(http_formwresp_request.responseText);
	 } 
	 else 
	 {
		alertas(http_formwresp_request.responseText);
		//document.getElementById("error").innerHTML=http_formwresp_request.responseText;
	 }
  }
}

function Envio_Form_no_retorno_resp(formulario,accion) 
{
	varform=getFormElements(document.getElementById(formulario), '');
	makePOST_Form_resp(accion, varform);
}

function retorno_opinar(pagina,div)
{
	cargaHTML(pagina,div);
}

//Posicionar DIV

function getBrowserHeight() 
{
  var intH = 0;
  var intW = 0;

  if(typeof window.innerWidth  == 'number') {
	 intH = window.innerHeight;
	 intW = window.innerWidth;
  } 
  else if(document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) {
	   intH = document.documentElement.clientHeight;
	   intW = document.documentElement.clientWidth;
  }
  else if(document.body && (document.body.clientWidth || document.body.clientHeight)) {
	intH = document.body.clientHeight;
	intW = document.body.clientWidth;
  }

  return {width: parseInt(intW), height: parseInt(intH)};
}

function getWindowHeight() {
	var windowHeight = 0;
	if (typeof(window.innerHeight) == 'number') {
		windowHeight = window.innerHeight;
	}
	else {
		if (document.documentElement && document.documentElement.clientHeight) {
			windowHeight = document.documentElement.clientHeight;
		}
		else {
			if (document.body && document.body.clientHeight) {
				windowHeight = document.body.clientHeight;
			}
		}
	}
	return windowHeight;
}
function setContent() {
	if (document.getElementById) {
		var windowHeight = getWindowHeight();
		if (windowHeight > 0) {
			var contentElement = document.getElementById('content');
			var contentHeight = contentElement.offsetHeight;
			if (windowHeight - contentHeight > 0) {
				contentElement.style.position = 'relative';
				contentElement.style.top = ((windowHeight / 2) - (contentHeight / 2)) + 'px';
			}
			else {
				contentElement.style.position = 'static';
			}
		}
	}
}

function SetLayerPosition(div) 
{
  var elem = document.getElementById(div);    
  var bws = getBrowserHeight();
  if (document.getElementById("frame_ex"))
  {
  	  //parent.frames.document.getElementById("q").focus();
	  pxw=70;//parseInt(bws.width)/5;
	  pxy=20;//parseInt(bws.height)/5;
  }
  else
  {
	  pxw=parseInt(bws.width)/3;
	  pxy=parseInt(bws.height)/3;
  }
  var browserName=navigator.appName;
  if (browserName=="Microsoft Internet Explorer")
  {
	if (document.getElementById("frame_ex"))
	{
   	    //parent.frames.document.getElementById("q").focus();
	  	var scrollX=0; //tempX-500;
		if(typeof(tempY)=="undefined")
		{
			tempY=200;
		}
		var scrollY =tempY-150;
	}
	else
	{
		var scrollX=parseInt(document.body.scrollLeft);
		var scrollY=300+parseInt(document.body.scrollTop);
	}
  }
  else
  {
  	var scrollX = parseInt(window.parent.pageXOffset);
  	var scrollY = parseInt(window.parent.pageYOffset);
  }
  elem.style.left = (pxw+scrollX) + "px";
  elem.style.top = (pxy+scrollY)  + "px";  
  elem = null;
}
function SetLayerPositionHome(div) 
{
  var elem = document.getElementById(div);    
  elem.style.left ="300px";
  elem.style.top ="100px";  
  elem = null;
}


// conseguir todas las variables de un form

function getFormElements(frm, method){
    var elems = frm.elements;
    var params = new Array();
    var parameters = new Array();
    for (var x=0; x < elems.length; x++){
        var i = elems[x];
        switch (i.type){
            case "text":

                params[x] = urlencode(i.name) + "=" + urlencode(i.value);
            break;
			            
            case "hidden":
                params[x] = urlencode(i.name) + "=" + urlencode(i.value);
            break;            
            case "password":
                params[x] = urlencode(i.name) + "=" + urlencode(i.value);
            break;            
            case "textarea":
                
                params[x] = urlencode(i.name) + "=" + urlencode(i.value);
            break;
                
            case "checkbox":
                if (i.checked){
                    params[x] = urlencode(i.name) + "=" + urlencode(i.value);
                }
            break;
    
            case "radio":
                
                //for (var j = 0; j < i.length; j++){
                
                    if (i.checked){
                    
                        params[x] = urlencode(i.name) + "=" + urlencode(i.value);
                        
                    }
                //}
            break;
                    
            case "select-one":
                params[x] = urlencode(i.name) + "=" + urlencode (i.options[ i.selectedIndex].value);
            break;
                
            case "select-multiple":
                for (var j=0; j < i.options.length; j++){
                    if (i.options[j].selected){
                        params[x] = urlencode(i.name) + "[]="+ urlencode (i.options[j].value);
                    }
                }
            break;
        } //end switch
    } //end for loop
	k=0;
	for (var x=0; x < elems.length; x++)
	{
		if(params[x])
		{
			parameters[k]=params[x];
			k=k+1;
		}
   	}
    var jArray = parameters.join('&');

    if (method == "get" || method == "GET"){
        return "?"+jArray;
    } else {
        return jArray;
    }
}

function urlencode(str){
    return encodeURI(str);
}

function cargaHTML_B(what,where) 
{ 
// get data from source (what)
 try 
	 {
	   objetoXMLHTTP_B = window.XMLHttpRequest?new XMLHttpRequest():
			new ActiveXObject("Microsoft.XMLHTTP");
	 }
 catch (e) 
	 { 
		/* do nothing */ 
	 }

 document.getElementById(where).innerHTML ='<center><span class="cargando_ajax"><br><br>Cargando<br><br><img alt="cargando" src="' + imagen_cargando + '"></center>';
// we are defining the destination DIV id, must be stored in global variable (div_destino)
 div_destino=where;
 objetoXMLHTTP_B.onreadystatechange = Lanzado_B; // when request finished, call the function to put result to destination DIV
 objetoXMLHTTP_B.open("GET", what);

 objetoXMLHTTP_B.send(null);
  return false;
}
function Lanzado_B() { // put data returned by requested URL to selected DIV
  if (objetoXMLHTTP_B.readyState == 4)
  {
	   if (objetoXMLHTTP_B.status == 200) 
		{
			document.getElementById(div_destino).innerHTML =objetoXMLHTTP_B.responseText;
			if(document.getElementById("top_blog"))
			{
				parent.location.href='#top_blog';
			}
			else
			{
				//parent.location.href='#'+div_destino;
			}
		}
		else
		{
			document.getElementById(div_destino).innerHTML = "<center><span class='cargando_ajax'>Ocurrió un error recuperando los datos</center>";
			//document.getElementById("error").innerHTML = objetoXMLHTTP_B.responseText;
		}
	}
}

//Navegación

function navegar_cuerpo(url_a_cargar,url_centro)
{
	establishFontSize();
	document.getElementById("qc").focus();
	parent.location.href='#TOP';
	carga_cuerpo(url_a_cargar,'cuerpo_redmil',url_centro);
	pageTracker._trackPageview('/' + url_centro);
	
}
function navegar_central(url_a_cargar)
{
	establishFontSize();
	document.getElementById("qc").focus();
	carga_central(url_a_cargar,'central_redmil');
	pageTracker._trackPageview('/' + url_a_cargar);
}

//Chat
function abrecht()
{
	window.open("chatwindow.asp" , "REDMIL_Chat" , "width=700,height=660,scrollbars=NO")
}

//cargar_navegacion

function carga_cuerpo(what,where,url_centro) 
{ 
// get data from source (what)
 try 
	 {
	   objetoXMLHTTP_cuerpo = window.XMLHttpRequest?new XMLHttpRequest():
			new ActiveXObject("Microsoft.XMLHTTP");
	 }
 catch (e) 
	 { 
		/* do nothing */ 
	 }
 	url_central=url_centro;
	if(typeof(url_central)=='undefined')
	 {
	 	document.getElementById(where).innerHTML ='<center><span class="cargando_ajax"><br><br>Cargando<br><br><img alt="cargando" src="' + imagen_cargando + '"></center>';
	 }
 div_destino=where;
 objetoXMLHTTP_cuerpo.onreadystatechange = Lanzado_cuerpo;
 objetoXMLHTTP_cuerpo.open("GET", what);
 objetoXMLHTTP_cuerpo.send(null);
  return false;
}

function Lanzado_cuerpo() { // put data returned by requested URL to selected DIV
  if (objetoXMLHTTP_cuerpo.readyState == 4)
  {
	   if (objetoXMLHTTP_cuerpo.status == 200) 
		{
				var scs=objetoXMLHTTP_cuerpo.responseText.extractScript();    //capturamos los scripts
        		document.getElementById(div_destino).innerHTML=objetoXMLHTTP_cuerpo.responseText.stripScript(); 
				//eliminamos los scripts... ya son innecesarios
        		scs.evalScript();
				parent.location.href='#top_pagina';
				if(document.getElementById('central_redmil'))
	 			{
					carga_central(url_central,'central_redmil');
				}
		}
		else
		{
			document.getElementById(div_destino).innerHTML =objetoXMLHTTP_cuerpo.responseText;
		}
	}
}

function carga_central(what,where_central) 
{ 
// get data from source (what)
 try 
	 {
	   objetoXMLHTTP_central = window.XMLHttpRequest?new XMLHttpRequest():
			new ActiveXObject("Microsoft.XMLHTTP");
	 }
 catch (e) 
	 { 
		/* do nothing */ 
	 }

 document.getElementById(where_central).innerHTML ='<center><span class="cargando_ajax"><br><br>Cargando<br><br><img alt="cargando" src="' + imagen_cargando + '"></center>';
 div_central=where_central;
 objetoXMLHTTP_central.onreadystatechange = Lanzado_central;
 objetoXMLHTTP_central.open("GET", what);
 objetoXMLHTTP_central.send(null);
  return false;
}

function Lanzado_central() { // put data returned by requested URL to selected DIV
  if (objetoXMLHTTP_central.readyState == 4)
  {
	   if (objetoXMLHTTP_central.status == 200) 
		{
			var scs=objetoXMLHTTP_central.responseText.extractScript();    //capturamos los scripts
        	document.getElementById(div_central).innerHTML=objetoXMLHTTP_central.responseText.stripScript();    
			//eliminamos los scripts... ya son innecesarios
        	scs.evalScript();
			parent.location.href='#top_pagina';
			//objetoXMLHTTP_central.responseText;//texto_recuperado;
		}
		else
		{
			document.getElementById(div_central).innerHTML =objetoXMLHTTP_central.responseText;
		}
	}
}

function rescatar_script(mydiv)
{ 
	mydiv=document.getElementById("central_redmil")
	valor=document.getElementById("hayscript").value;
	alert(valor);
	if(valor==1)
	{
		var elementos = mydiv.getElementsByTagName('script');
		for(i=0;i<elementos.length;i++) 
		{
			var elemento = elementos[i];
			alert(elementos.length);
			nuevoScript = document.createElement('script');
			nuevoScript.text = elemento.innerHTML;
			nuevoScript.type = 'text/javascript';
			if(elemento.src!=null && elemento.src.length>0)
			{
				nuevoScript.src = elemento.src;
			}
			elemento.parentNode.replaceChild(nuevoScript,elemento);
		} 
	}
}
var IE = document.all?true:false;

if (!IE) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove = getMouseXY;
function getMouseXY(e) {
if (IE) { // grab the x-y pos.s if browser is IE
tempX = event.clientX ;//+ document.body.scrollLeft;
tempY = event.clientY ;//+ document.body.scrollTop;
}
else {  // grab the x-y pos.s if browser is NS
tempX = e.pageX;
tempY = e.pageY;
}  
if (tempX < 0){tempX = 0;}
if (tempY < 0){tempY = 0;}  
return true;
}


//Cambios en las alertas 13-01-2010
function alertas(mensaje) 
{
  	tabla_mensaje='<table cellpadding="0" cellspacing="0" width="300px"  bgcolor="#FFFF80" '
	tabla_mensaje+='style="border-style:solid; border-width:1px;border-color:#F07A11" >'
  	tabla_mensaje+='<tr height="10"><td bgcolor="#F07A11" class="lrestit" style="color:#FFFFFF">&nbsp;&nbsp;'
	tabla_mensaje+='Redmil</td><td bgcolor="#F07A11" align="right">&nbsp;'
	if (document.getElementById("frame_ex"))
  	{
		tabla_mensaje+='<a href="javascript:mostrar_ocultar(\'resultado_envio_frame\')" ';
	}
	else
	{
		tabla_mensaje+='<a href="javascript:mostrar_ocultar(\'resultado_envio\')" ';
	}
	tabla_mensaje+='class="principal_links_busqueda" style="color:#FFFFFF">X Cerrar</a>&nbsp;</tr>';
	tabla_mensaje+='<tr><td colspan="2"><p style="margin:8px;"><span class="lresdes" >' + mensaje + '</span></p>';
	tabla_mensaje+='</td></tr></table>';
	if (document.getElementById("frame_ex"))
  	{
		//SetLayerPosition('resultado_envio_frame')
		document.getElementById("resultado_envio_frame").innerHTML = tabla_mensaje;
		//document.getElementById('resultado_envio_frame').style.display = 'block';
		//window.resultado_envio_frame.focus();
		mostrar_mensajes('resultado_envio_frame','overlay_frame');
	}
	else
  	{
		if (document.getElementById("we_are_home"))
		{
			//SetLayerPosition('resultado_envio')
			document.getElementById("resultado_envio").innerHTML = tabla_mensaje;
			mostrar_mensajes('resultado_envio','overlay');
			//document.getElementById('resultado_envio').style.display = 'block';
		}
			else
	  	{
			//SetLayerPosition('resultado_envio')
			document.getElementById("resultado_envio").innerHTML = tabla_mensaje;
			mostrar_mensajes('resultado_envio','overlay');
			//document.getElementById('resultado_envio').style.display = 'block';
		}
	}
}

function mensaje_error(mensaje,accion) 
{
  	tabla_mensaje='<table cellpadding="0" cellspacing="0" width="300px" bgcolor="#FFFF80" '
	tabla_mensaje+='style="border-style:solid; border-width:1px;border-color:#F07A11" >'
  	tabla_mensaje+='<tr height="10"><td bgcolor="#F07A11" class="lrestit" style="color:#FFFFFF">&nbsp;&nbsp;'
	tabla_mensaje+='Error Redmil</td></tr>'
	tabla_mensaje+='<tr><td><p style="margin:8px;"><span class="lresdes" >' + mensaje + '</span></p></td></tr>'
	tabla_mensaje+='<tr><td align="right"><p style="margin:8px;"><a href="javascript:' + accion + '" class="lresdes">Cerrar</a></p>'
	tabla_mensaje+='</td></tr></table>'
	if (document.getElementById("frame_ex"))
  	{
		//SetLayerPosition('resultado_envio_frame')
		document.getElementById("resultado_envio_frame").innerHTML = tabla_mensaje;
		//document.getElementById('resultado_envio_frame').style.display = 'block';
		//window.resultado_envio_frame.focus();
		mostrar_mensajes('resultado_envio_frame','overlay_frame');
	}
	else
  	{
		//SetLayerPosition('resultado_envio')
		document.getElementById("resultado_envio").innerHTML = tabla_mensaje;
		mostrar_mensajes('resultado_envio','overlay');
		//document.getElementById('resultado_envio').style.display = 'block';
	}
}
function mensaje_confirmar(mensaje,accion) 
{
  	tabla_mensaje='<table cellpadding="0" cellspacing="0" width="300px"  bgcolor="#FFFF80" '
	tabla_mensaje+='style="border-style:solid; border-width:1px;border-color:#F07A11" >'
  	tabla_mensaje+='<tr height="10"><td colspan="2" bgcolor="#F07A11" class="lrestit" style="color:#FFFFFF">&nbsp;&nbsp;'
	tabla_mensaje+='Redmil</td></tr>'
	tabla_mensaje+='<tr><td colspan="2"><p style="margin:8px;"><span class="lresdes" >' + mensaje + '</span></p></td></tr>'
	tabla_mensaje+='<tr><td align="left"><p style="margin:8px;"><a href="javascript:ocultar_alerta()" class="lresdes">Cancelar</a></p>'
	tabla_mensaje+='</td><td align="right"><p style="margin:8px;"><a href="javascript:ocultar_alerta();' + accion + ';" class="lresdes">Aceptar</a></p>'
	tabla_mensaje+='</td></tr></table>'
	if (document.getElementById("frame_ex"))
  	{
		//SetLayerPosition('resultado_envio_frame')
		document.getElementById("resultado_envio_frame").innerHTML = tabla_mensaje;
		//document.getElementById('resultado_envio_frame').style.display = 'block';
		//window.resultado_envio_frame.focus();
		mostrar_mensajes('resultado_envio_frame','overlay_frame');
	}
	else
  	{
		//SetLayerPosition('resultado_envio')
		document.getElementById("resultado_envio").innerHTML = tabla_mensaje;
		mostrar_mensajes('resultado_envio','overlay');
		//document.getElementById('resultado_envio').style.display = 'block';
	}
}

function opacidad (elemento_id, opacidadInicio, opacidadFin, milisegundos) {
  var velocidad = Math.round (milisegundos / 100);
  var tiempo = 0;
  if (opacidadInicio > opacidadFin) {
    for (i = opacidadInicio; i >= opacidadFin; i--) {
      setTimeout ("cambiarOpacidad (" + i + ", '" + elemento_id + "')", (tiempo * velocidad));
      tiempo++;
    }
  }else if (opacidadInicio < opacidadFin) {
    for (i = opacidadInicio; i <= opacidadFin; i++) {
      setTimeout ("cambiarOpacidad (" + i + ", '" + elemento_id + "')", (tiempo * velocidad));
      tiempo++;
    }
  }
}

function opacidad_parent (elemento_id, opacidadInicio, opacidadFin, milisegundos) {
  var velocidad = Math.round (milisegundos / 100);
  var tiempo = 0;
  if (opacidadInicio > opacidadFin) {
    for (i = opacidadInicio; i >= opacidadFin; i--) {
      setTimeout ("cambiarOpacidad_parent (" + i + ", '" + elemento_id + "')", (tiempo * velocidad));
      tiempo++;
    }
  }else if (opacidadInicio < opacidadFin) {
    for (i = opacidadInicio; i <= opacidadFin; i++) {
      setTimeout ("cambiarOpacidad_parent (" + i + ", '" + elemento_id + "')", (tiempo * velocidad));
      tiempo++;
    }
  }
} 
/**
 * Aplica los estilos según el navegador a un elemento
 * @opacidad Grado de oscuridad
 * @elemento_id Indice el elemento sobre el que se aplicará el efecto
 */
function cambiarOpacidad (opacidad, elemento_id) {
  var elemento = document.getElementById(elemento_id).style;
  elemento.filter = "alpha (opacity=" + opacidad + ")"; // Internet Explorer
  elemento.opacity = (opacidad / 100); // Mozilla y Safari
  elemento.MozOpacity = (opacidad / 100);
  elemento.KhtmlOpacity = (opacidad / 100); // Konqueror
}
function cambiarOpacidad_parent (opacidad, elemento_id) {
  var elemento = parent.document.getElementById(elemento_id).style;
  elemento.filter = "alpha (opacity=" + opacidad + ")"; // Internet Explorer
  elemento.opacity = (opacidad / 100); // Mozilla y Safari
  elemento.MozOpacity = (opacidad / 100);
  elemento.KhtmlOpacity = (opacidad / 100); // Konqueror
}
/**
 * Crea una capa superpuesta a la principal
 * @myurl dirección de donde se obtiene la información a mostrar
 */
/** antiguo directo de Malaga*/
function crearCapa(myurl){
  document.getElementById("iframeDatos").src=myurl;
  document.getElementById("overlay").style.display="block";
  document.getElementById("mensaje").style.display="block";
  opacidad('overlay',0,70,300);
  setTimeout("opacidad('mensaje',0,100,300)",400);

}

function mostrar_mensajes(div,div2)
{
  ancho=f_clientWidth();
  alto=f_clientHeight();
  scrl=f_scrollLeft();
  scrt=f_scrollTop();
  //alert('Width:' + ancho + ' - Height:' + alto + ' - Left:' + scrl + ' - Top:' + scrt);
  pos_y=alto/2
  pos_x=ancho/3
  if (document.getElementById("frame_ex"))
  {
	//parent.document.getElementById('cuerpo').style.display='block';
  	//opacidad_parent('cuerpo',0,70,300);
  	document.getElementById(div2).style.height="2000px";//parent.frames["ficha_alta"].document.body.scrollHeight;
  }
  if (document.getElementById("cuerpo_blog"))
  {
  	cambiarOpacidad(50,'cuerpo_blog');
  }
  //document.getElementById(div).style.display="block";
  opacidad(div2,0,70,300);
  document.getElementById(div2).style.display="block";
  //setTimeout("opacidad('" + div + "',0,100,300)",400);
  opacidad(div,0,100,300)
  //document.getElementById(div).style.display="block";
  if (document.getElementById("frame_ex"))
  {
  	posicion_x=200;
	posicion_y=pos_y+scrt-240;
  }
  else
  {
  	posicion_x=pos_x+scrl;
	posicion_y=pos_y+scrt;
  }
  document.getElementById(div).style.left = (posicion_x) + "px";
  document.getElementById(div).style.top = (posicion_y)  + "px";  
  document.getElementById(div).style.display="block";
  }

/**
 * Oculta la apa
 */
function eliminarCapa(){
  opacidad('resultado_envio',100,0,200);
  setTimeout("opacidad('overlay',70,0,200)",300);
  setTimeout('document.getElementById("resultado_envio").style.display="none"',600);
  setTimeout('document.getElementById("overlay").style.display="none"',600);
}

function ocultar_alerta()
{
	if (document.getElementById("frame_ex"))
  	{
		opacidad('resultado_envio_frame',100,0,200);
  		document.getElementById('resultado_envio_frame').style.display = 'none';
		opacidad('overlay_frame',100,0,200);
		document.getElementById('overlay_frame').style.display='none';
		document.getElementById('resultado_envio_frame').innerHTML ='';
	}
	else
  	{
		opacidad('resultado_envio',100,0,200);
  		document.getElementById('resultado_envio').style.display = 'none';
		opacidad('overlay',100,0,200);
  		document.getElementById('overlay').style.display='none';
		document.getElementById('resultado_envio').innerHTML ='';
	}
	  if (document.getElementById("cuerpo_blog"))
	  {
		cambiarOpacidad(100,'cuerpo_blog');
	  }
}

function mostrar_ocultar(div) {
	var display = document.getElementById(div).style.display;
	if(display == 'block')
	{
		opacidad(div,100,0,200);
  	}
	else
	{
		opacidad(div,0,100,200);
  	}
	document.getElementById(div).style.display = (display == 'none') ? 'block' : 'none';
	if (document.getElementById("frame_ex"))
  	{
		opacidad('overlay_frame',100,0,200);
  		document.getElementById('overlay_frame').style.display='none';
	}
	else
	{
		opacidad('overlay',100,0,200);
  		document.getElementById('overlay').style.display='none';
	}
	  if (document.getElementById("cuerpo_blog"))
	  {
		cambiarOpacidad(100,'cuerpo_blog');
	  }
}

//Fin cambios en las alertas

//Obtencion tamaño ventana y posicion scroll

function f_clientWidth() {
	return f_filterResults (
		window.innerWidth ? window.innerWidth : 0,
		parent.document.documentElement ? parent.document.documentElement.clientWidth : 0,
		parent.document.body ? parent.document.body.clientWidth : 0
	);
}

function f_clientHeight() {
	return f_filterResults (
		window.innerHeight ? window.innerHeight : 0,
		parent.document.documentElement ? parent.document.documentElement.clientHeight : 0,
		parent.document.body ? parent.document.body.clientHeight : 0
	);
}

function f_scrollLeft() {
	return f_filterResults (
		window.pageXOffset ? window.pageXOffset : 0,
		parent.document.documentElement ? parent.document.documentElement.scrollLeft : 0,
		parent.document.body ? parent.document.body.scrollLeft : 0
	);
}

function f_scrollTop() {
	return f_filterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		parent.document.documentElement ? parent.document.documentElement.scrollTop : 0,
		parent.document.body ? parent.document.body.scrollTop : 0
	);
}

function f_filterResults(n_win, n_docel, n_body) {
	var n_result = n_win ? n_win : 0;
	if (n_docel && (!n_result || (n_result > n_docel)))
		n_result = n_docel;
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}

//Fin obtencion ventana y posicion scroll

//Traduccion

function submitChange(orig,dest,objeto) {
  var value = document.getElementById(objeto).innerHTML;
  var src = orig
  var dest = dest
  document.getElementById("div_trad").value=objeto;
  google.language.translate(value, src, dest, translateResult);
  //return false;
}
function translateResult(result) {
  var resultBody = document.getElementById("div_trad").value;
  if (result.translation) {
	var str = result.translation
	resultBody.innerHTML = str;
  } else {
	resultBody.innerHTML = '<span style="color:red">Error Traduciendo</span>';
  }
}
google.load("language", "1");
google.setOnLoadCallback(init);
function init()
{
}

//Fin traduccion
