/**
 * Ajax
 *
 * Page,v 1.0 2009/22/12 18:26:42 ivi.vova Exp
 *
 * Copyright (C) 2009 ivi.vova, E-mail: ivi.vova@gmail.com
 *
 */

var request;
var bf_url;
var bf_id;
var ajax_circle=0;
var verif_circle=0;
var mas_ajax_images=new Array();
mas_ajax_images[0]="1.gif";
mas_ajax_images[1]="2.gif";
mas_ajax_images[2]="3.gif";
mas_ajax_images[3]="4.gif";
mas_ajax_images[4]="5.gif";
var img='<div id="loader" style="padding-top:20px;"><img src="../pics/ajax/'+mas_ajax_images[Math.floor(Math.random()*4)]+'" border="0"></div>';
var time=1000;

function Ajax()
{

    this.update = function()
    {
        ++verif_circle;
        if(verif_circle<5)
        {
            if((document.getElementById(bf_id).innerHTML=='')||(document.getElementById(bf_id).style.display=='none'))
            {
                this.show(bf_url,bf_id);
            }
        }
        else
        {
            verif_circle=0;
        }
    }

    this.show = function(url,id)
    {
        bf_url=url;
        bf_id=id;
        ajax_circle=0;
        if(window.XMLHttpRequest)
        {
            request=new XMLHttpRequest();
            request.onreadystatechange=this.timer;
            request.open("GET",url,true);
            request.send(null);
        }
        else
        {
            if(window.ActiveXObject)
            {
                request=new ActiveXObject("Microsoft.XMLHTTP");
                if(request)
                {
                    request.onreadystatechange=this.timer;
                    request.open("GET",url,true);
                    request.send();
                }
            }
        }
    }

    this.timer = function()
    {
        if(request.readyState==4)
        {
            if(request.status==200)
            {
                document.getElementById(bf_id).innerHTML = request.responseText;
            }
            else
            {
                //windows.setTimeout("this.update()",time);
                setTimeout("this.update()",time);
            }
        }
        else 
        {
            if(request.readyState>=1&&request.readyState<=3)
            {
                document.getElementById(bf_id).innerHTML=img;
                if(ajax_circle==0)
                {
                    ajax_circle=1;
                    //windows.setTimeout("this.update()",time);
                    setTimeout("this.update()",time);
                }
            }
        }
    }

}

var ajax = new Ajax();

