/****************************************************/
/*  Developed by Jared Powell  						*/
/*  Email jhynespowell@stthomas.edu                 */
/*  Developed on March 12, 2007                     */
/****************************************************/
// A request Object
function createRequest() {
	var request = null;
	
	// branch for native XMLHttpRequest object
    if(window.XMLHttpRequest) {
    	try {
			request = new XMLHttpRequest();
        } catch(e) {
			request = null;
        }
    // branch for IE/Windows ActiveX version
    } else if(window.ActiveXObject) {
       	try {
        	request = new ActiveXObject("Msxml2.XMLHTTP");
      	} catch(e) {
        	try {
          		request = new ActiveXObject("Microsoft.XMLHTTP");
        	} catch(e) {
          		request = null;
        	}
		}
    }
	if(request == null) {
		alert ("Error creating request object.");
	}
	else {
		return request;
	}
}

// Returns a request object
function sendRequest(request, url) {
	request.onreadystatechange = processReqChange;
	request.open("GET", url, true);
	request.send(null);
	
	// Processes the different requests
	function processReqChange() {
		// only if request shows "loaded"
		if (request.readyState == 4) {
			// only if "OK"
			if (request.status == 200) {
				// ...processing statements go here...
				if (request == newsreq) {
					buildList();
				}
				if (request == htmlreq) {
					buildMenu();
				}
			} else {
				// Avoid warnings when the user is in Collage editing
				if (!location.href.contains("webcontent")) 
				{
					alert("There was a problem with the asyncronous request:\n" + request.status);
				}
			}
		}
	}
}