/*
 * Create a java <script> element dynamically and run what is passed in as argument.
 */
function addElement( jspage ) 
{
    // Create new JS element
    var jsel = document.createElement('SCRIPT');
    jsel.type = 'text/javascript';
    jsel.src = jspage;

    // Append JS element (therefore executing the 'AJAX' call)
    document.body.appendChild (jsel);
}

function getXmlHttpRequestObject()
{
    if( window.XMLHttpRequest )
    {
        return new XMLHttpRequest();
    }
    else if(window.ActiveXObject)
    {
        return new ActiveXObject("Microsoft.XMLHTTP");
    }

    return null;
}

var xmlhttp = getXmlHttpRequestObject();
var doEval = 0;

function doReq( url, e )
{
   if( xmlhttp.readyState == 4 || xmlhttp.readyState == 0 )
   {
       if( e == 1 )
       {
           doEval = 1;
       }

       xmlhttp.open("GET", url, true);
       xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
       xmlhttp.onreadystatechange = handleResp;

       xmlhttp.send(null);
   }
}

function handleResp()
{
   if( xmlhttp.readyState == 4 )
   {
       if( doEval == 1 )
       {
           var url = xmlhttp.responseText;
           var idx = url.indexOf('document.location');
           var loc = url.substr( idx );
           eval(loc);
       }
   }
}
