function readystate(xhttp, fun) {
    if(xhttp.readyState == 4) {
        if(xhttp.status == 200) {
            fun(xhttp);
        }
    }
}

function chain() {
    for(var index = 0; index < arguments.length; ++index) {
        try {
            var result = arguments[index]();
            return result;
        } catch(ignore) {}
    }
}

function make_worker() {
    var result = chain(
      function() {return new ActiveXObject('Msxml2.XMLHTTP');},
      function() {return new ActiveXObject('Microsoft.XMLHTTP');},
      function() {return new XMLHttpRequest();}
    );
    return result;
}


function load_data(url, fun) {
    var xhttp = make_worker();
    var ready = readystate;
    xhttp.open('GET', url, true);
    xhttp.setRequestHeader('Connection', 'close');
    xhttp.onreadystatechange = function() { ready(xhttp, fun); };
    xhttp.send(null);
}

var msg=0;

function msgDelete(msgid) {

    if(msg==0)
    {
        msg=msgid;
        var url='?page=removemessage&js&msgid='+msgid;
        function callback(xhttp) {
            if(xhttp.responseText)
            {           
               var string=xhttp.responseText;
               
               //Poisto onnistui?
               if(string=='ok')
               {
                  msgFadeRow(msg, 100);
                  /*
                  $("#msgrow_"+msgid).fadeOut('slow', function(){
                    document.getElementById("msgrow_"+msgid).deleteCell(0);  
                  });
                  */
               }
               //Jos ei niin hälyviesti
               else
               {
                   msg=0;
                   alert(string);
               }
    
            }
        }
    
        load_data(url, callback);
    }
}



function msgFadeRow(msgid, alpha)
{

    if(alpha>0)
    {
        var row=document.getElementById("msgrow_"+msgid);        
        row.cells[0].style.filter = 'alpha(opacity=' + alpha + ')'; //IE
        row.style.filter = 'alpha(opacity=' + alpha/100 + ')'; //CSS 3
        row.style.opacity=alpha/100; //Mozilla        
        setTimeout('msgFadeRow('+msgid+', '+(alpha-20)+')', 200);
        
    }
    else   
    { 
        document.getElementById("msgrow_"+msgid).deleteCell(0);    
        msg=0;
    }
    
}
