var req;
var servicesList;
var contractorList;
		
function testInside(){
	alert('in testInside()');
}
			
function newXMLHttpRequest() {			
	var xmlreq = false;			
 	// Create XMLHttpRequest object in non-Microsoft browsers
  	if (window.XMLHttpRequest) {
    	xmlreq = new XMLHttpRequest();
			
	} else if (window.ActiveXObject) {
			
		try {
		    // Try to create XMLHttpRequest in later versions
		    // of Internet Explorer
			
		    xmlreq = new ActiveXObject("Msxml2.XMLHTTP");
			      
		} catch (e1) {
			
		    // Failed to create required ActiveXObject
			      
			try {
		       // Try version supported by older versions
		       // of Internet Explorer
		      
		        xmlreq = new ActiveXObject("Microsoft.XMLHTTP");
			
		    } catch (e2) {
			
		       // Unable to create an XMLHttpRequest by any means
		       xmlreq = false;
		    }
		}
	}
			
	return xmlreq;
}
			
/*
 * Returns a function that waits for the specified XMLHttpRequest
 * to complete, then passes it XML response to the given handler function.
 * req - The XMLHttpRequest whose state is changing
 * responseXmlHandler - Function to pass the XML response to
 */
function getReadyStateHandler(req, responseXmlHandler) {
			
	// Return an anonymous function that listens to the XMLHttpRequest instance
	return function () {
			
    // If the request's status is "complete"
    if (req.readyState == 4) {
			       
    	// Check that we received a successful response from the server
	   if (req.status == 200) {
			
			         // Pass the XML payload of the response to the handler function.
			         responseXmlHandler(req.responseXML);
			
			       } else {
			
			         // An HTTP problem has occurred
			         alert("HTTP error "+req.status+": "+req.statusText);
			       }
			     }
			   }
			 }
			
function talkToAjaxProc(f, p1, p2, callBack) {	
	req = newXMLHttpRequest();
	req.onreadystatechange = getReadyStateHandler(req, callBack);
	//alert("ajax_services.jsp?f=" + f + "&p1=" + p1 + "&p2=" + p2);		 
	req.open("GET", "ajax_services.jsp?f=" + f + "&p1=" + p1 + "&p2=" + p2, true);
	req.send(null);
}
			
function setDiv(elName, content){				
	document.getElementById(elName).innerHTML = content;
}
	
function talkToAjaxProc2(f, p1, p2, p3, callBack) {	
	req = newXMLHttpRequest();
	req.onreadystatechange = getReadyStateHandler(req, callBack);
	//alert("ajax_services.jsp?f=" + f + "&p1=" + p1 + "&p2=" + escape(p2) + "&p3=" + escape(p3));			 
	req.open("GET", "ajax_services.jsp?f=" + f + "&p1=" + p1 + "&p2=" + escape(p2) + "&p3=" + escape(p3), true);
	req.send(null);
	//alert('made it to send');
}




function returnStatus(data){
	var s = req.responseText;
	//alert(s);
	s = "<p style=color:red; align=center>" + s + "</p><br/>";
	setDiv("ajaxresponse", s);
}