function confirmLink(url, message)
{   return confirm(message);
}

function openNewWindow(url)
{   window.open(url.href);
    return false;
}

function getAjax(url, f, arg)
{   var xmlHttp;
    try { xmlHttp=new XMLHttpRequest(); }
    catch (e)
    {   try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); }
        catch (e)
        {   try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); }
            catch (e)
            {   alert("Your browser does not support AJAX!"); return false; }
    }   }
    xmlHttp.onreadystatechange=function()
        {   if(xmlHttp.readyState==4) {f(xmlHttp.responseText, arg)}
        }
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
    return xmlHttp;
}

function getXMLParser(text)
{   var xmlDoc, parser;
    try
    {   xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
    xmlDoc.async="false";
    xmlDoc.loadXML(text);
    }
    catch(e)
    {   try
    {   parser=new DOMParser();
    xmlDoc=parser.parseFromString(text,"text/xml");
    }
    catch(e)
    {   alert(e.message);
    return false;
    }   }
    return xmlDoc
}

