function findPosX(obj) 
{
   var posLeft = 0;
   while (obj.offsetParent) 
   {
      posLeft += obj.offsetLeft;
      obj = obj.offsetParent;
   }
   return posLeft;
}

function findPosY(obj) 
{
   var posTop = 0;
   while (obj.offsetParent) 
   {
      posTop += obj.offsetTop;
	  obj = obj.offsetParent;
   } 
   return posTop;
}

function ChequearDigitoVerificadorRut(RutUsuario,DVRutUsuario) 
{
   var Rut = RutUsuario.value;
   var DV  = DVRutUsuario.value;
   var dvr = '0';
   var suma = 0;
   var mul  = 2;
   var i,dvi;
   for (i= Rut.length -1 ; i >= 0; i--) 
   {
      suma = suma + Rut.charAt(i) * mul;
      if (mul == 7) mul = 2
      else mul++;
   }
   var res = suma % 11;
   if (res==1) dvr = 'k'
   else if (res==0) dvr = '0'
   else {
      dvi = 11-res;
      dvr = dvi + "";
   }
   if (dvr != DV.toLowerCase()) 
   {
      return false;
   }
   else 
   {
      return true;
   }
}

/*Valida que el E-Mail tengo un formato correcto.*/
function ChequearEMail(EMail) 
{	
   EMail.value=trim(EMail.value);
   var Correo=EMail.value;
   if (Correo.length>0) 
   { 
	  /* Calculando la cantidad de arrobas en el e-mail*/
      var Arrobas=0;
	  var i;
	  for (i=0;i<=Correo.length-1;i++) 
	  {
	     if (Correo.charAt(i)=='@') Arrobas++;
	  }
      if (Arrobas==1) 
	  {
	     /* Si el único arroba que hay no esta al comienzo ni al final
		 es decir, existe una parte antes y despues del arrobas*/
         if ((Correo.charAt(0)=='@') || (Correo.charAt(Correo.length-1)=='@'))	  
		    return false
	     else return true;
	  }
      else return false;
   }
   else return true;
} 

function DescargarArchivo()
{
    URL="Descarga.php";
	 
    var Ancho=500;
    var Alto=430;

	var winl = (screen.width - Ancho) / 2;
	var wint = (screen.height - Alto) / 2;
	var winprops = 'height='+Alto+',width='+Ancho+',top='+wint+',left='+winl+',scrollbars=1';
	var win = window.open(URL,"Descarga_Archivo",winprops);
	if (parseInt(navigator.appVersion) >= 4) 
	{
		win.window.focus();
	}
}

function trim(sString) 
{   	
   while (sString.substring(0,1) == ' ')
   {
      sString = sString.substring(1, sString.length);
   }
   while (sString.substring(sString.length-1, sString.length) == ' ')
   {
   sString = sString.substring(0,sString.length-1);
   }
   return sString;
}  

function EnteroValido(valor)
{  
   var Flag=1;
   var i;

   if (valor.length>0)
   {
      for (i=0;i<=valor.length-1;i++) 
	  {
         if ((valor.charAt(i)!='0') && (valor.charAt(i)!='1') && (valor.charAt(i)!='2') && (valor.charAt(i)!='3') && (valor.charAt(i)!='4') && (valor.charAt(i)!='5') && (valor.charAt(i)!='6') && (valor.charAt(i)!='7') && (valor.charAt(i)!='8') && (valor.charAt(i)!='9'))
	        Flag=0;
      }
   }
   else Flag=0;
	  
   if (Flag==1)
   {
      //intento convertir a entero. 
      //si era un entero no le afecta, si no lo era lo intenta convertir 
      valor = parseInt(valor) 

      //Compruebo si es un valor numérico 
      if (isNaN(valor)) 
	  { 
         //entonces (no es numero) devuelvo el valor cadena vacia 
         return false 
      }else
	  { 
         //En caso contrario (Si era un número) devuelvo el valor 
         return true 
      }
   }
}
