detectableConVB=false;

function datosUsuario()
{
  if(componentesDetectables())
  {
    //formulario=document.datosUsuario;
    window.onerror=null;
    var idUsuario="?";
    if(document.cookie.length>0)
    {
      inicio=document.cookie.indexOf("id=");
      if(inicio!=-1)
      {
        inicio+=3;
        fin=document.cookie.indexOf(";",inicio);
        if(fin==-1)
        {
          fin=document.cookie.length;
        }
        idUsuario=parseInt(unescape(document.cookie.substring(inicio,fin)));
      }
    }
    formulario.idUsuario.value=idUsuario;
    /*
    referer=document.referrer;
    if(referer!="")
    {
      //alert(referer);
      formulario.urlAnterior.value=""+referer+" (js)";
    }
    */
    formulario.navegador.value=navigator.appName;
    formulario.version.value=navigator.appVersion;
    formulario.codigoNavegador.value=navigator.appCodeName;
    formulario.plataforma.value=navigator.platform;
    formulario.versionJS.value=versionJS;
    var VisualBasic="0";
    if(detectableConVB)
    {
      VisualBasic=detectarVisualBasic();
    }
    formulario.VisualBasic.value=VisualBasic;
    var tieneActiveX=false;
    if(detectableConVB)
    {
      tieneActiveX=detectarControlActiveX("Microsoft.ActiveXPlugin",1,10);
    }
    formulario.ActiveX.value=tieneActiveX;
    var tieneDirectX=false;
    if(detectableConVB)
    {
      tieneDirectX=detectarDirectX();
    }
    formulario.DirectX.value=tieneDirectX;
    var tieneAcrobat=detectarPlugin("Adobe Acrobat");
    if(tieneAcrobat==false && detectableConVB)
    {
      tieneAcrobat=detectarControlActiveX("PDF.PdfCtrl",1,6);
    }
    if(tieneAcrobat==false && tieneMIMETypes())
    {
      tieneAcrobat=detectarMIME("application/pdf");
    }
    formulario.Acrobat.value=tieneAcrobat;
    var tieneShockwaveFlash=detectarPlugin("Shockwave","Flash");
    if(!tieneShockwaveFlash && detectableConVB)
    {
      tieneShockwaveFlash=detectarControlActiveX("ShockwaveFlash.ShockwaveFlash",1,7);
    }
    if(tieneShockwaveFlash==false && tieneMIMETypes())
    {
      tieneShockwaveFlash=detectarMIME("application/x-shockwave-flash");
    }
    formulario.ShockwaveFlash.value=tieneShockwaveFlash;
    var tieneShockwaveDirector=detectarPlugin("Shockwave","Director");
    if(tieneShockwaveDirector==false && detectableConVB)
    {
      tieneShockwaveDirector=detectarControlActiveX("SWCtl.SWCtl",1,11);
    }
    if(tieneShockwaveDirector==false && tieneMIMETypes())
    {
      tieneShockwaveDirector=detectarMIME("application/x-director");
    }
    formulario.ShockwaveDirector.value=tieneShockwaveDirector;
    var tieneWindowsMedia=detectarPlugin("Windows Media");
    if(tieneWindowsMedia==false && detectableConVB)
    {
      tieneWindowsMedia=detectarControlActiveX("MediaPlayer.MediaPlayer",1,10);
    }
    formulario.WindowsMedia.value=tieneWindowsMedia;
    tieneQuickTime=detectarPlugin("QuickTime");
    if(tieneQuickTime==false && detectableConVB)
    {
      tieneQuickTime=detectarQuickTime();
    }
    if(tieneQuickTime==false && tieneMIMETypes())
    {
      tieneQuickTime=detectarMIME("image/x-quicktime");
    }
    formulario.QuickTime.value=tieneQuickTime;
    var tieneRealPlayer=detectarPlugin("RealPlayer");
    if(tieneRealPlayer==false && detectableConVB)
    {
      tieneRealPlayer=detectarControlActiveX("rmocx.RealPlayer G2 Control",1,10);
      if(tieneRealPlayer==false)
      {
        tieneRealPlayer=detectarControlActiveX("RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)",1,10);
        if(tieneRealPlayer==false)
        {
           tieneRealPlayer=detectarControlActiveX("RealVideo.RealVideo(tm) ActiveX Control (32-bit)",1,10);
        }
      }
    }
    if(tieneRealPlayer==false && tieneMIMETypes())
    {
      tieneWindowsMedia=detectarMIME("x-pn-realaudio");
    }
    formulario.RealPlayer.value=tieneRealPlayer;
    formulario.bitsColor.value=window.screen.colorDepth;
    formulario.anchoTotal.value=window.screen.width;
    formulario.altoTotal.value=window.screen.height;
    formulario.anchoMaximo.value=window.screen.availWidth;
    formulario.altoMaximo.value=window.screen.availHeight;
    ancho=navigator.appName=='Netscape'?window.innerWidth:document.body.clientWidth;
    //alto=navigator.appName=='Netscape'?window.innerHeight:document.body.clientHeight;
    if(navigator.appName=='Netscape')
    {
      alto=window.innerHeight;
    }
    else
    {
      if (document.documentElement && document.documentElement.clientHeight)
      {
        alto=document.documentElement.clientHeight;
      }
      else
      {
        if(document.body)
        {
          alto=document.body.clientHeight;
        }
        else
        {
          alto=0;
        }
      }
    }
    formulario.anchoDisponible.value=ancho;
    formulario.altoDisponible.value=alto;
    if(navigator.javaEnabled()==1)
    {
      formulario.java.value=true;
    }
    else
    {
      formulario.java.value=false;
    }
    if(navigator.javaEnabled() && (navigator.appName!="Microsoft Internet Explorer"))
    {
      utilidades=java.awt.Toolkit.getDefaultToolkit();
      direccion=java.net.InetAddress.getLocalHost();
      formulario.maquinaJava.value=direccion.getHostName();
      formulario.ipJava.value=direccion.getHostAddress();
    }
    else
    {
      formulario.maquinaJava.value=false;
      formulario.ipJava.value=false;
    }
    if(window.screen.fontSmoothingEnabled) //==true
    {
      formulario.letrasSuavizadas.value=true;
    }
    else
    {
      formulario.letrasSuavizadas.value=false;
    }
  }
  formulario.submit();
}

