var xmlhttp = true;

if (!xmlhttp && typeof XMLHttpRequest != 'undefined')
{
  try {
    xmlhttp = new XMLHttpRequest ();
  }
  catch (e) {
  xmlhttp = false}
}


function myXMLHttpRequest (){
  var xmlhttplocal;
  try {
      xmlhttplocal = new ActiveXObject ("Msxml2.XMLHTTP")}
  catch (e) {
    try {
    xmlhttplocal = new ActiveXObject ("Microsoft.XMLHTTP")}
    catch (E) {
      xmlhttplocal = false;
    }
  }

  if (!xmlhttplocal && typeof XMLHttpRequest != 'undefined') {
    try {
      var xmlhttplocal = new XMLHttpRequest ();
    }
    catch (e) {
      var xmlhttplocal = false;
    }
  }
  return (xmlhttplocal);
}
function myXMLHttpRequest2 (){
  var xmlhttplocal;
  try {
      xmlhttplocal = new ActiveXObject ("Msxml2.XMLHTTP")}
  catch (e) {
    try {
    xmlhttplocal = new ActiveXObject ("Microsoft.XMLHTTP")}
    catch (E) {
      xmlhttplocal = false;
    }
  }

  if (!xmlhttplocal && typeof XMLHttpRequest != 'undefined') {
    try {
      var xmlhttplocal = new XMLHttpRequest ();
    }
    catch (e) {
      var xmlhttplocal = false;
    }
  }
  return (xmlhttplocal);
}


var mnmxmlhttp = Array ();
var mnmxmlhttp2 = Array ();
var mnmString = Array ();
var mnmPrevColor = Array ();
var responsestring = Array ();
var myxmlhttp = Array ();
var responseString = new String;

var i=0;
var ii = 0;


var b=0;
var bb = 0;

function ajax_update(myUrl, myDiv, rate){

    target2 = document.getElementById ('content');
    
    ii = i++;

    var content = "i=" + ii;

    mnmxmlhttp = new myXMLHttpRequest ();
    if (mnmxmlhttp) {
            mnmxmlhttp.open ("POST", myUrl, true);
            mnmxmlhttp.setRequestHeader ('Content-Type',
                       'application/x-www-form-urlencoded');

            mnmxmlhttp.send (content);
            errormatch = new RegExp ("^ERROR:");

            target2 = document.getElementById (myDiv);

            mnmxmlhttp.onreadystatechange = function () {
                if (mnmxmlhttp.readyState == 4) {
                    mnmString = mnmxmlhttp.responseText;

                    if (mnmString.match (errormatch)) {
                        mnmString = mnmString.substring (6, mnmString.length);

                        target = document.getElementById (myDiv);
                        target2.innerHTML = mnmString;    

                    } else {
                        target = document.getElementById (myDiv);
                        target2.innerHTML = mnmString;
                    }
                }
            }
        }

    setTimeout('ajax_update(\'' + myUrl + '\',\'' + myDiv + '\',\'' + rate + '\');', rate);   
}

function bodyOnReady(func){
//call the function 'func' when DOM loaded
//Version 3.0 - 15/10/2008 - based on Jquery bindReady
//by Micox - www.elmicox.com - elmicox.blogspot.com - webly.com.br
//http://www.elmicox.com/2007/evento-body-onready-sem-o-uso-de-libs/

    //flag global para indicar que ja' rodou e function que roda realmente
    done = false
    init = function(){ if(!done) { done=true; func() } }
    var d=document; //apelido para o document
    //pra quem tem o DOMContent (FF)
    if(document.addEventListener){ d.addEventListener("DOMContentLoaded", init, false );}
    
    if( /msie/i.test( navigator.userAgent ) ){ //IE
        (function () {
            try { // throws errors until after ondocumentready                
                d.documentElement.doScroll("left");
            } catch (e) {           
                setTimeout(arguments.callee, 10); return;
            }
            // no errors, fire
            init();
        })();
    }
    if ( window.opera ){
        d.addEventListener( "DOMContentLoaded", function () {
            if (done) return;
            //no opera, os estilos so' sa~o habilitados no fim do DOMready
            for (var i = 0; i < d.styleSheets.length; i++){
                if (d.styleSheets[i].disabled)
                    setTimeout( arguments.callee, 10 ); return;
            }
            // fire
            init();
        }, false);
    }
    if (/webkit/i.test( navigator.userAgent )){ //safari's
        if(done) return;
        //testando o readyState igual a loaded ou complete
        if ( /loaded|complete/i.test(d.readyState)===false ) {
            setTimeout( arguments.callee, 10 );    return;
        }
        init();
    }
    //se nada funfou eu mando a velha window.onload lenta mesmo
    if(!done) window.onload = init
}