/*
  Derechos reservados por acuari.com y Raul Elizondo Leal con excepcion
  de aquellas funciones o rutinas en que se especifique lo contrario.
  
  Si algo de aqui le sirve a alguien, lo pueden copiar bajo su propio
  riesgo, no me hago responsable por explosiones o cualquier otro insidente
  que mi codigo pudiera ocacionar. ;)
*/
/*
===============================================================================
 Nadie es perfecto! jejeje, y no me iba a quebrar la cabeza haciendo
 algo que ya estaba hecho y que era facil de encontrar.  Asi es que,
 respetemos los derechos de autor, aunque haya traducido algunas
 cosas.
===================================================================
 Author: Matt Kruse <matt@mattkruse.com>
 WWW: http://www.mattkruse.com/
===============================================================================
*/
var MONTH_NAMES=new Array('Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre','Ene','Feb','Mar','Abr','May','Jun','Jul','Ago','Sep','Oct','Nov','Dic');
var DAY_NAMES=new Array('Domingo','Lunes','Martes','Miércoles','Jueves','Viernes','Sábado','Dom','Lun','Mar','Mie','Jue','Vie','Sab');
function LZ(x) {return(x<0||x>9?"":"0")+x}
function formatDate(date,format) {
        format=format+"";
        var result="";
        var i_format=0;
        var c="";
        var token="";
        var y=date.getYear()+"";
        var M=date.getMonth()+1;
        var d=date.getDate();
        var E=date.getDay();
        var H=date.getHours();
        var m=date.getMinutes();
        var s=date.getSeconds();
        var yyyy,yy,MMM,MM,dd,hh,h,mm,ss,ampm,HH,H,KK,K,kk,k;
        // Convert real date parts into formatted versions
        var value=new Object();
        if (y.length < 4) {y=""+(y-0+1900);}
        value["y"]=""+y;
        value["yyyy"]=y;
        value["yy"]=y.substring(2,4);
        value["M"]=M;
        value["MM"]=LZ(M);
        value["MMM"]=MONTH_NAMES[M-1];
        value["NNN"]=MONTH_NAMES[M+11];
        value["d"]=d;
        value["dd"]=LZ(d);
        value["E"]=DAY_NAMES[E+7];
        value["EE"]=DAY_NAMES[E];
        value["H"]=H;
        value["HH"]=LZ(H);
        if (H==0){value["h"]=12;}
        else if (H>12){value["h"]=H-12;}
        else {value["h"]=H;}
        value["hh"]=LZ(value["h"]);
        if (H>11){value["K"]=H-12;} else {value["K"]=H;}
        value["k"]=H+1;
        value["KK"]=LZ(value["K"]);
        value["kk"]=LZ(value["k"]);
        if (H > 11) { value["a"]="PM"; }
        else { value["a"]="AM"; }
        value["m"]=m;
        value["mm"]=LZ(m);
        value["s"]=s;
        value["ss"]=LZ(s);
        while (i_format < format.length) {
                c=format.charAt(i_format);
                token="";
                while ((format.charAt(i_format)==c) && (i_format < format.length)) {
                        token += format.charAt(i_format++);
                        }
                if (value[token] != null) { result=result + value[token]; }
                else { result=result + token; }
                }
        return result;
}
/*
  Ahora si, todo lo demas de aqui en delante es mio!! mio!!! muahahahaha!!
*/
/*
===============================================================================
    Funciones varias
===============================================================================
*/
function leeCookie(nombre) {
  var nombreEQ = nombre + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nombreEQ) == 0) return c.substring(nombreEQ.length,c.length);
  }
  return null;
}
function el(id) {
  if (document.getElementById) {
    return document.getElementById(id);
  } else if (window[id]) {
    return window[id];
  }
  return null;
}
function tiempounix() {
 var tiempolocal = new Date();
 return (tiempolocal.getTime() - tiempolocal.getMilliseconds()) / 1000;
}
function procesaXML(xmlhttp) {
  var xml;
  var xmlnom;
  var xmlval;
  var txtnom;
  var txtval;
  var i;
  var variablevacia = '';
  i = 0;
  xml = xmlhttp.responseXML;
  while (i >= 0) {
    xmlnom = xml.getElementsByTagName('nombrevar')[i];
    xmlval = xml.getElementsByTagName('valor')[i];
    if (xmlnom != null && xmlval != null) {
      txtnom = xmlnom.firstChild.data;
      txtval = xmlval.firstChild.data;
      if (txtval != "_null_") 
          el(txtnom).innerHTML = txtval;
/*        try {
          el(txtnom).innerHTML = txtval;
        } catch (e) {
        } */
       else 
        try {
          el(txtnom).innerHTML = variablevacia;
        } catch (e) {
        }
      i++;
    } else {
      i = -1;
    }
  }
}
/*
===============================================================================
    Funciones de autentificacion al sitio
===============================================================================
*/
function accede() {
  el('botoningreso').style.display = 'none';
  el('procesandoentrada').style.display = 'inline';
  el('procesandoentrada').innerHTML = 'Registrando ingreso';
  accede_procesando = 1;
  if (enlinea_procesando == 1) { return false; }
  var xmlhttp;
  if (window.ActiveXObject) { // IE
    try {xmlhttp = new ActiveXObject('Msxml2.XMLHTTP');
    } catch (e) {
      xmlhttp=false;
    }
    if (!xmlhttp) {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
  } else if (window.XMLHttpRequest) { // Mozilla, Safari, ...
    if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
      try {
        xmlhttp = new XMLHttpRequest();
      } catch (e) {
        xmlhttp=false;
      }
    }
    if (!xmlhttp && window.createRequest) {
      try {
        xmlhttp = window.createRequest();
      } catch (e) {
        xmlhttp=false;
      }
    }
  } 
  url = 'usuario='+document.autentificacion.usuario.value+'&contrasena=';
  url += hex_sha256(document.autentificacion.contrasena.value)+'&proc=autentificacion';
  url += '&cookie='+leeCookie('acuari')+'&ut='+tiempounix();
  url += '&pag='+el('pag').innerHTML;
  url += '&intentos='+el('intentos').innerHTML;
  xmlhttp.onreadystatechange=function() {
    if (xmlhttp.readyState==4) {
      procesaXML(xmlhttp);
      procedeAutent();
      accede_procesando = 0;
      muestra();
      el('procesandoentrada').style.display = 'none';
      el('botoningreso').style.display = 'inline';
      if (enlinea_procesando == 1) { enlinea; }
    } else {
      el('procesandoentrada').innerHTML += '.';
    }
  }
  xmlhttp.open("POST",'http://www.acuari.com/acuari.xml',true);
  xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  xmlhttp.setRequestHeader("Content-length", url.length);
  xmlhttp.setRequestHeader("Connection", "close");
  xmlhttp.send(encodeURI(url));
  return false;
}
function borramensaje() {
  el('autent-mensaje').innerHTML = "";
}
function procedeAutent() {
  if (el('requisicion').innerHTML == "no-aceptada") {
    el('autent-mensaje').innerHTML = 'Usuario o contrase&ntilde;a inv&aacute;lidos. ';
    if (el('intentos').innerHTML > 2) {
      el('muchosintentos').style.display = 'inline';
    }
    setTimeout(borramensaje,3000);
    el('intentos').innerHTML++;
  } else if (el('requisicion').innerHTML == "aceptada") {
    document.autentificacion.contrasena.value = '';
    el('bloque_autentificacion0').style.display = 'none';
    el('bloque_autentificacion1').style.display = 'inline';
  }

  el('requisicion').innerHTML = '';
//  activa('contenido');
}
function accede1() {
}
function sale() {
  salir_procesando = 1;
  el('botonsalida').style.display = 'none';
  el('procesandosalida').style.display = 'inline';
  el('procesandosalida').innerHTML = 'Registrando salida';
  if (enlinea_procesando == 1) { return false; }
  var xmlhttp
  if (window.ActiveXObject) { // IE
    try {xmlhttp = new ActiveXObject('Msxml2.XMLHTTP');
    } catch (e) {
      xmlhttp=false;
    }
    if (!xmlhttp) {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
  } else if (window.XMLHttpRequest) { // Mozilla, Safari, ...
    if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
      try {
        xmlhttp = new XMLHttpRequest();
      } catch (e) {
        xmlhttp=false;
      }
    }
    if (!xmlhttp && window.createRequest) {
      try {
        xmlhttp = window.createRequest();
      } catch (e) {
        xmlhttp=false;
      }
    }
  } 
  url = 'http://www.acuari.com/acuari.xml?proc=salir'+'&cookie='+leeCookie('acuari')+'&ut='+tiempounix();
  xmlhttp.onreadystatechange=function() {
    if (xmlhttp.readyState==4) {
      procesaXML(xmlhttp);
      procedeSalir();
      salir_procesando = 0;
      muestra();
      el('botonsalida').style.display = 'inline';
      el('procesandosalida').style.display = 'none';
      activa('contenido');
      if (enlinea_procesando == 1) { enlinea; }
    }
  };
  xmlhttp.open("GET",url,true);
  xmlhttp.send(null);
  return false;
}
function sale1() {
}
function procedeSalir() {
  if (el('requisicion').innerHTML == "no-aceptada") {
  } else if (el('requisicion').innerHTML == "aceptada") {
    el('bloque_autentificacion1').style.display = 'none';
    el('bloque_autentificacion0').style.display = 'inline';
    el('gv_nivel').innerHTML = '9';
  }
//  activa('local');
  return false;
}

