function $(id) {return document.getElementById(id);}

function ereg_replace(texto,expresion,reemplazo)
   {
   var regexp=new RegExp(expresion,"g");
   return texto.replace(regexp,reemplazo);
   }

function IniciarSesion()
   {
   var cuadro=$("FormularioInicioSesion");
   if(cuadro.style.visibility=="visible")
      cuadro.style.visibility="hidden";
   else
      {
      cuadro.style.visibility="visible";
      $("IniciarSesionCuenta").focus();
      }
   }

function AjaxIniciarSesion()
   {
   var usuario=$("IniciarSesionCuenta").value;
   var password=$("IniciarSesionPassword").value;
   if(!usuario)
      {
      alert("Si no escribes un usuario... pocas posiblidades tienes de que te loguee...");
      return;
      }
   if(!password)
      {
      alert("Vale campeón, ahora inténtalo otra vez, pero en esta ocasión poniendo una contraseña...");
      return;
      }
   var ajax=new Ajax("ajax_iniciar_sesion.php");
   function Evaluar(respuesta){eval(respuesta.responseText);}
   ajax.Finalizar(Evaluar);
   ajax.Enviar("GET","?usuario="+usuario+"&password="+password);
   }

function CerrarSesion()
   {
   var ajax=new Ajax("ajax_cerrar_sesion.php");
   ajax.Finalizar(function()
      {
      var url=document.URL.split("#");
      document.location.href=url[0];
      });
   ajax.Enviar("GET","");
   }

function Virtualizar(cuenta)
   {
   var ajax=new Ajax("ajax_virtualizar.php");
   function Evaluar(respuesta){eval(respuesta.responseText);}
   ajax.Finalizar(Evaluar);
   ajax.Enviar("GET","?cuenta="+cuenta);
   }

function AlturaLienzo()
   {
   var altura;
   if(window.innerHeight && window.scrollMaxY)
      altura=window.innerHeight+window.scrollMaxY;
   else if(document.body.scrollHeight > document.body.offsetHeight)
      altura=document.body.scrollHeight;
   else
      {
      altura=document.body.offsetHeight;
      if(altura<window.innerHeight)
         altura=window.innerHeight;
      }
   return altura;
   }

function Estirar()
   {
   //Estira el contenedor al 100% de la altura de la página
   $('Contenedor').style.height=AlturaLienzo()+"px";
   }

function DosDigitos(numero)
   {
   var resultado=numero/10;
   if(resultado>=1)
      return numero;
   else if(numero==0)
      return "00";
   else if(numero<10)
      return "0"+(resultado*10); //Así evito añadir un cero a los números que ya tienen 2 dígitos pero son menores que 10, como "09"
   }

function Hora()  {return DosDigitos(hora)+" : "+DosDigitos(minuto)+" : "+DosDigitos(segundo);}
function Fecha() {return DosDigitos(dia)+" - "+DosDigitos(mes)+" - "+anyo;}

function MoverFechaHora()
   {
   segundo++;
   if(segundo>59)
      {
      segundo=0;
      minuto++;
      }
   if(minuto>59)
      {
      minuto=0;
      hora++;
      }
   if(hora>23)
      {
      hora=0;
      dia++;
      }
   if(mes==2)
      {
      if((anyo%4==0 && anyo%100!=0) || (anyo%4==0 && anyo%100==0 && anyo%400==0)) //Años bisiestos
         {
         if(dia>29)
            {
            dia=1;
            mes++
            }
         }
      else if(dia>28)
         {
         dia=1;
         mes++;
         }
      }
   else if(mes==4 || mes==6 || mes==9 || mes==11)
      {
      if(dia>30)
         {
         dia=1;
         mes++;
         }
      }
   else
      {
      if(dia>31)
         {
         dia=1;
         mes++;
         }
      }
   if(mes>12)
      {
      mes=1;
      anyo++;
      }
   setTimeout("MoverFechaHora()",1000);
   }

function FechaHora()
   {
   if($("Hora"))
      {
      $("Hora").value=Hora();
      $("Fecha").value=Fecha();
      setTimeout("FechaHora()",1000);
      }
   }

function Examinar(id)
   {
   document.write("<input id=\"Ruta_"+id+"\" type=\"text\" class=\"Expandido\">");
   document.write(" <input type=\"button\" value=\"Examinar\">");
   document.write("<input name=\""+id+"\" id=\"Campo_"+id+"\" type=\"file\" size=\"20\" onchange=\"$('Ruta_"+id+"').value=this.value;\">");
   }

function Bola(id,pasivo,valor)
   {
   if(!valor || pasivo==2)
      valor="";
   if(!pasivo)
      document.write("<input id=\""+id+"\" type=\"text\" class=\"Bola\" onclick=\"if(this.value)this.value='';else this.value='X';blur();\" value=\""+valor+"\">");
   else
      document.write("<input id=\""+id+"\" type=\"text\" class=\"Bola\" pasiva=\"1\" onclick=\"blur();\" value=\""+valor+"\">");
   }

function Ping()
   {
   var ajax=new Ajax("ajax_ping.php");
   function Finalizar() {setTimeout("Ping()",30000);}
   ajax.Finalizar(Finalizar);
   ajax.Enviar("GET","");
   }

var control_np=false;

function NuevoPassword(usuario)
   {
   if(!control_np)
      {
      $("BarraDeEstado").innerHTML="Envíando solicitud...";
      $("BarraDeEstado").style.visibility="visible";
      var ajax=new Ajax("ajax_nuevo_password.php");
      function Terminar(respuesta) {control_np=false;$("BarraDeEstado").style.visibility="hidden";alert(respuesta.responseText);}
      ajax.Finalizar(Terminar);
      control_np=true;
      ajax.Enviar("GET","?usuario="+usuario);
      }
   else
      alert("Ya se está procesando una solicitud para recuperar tu cuenta...\n\n¡Espera unos segundos ha recibir la confirmación!.");
   }

Ping(); //Inicializa el primer ping
