/*
Author: Dirk Bertels
Date: 19 September 2008
Javascript file that handles Ajax implementation 
for computing/ajax.php web page
*/

/* GLOBAL VARIABLES */
// request object
var request;
//  id of the Ajax implementation example
var session;
// url of serverfile that Ajax needs to call
var url;
//  id of the location of the calling web site which displays the response from the server
var dest;

/* REQUEST CREATION  */
function ajaxFunction(ses)
{
	session = ses;
    try
    {
        // Opera 8.0+, Firefox, Safari
        request = new XMLHttpRequest();
    } 
    catch (e)
    {
        // Internet Explorer Browsers
        try
        {
            request = new ActiveXObject('Msxml2.XMLHTTP');
        } 
        catch (e) 
        {
            try
            {
                request = new ActiveXObject('Microsoft.XMLHTTP');
            } 
            catch (e)
            {
                // Something went wrong
                alert('Your browser broke!');
                return false;
            }
        }
    }
  
    // Callback function that handles data returned by the server
    request.onreadystatechange = function()
    {
        if(request.readyState == 4)
        {
            handleResponse(session);
			//document.myForm.time.value = ajaxRequest.responseText;
        }
    }
	
	
	switch(session)
	{
		case 1:			
			url = './ajax_files/serverTime.php';
			break;
		case 2:
			url = './ajax_files/serverVars.php';
			break;
		case 3:
			//url = './ajax_files/panels_ajax.php?panel_id=01';
			break;
		default:
			break;
	}
	
	//SEND REQUEST TO THE SERVER 
	request.open("GET", url, true);		
	request.send(null); 
}

/* HANDLE THE RESPONSE FROM THE SERVER */
function handleResponse(ses)
{
	if(ses == 1)
	{
		//url = './ajax_files/serverTime.php';
		document.myForm.time.value = request.responseText;
	}
	if(ses == 2)
	{
		
		document.ex2Form.info.value = request.responseText;
	}
	if(ses == 3)
	{
		var contentDiv = document.getElementById(dest);
		
		if(request.status == 200)
		{
			contentDiv.innerHTML = request.responseText;
		}
		else
		{
			contentDiv.innerHTML = "Error: Status " + request.status;
		}
	}	
}

/* ENTRY FUNCTION FOR EXAMPLE 3*/
function loadHTML(thisUrl, destination)
{
	dest = destination;
	url = thisUrl;
	ajaxFunction(3);
}