function propiedades() {
  el('botoningreso').style.display = 'none';
  accede_procesando = 1;
  if (enlinea_procesando == 1) { return false; }
  var xmlhttp;
  if (window.ActiveXObject) { // IE
    try {xmlhttp = new ActiveXObject('Msxml2.XMLHTTP');
    } catch (e) {
      xmlhttp=false;
    }
    if (!xmlhttp) {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
  } else if (window.XMLHttpRequest) { // Mozilla, Safari, ...
    if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
      try {
        xmlhttp = new XMLHttpRequest();
      } catch (e) {
        xmlhttp=false;
      }
    }
    if (!xmlhttp && window.createRequest) {
      try {
        xmlhttp = window.createRequest();
      } catch (e) {
        xmlhttp=false;
      }
    }
  } 
  url = 'usuario='+el('usuario');
  url += '&proc=propiedades';
  url += '&cookie='+leeCookie('acuari')+'&ut='+tiempounix();
  url += '&titulo='+document.propiedades.titulo.value;
  url += '&contenido='+document.propiedades.contenido.value;
  url += '&ingresar='+document.propiedades.ingresar.value;
  xmlhttp.onreadystatechange=function() {
    if (xmlhttp.readyState==4) {
      procesaXML(xmlhttp);
      procedeAutent();
      accede_procesando = 0;
      muestra();
      el('procesandoentrada').style.display = 'none';
      el('botoningreso').style.display = 'inline';
      if (enlinea_procesando == 1) { enlinea; }
    } else {
      el('procesandoentrada').innerHTML += '.';
    }
  }
  xmlhttp.open("POST",'http://www.acuari.com/acuari.xml',true);
  xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  xmlhttp.setRequestHeader("Content-length", url.length);
  xmlhttp.setRequestHeader("Connection", "close");
  xmlhttp.send(encodeURI(url));
  return false;
}

