function getHttpObject()
{
    var xmlhttp = false;   // xmlHTTP objekat

    if (window.XMLHttpRequest) { // Mozilla, Safari, ...
       xmlhttp = new XMLHttpRequest();
    }
    else if (window.ActiveXObject) { // IE
       xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }   
    return xmlhttp;
}


function update()
{
    if ((xmlhttp.readyState == 4) && (xmlhttp.status == 200)) {
        var xmldoc = xmlhttp.responseXML;

        if ((xmldoc != null) && (xmldoc.getElementsByTagName('element').item(0))) {
            var elements = xmldoc.getElementsByTagName('element');
            for (i=0; i < elements.length; i++) {
                var node = elements.item(i);
                var targetElement = document.getElementById(node.attributes['id'].value);
                if ((node.attributes['update']) && (node.attributes['update'].value == "value"))
                {
                   targetElement.value = node.firstChild.data;
                }
                else
                {
                   targetElement.innerHTML = node.firstChild.data;
                   if ((targetElement.id == 'toolbar') || (targetElement.id == 'additional_buttons'))
                   {
                        enumerateButtons();
                   }
                }
            }   
        }
    }
}


function httpGet(url)
{
    xmlhttp = getHttpObject();
    if (xmlhttp) {
        xmlhttp.onreadystatechange = update;
        xmlhttp.open("GET", url, true);
        xmlhttp.send(null);
    }
}   

function httpPost(url, params)
{
    xmlhttp = getHttpObject();
    if (xmlhttp) {
      xmlhttp.open("POST", url, true);
      xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
      xmlhttp.onreadystatechange = update;
      xmlhttp.send(params);
    }
}   

var xmlhttp;