var xmlreqs = new Array();
function CXMLReq(type, req)
{
	this.type = type;
	this.req = req;
}

function getPage(qstring,objControlled)
{
    var rndNum = parseInt(Math.random()*999999);
	if(thissite == 'http://209.213.104.87')
	{
		thissite = 'http://www.rushgears.com';
	}
	url = thissite + "/"+ qstring + "&rand=" + rndNum;
	var req=false;

	if (window.XMLHttpRequest)
	{
		// Mozilla, etc.
		req=new XMLHttpRequest();
		req.open("GET",url,true);
		req.onreadystatechange = function() {getReturnFunctions(objControlled,req);};
		req.send(null);
	}
	else if (window.ActiveXObject)
	{
		// IE
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req)
		{
			req.onreadystatechange = function() {getReturnFunctions(objControlled,req);};
			req.open("GET",url,true);
			req.send();
		}
	}
}

function getReturnFunctions(objFunc,req)
{
	switch(objFunc)
	{
	case "loginPageQuick":
		xmlResults.loginPageQuick(req);
		break;
	case "loginPageFull":
		xmlResults.loginPageFull(req);
		break;
	case "loginPageEmail":
		xmlResults.loginPageEmail(req);
		break;
	case "partLookupPage":
		xmlResults.partLookupCheck(req);
		break;
	case "partLookupStockCheck":
		xmlResults.partLookupStockCheck(req);
		break;
	case "phpUpload":
		xmlResults.phpUpload(req);
		break;
	case "mysqlUpdateCheck":
		xmlResults.mysqlUpdateCheck(req);
		break;
	case "mysqlUpdate":
		xmlResults.mysqlUpdate(req);
		break;
	case "partSearchMenus":
		xmlResults.partSearchMenus(req);
		break;
	case "updateBevels":
		xmlResults.updateBevels(req);
		break;
	case "partSearchHP":
		xmlResults.showHP(req);
		break;
	case "partSearchToothRange":
		xmlResults.showToothRange(req);
		break;
	case "getLink":
		 xmlResults.getLink(req);
		break;
	case "getDownload":
		xmlResults.getDownload(req);
		break;
	case "soapLogin":
		req.setRequestHeader("Content-Type", "text/xml-soap")(req);
		xmlResults.soapLogin;
		break;
	case "searchSite":
		SSxmlResults.searchSite(req);
		break;
	case "processEmail":
		xmlResults.processEmail(req);
		break;
	case "processQuote":
		xmlResults.processQuote(req);
		break;
	case "processRFQs":
		xmlResults.processRFQs(req);
		break;
	case "processSearchedRFQs":
		xmlResults.processSearchedRFQs(req);
		break;
	case "checkUploadProgress":
		xmlResults.checkUploadProgress(req);
		break;
	case "getCustomGear":
		xmlResults.getCustomGear(req);
		break;
	case "fillInPartnos":
	    xmlResults.fillInPartnos(req);
		break;
	case "getBacklash":
	    xmlResults.getBacklash(req);
		break;
	case "fillCustomParts":
	    xmlResults.fillCustomParts(req);
	    break;
	case "showUserParts":
	    xmlResults.showUserParts(req);
		break;
	case "bugReportOK":
	    xmlResults.bugReportOK(req);
		break;	
	case "checkRFQemail":
	    xmlResults.checkRFQemail(req);
		break;	
	//default: xmlResults;
	}
}

function postPage(url,data)
{
	var req=false;
	if (window.XMLHttpRequest)
	{
		// Mozilla etc.
		req=new XMLHttpRequest();
		req.onreadystatechange=xmlhttpChange;
		req.open("POST",url,true);
		req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		req.send(data);
	}
	else if (window.ActiveXObject)
	{
		// IE req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req)
		{
			req.onreadystatechange=xmlhttpChange;
			req.open("POST",url,true);
			req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			req.send(data);
		}
	}
	var xmlreq = new CXMLReq('', req);
	xmlreqs.push(xmlreq);
}

/*function xmlhttpChange()
{
	if (typeof(window['xmlreqs']) == "undefined") return;
	for (var i=0; i < xmlreqs.length; i++)
	{
		if (xmlreqs[i].req.readyState == 4)
		{
			if (xmlreqs[i].req.status == 200 || xmlreqs[i].req.status == 304)
			{
				resultsStr = xmlreqs[i].req.responseText;
				resultsArray = new Array();
				resultsArray = resultsStr.split(',');

				fromPage = resultsArray[0];
				if(fromPage == 'mysqlUpdateCheck')
				{
					if(resultsArray[1] != 'false')
					{
						getMoreCounts(resultsArray[1],resultsArray[2],resultsArray[3])
					}
				}
				// 200 OK
				xmlreqs.splice(i,1);
				i--;
			}
			else
			{
				// error
				xmlreqs.splice(i,1);
				i--;
			}
		}
	}
}*/