function componentesDetectables()
{
  return (detectableConVB || tienePlugins() || tieneMIMETypes());
}

function tieneMIMETypes()
{
  return (navigator.mimeTypes && navigator.mimeTypes.length);
}

function tienePlugins()
{
  return (navigator.plugins && navigator.plugins.length>0);
}

function detectarMIME(nombre)
{
  var encontrado=false;
  temp=navigator.mimeTypes[nombre];
  if (temp && temp.enabledPlugin)
  {
    encontrado=true;
  }
  return encontrado;
}

function detectarPlugin()
{
  var buscados=detectarPlugin.arguments;
  //var descripciones=new Array(buscados.length);
  var descripciones="";
  var encontrado=false;
  if(navigator.plugins && navigator.plugins.length>0)
  {
    var numeroDePlugins=navigator.plugins.length;
    for(i=0; i<numeroDePlugins; i++)
    {
      var numeroDeEncontrados=0;
      for(j=0; j<buscados.length; j++)
      {
        if((navigator.plugins[i].name.indexOf(buscados[j])>=0) || (navigator.plugins[i].description.indexOf(buscados[j])>=0))
        {
          //descripciones[j]=navigator.plugins[i].description;
          descripciones="["+navigator.plugins[i].description+"]";
          numeroDeEncontrados++;
        }
      }
      if(numeroDeEncontrados==buscados.length)
      {
        encontrado=descripciones==""?true:descripciones;
        //encontrado=true;
        //break;
      }
    }
  }
  return encontrado;
}