function encripta()
{
  document.autentificacion.contrasena.value = hex_sha256(document.autentificacion.contrasena.value);
  return
}


/*
===============================================================================
    Funciones de seguimiento en linea
===============================================================================
*/
function enlinea() {
  enlinea_procesando = 1;
  if (accede_procesando == 1) { return false; }
  if (salir_procesando == 1) { return false; }
  setTimeout(enlinea,30000);
  var xmlhttp;
  if (window.ActiveXObject) { // IE
    try {xmlhttp = new ActiveXObject('Msxml2.XMLHTTP');
    } catch (e) {
      xmlhttp=false;
    }
    if (!xmlhttp) {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
  } else if (window.XMLHttpRequest) { // Mozilla, Safari, ...
    if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
      try {
        xmlhttp = new XMLHttpRequest();
      } catch (e) {
        xmlhttp=false;
      }
    }
    if (!xmlhttp && window.createRequest) {
      try {
        xmlhttp = window.createRequest();
      } catch (e) {
        xmlhttp=false;
      }
    }
  }
  std = '&cookie='+leeCookie('acuari')+'&ut='+tiempounix();
  xmlhttp.onreadystatechange=function() {
    if (xmlhttp.readyState==4) {
      procesaXML(xmlhttp);
      enlinea_procesando = 0;
      if (accede_procesando == 1) { accede; }
      if (salir_procesando == 1) { sale; }
    };
  };
  xmlhttp.open("POST",'http://www.acuari.com/enlinea.xml',true);
  xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  xmlhttp.setRequestHeader("Content-length", std.length);
  xmlhttp.setRequestHeader("Connection", "close");
  xmlhttp.send(encodeURI(std));
}
/*
===============================================================================
    Funciones de los tabs segun su nivel
===============================================================================
*/
function activa(a_id) {
/*
  lv_actual = '';
  for (x in nivel) {
    if (el('gv_nivel').innerHTML > nivel[x]) {
     el('tbl_' + x).style.display = 'none';
    } else {
     el('tbl_' + x).style.display = 'inline';
    }
    el('cont_' + x).style.display = 'none';
    if (lv_actual == '') {lv_actual = x}
  }
  
  if (a_id != null) {
    el('tbl_' + a_id).style.display = 'inline';
    el('cont_' + a_id).style.display = 'inline';
  } else {
    el('tbl_' + lv_actual).style.display = 'inline';
    el('cont_' + lv_actual).style.display = 'inline';
  }
*/
// propiedades terminos privacidad espacio comentarios foro contenido
  el('cont_contenido').style.display = 'none';
  el('cont_propiedades').style.display = 'none';
  el('cont_terminos').style.display = 'none';
  el('cont_privacidad').style.display = 'none';
  el('cont_espacio').style.display = 'none';
  el('cont_comentarios').style.display = 'none';
  el('cont_foro').style.display = 'none';
  el('cont_' + a_id).style.display = 'inline';

}
/*
===============================================================================
    otros
===============================================================================
*/

function muestra() {
  if (el('gv_nivel').innerHTML == 0) {
    el('tbl_propiedades').style.display = 'inline';
    if (el('tbl_foro').style.display == 'none') {
      el('tbl_contenido').style.display = 'inline';
    }
  }
  if (el('gv_nivel').innerHTML == 9) {
    el('tbl_propiedades').style.display = 'none';
    if (el('tbl_foro').style.display == 'none') {
      el('tbl_contenido').style.display = 'none';
    }
  }
}
/*
===============================================================================
===============================================================================
                              Principal
===============================================================================
===============================================================================
*/
var nivel = new Array();
var nombre = new Array();
var lv_nivel;
var enlinea_procesando = 0;
var accede_procesando = 0;
var salir_procesando = 0;
setTimeout(enlinea,30000);


