// JavaScript Document
var xmlHttp;
var id;


function linkme(link_url,divid)
{
    var url = link_url;
    id = divid;

    var date = new Date();
    var timestamp = date.getTime();

    if(link_url.indexOf("?")==-1){
        rantext = "?time=" + timestamp;
    }else{
        rantext = "&time=" + timestamp;
    }

    xmlHttp=GetXmlHttpObject(linkstateChanged);	
    xmlHttp.open("GET", link_url + rantext, true);
    xmlHttp.send(null);
}

function linkstateChanged() 
{ 
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
        if(id="framed_url_id")
            document.getElementById(id).value = xmlHttp.responseText; 
        else if(id.length>0)
            document.getElementById(id).innerHTML = xmlHttp.responseText; 
        
    }
}

function GetXmlHttpObject(handler)
{ 
    var objXmlHttp=null;

    if (navigator.userAgent.indexOf("Opera")>=0)
        {
        alert("This example doesn't work in Opera") ;
        return ;
    }
    if (navigator.userAgent.indexOf("MSIE")>=0)
        { 
        var strName="Msxml2.XMLHTTP";
        if (navigator.appVersion.indexOf("MSIE 5.5")>=0)
            {
            strName="Microsoft.XMLHTTP";
        } 
        try
        { 
            objXmlHttp=new ActiveXObject(strName);
            objXmlHttp.onreadystatechange=handler ;
            return objXmlHttp;
        } 
        catch(e)
        { 
            alert("Error. Scripting for ActiveX might be disabled");
            return;
        } 
    } 
    if (navigator.userAgent.indexOf("Mozilla")>=0)
        {
        objXmlHttp=new XMLHttpRequest();
        objXmlHttp.onload=handler;
        objXmlHttp.onerror=handler;
        return objXmlHttp;
    }
} 


function XMLHTTP_Util()
{
    this.sendRequest = function(url,method,params,async,callback,callbackargs,display)
    {
        method = method ? method.toUpperCase() : "GET";
        if (typeof(callback) == "string") callback = new Function(callback);
        callback = callback || function(){};
        params = params ? params.join("&") : "";
        if (method == "GET" && params) url += "?"+params;
        var req = this.createXMLHTTPObject();
        if (!req) callback.call(this,false,callbackargs);
        req.ref = this;
        req.open(method,url,async);
        req.setRequestHeader('User-Agent','XMLHTTP/1.0');
        if (method == "POST")
            {
            req.setRequestHeader("Content-type","application/x-www-form-urlencoded");
            req.setRequestHeader("Content-length",params.length);
            req.setRequestHeader("Connection","close");
        }
        req.onreadystatechange = function()
        {
            if (this.readyState != 4) return;
            if (this.status != 200 && this.status != 304)
                {
                //alert("HTTP error " + req.status);
                callback.call(this.ref,false,callbackargs);
            }
            else
                {
                callback.call(this.ref,req,callbackargs);
            }
        }
        if (req.readyState == 4) return;
        req.send(method=="GET"?null:params, display);
    }
    this.createXMLHTTPObject = function()
    {
        var xmlhttp = false;
        for (var i=0;i<this.XMLHttpFactories.length;i++)
            {
            try
            {
                xmlhttp = this.XMLHttpFactories[i]();
            }
            catch(e)
            {
                continue;
            }
            break;
        }
        return xmlhttp;
    }
    this.XMLHttpFactories = [
    function() {return new XMLHttpRequest()},
    function() {return new ActiveXObject("Msxml2.XMLHTTP")},
    function() {return new ActiveXObject("Msxml3.XMLHTTP")},
    function() {return new ActiveXObject("Microsoft.XMLHTTP")} 
    ];
}

function display_result(req, obj_id){    
    if(obj_id=="entry_list")
        document.getElementById(obj_id).innerHTML = '<div>' + req.responseText + '</div> <div style="clear: both;"></div>' + document.getElementById(obj_id).innerHTML; 
    else
        document.getElementById(obj_id).innerHTML = req.responseText;
}
