var xmlHttp;


function getEntity(theKey,theURL,theElement) {

	xmlHttp=getXmlHttpObject()

	if (xmlHttp==null) {
		  alert ("Your browser does not support AJAX!");
	return;
	} 

	if (document.getElementById('loadingSpan')) {
		document.getElementById('loadingSpan').className='loading';
	}

	var url=theURL;
	url=url+"?key="+theKey;

	xmlHttp.onreadystatechange=function() {
		if (xmlHttp.readyState==4) {
			myElement=document.getElementById(theElement)
			myElement.innerHTML = xmlHttp.responseText;
			if (document.getElementById('loadingSpan')) {
				document.getElementById('loadingSpan').className='hidden';
			}
		}
	}
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	

} 



function getData(strSQL,theTable,theElement,returnAs,id,theKey) {
	if (strSQL.length==0) { 
  		return 'No data found';
  	}

	xmlHttp=getXmlHttpObject()

	if (xmlHttp==null) {
		  alert ("Your browser does not support AJAX!");
	return;
	} 

	var url="getdata.asp";
	url=url+"?sql="+strSQL;
	url=url+"&table="+theTable;
	url=url+"&returnas="+returnAs;
	url=url+"&id="+id;
	url=url+"&key="+theKey;

	xmlHttp.onreadystatechange=function() {
		if (xmlHttp.readyState==4) {
			myElement=document.getElementById(theElement)
			myElement.innerHTML = xmlHttp.responseText;
		}
	}
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);

} 


function getXmlHttpObject() {
	var xmlHttp=null;
	try {
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
  	}
	catch (e)  {
		// Internet Explorer
		try {
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    			}
  		catch (e) {
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    		}
  	}
	
	return xmlHttp;

}

function serializeForm(theForm) { 

	var els = theForm.elements; 
	var len = els.length; 
	var queryString = ""; 
	
	this.addField = function(name,value) { 
		if (queryString.length>0) { 
			queryString += "&"; 
		} 
		queryString += encodeURIComponent(name) + "=" + encodeURIComponent(value); 
	}; 

	for (var i=0; i<len; i++) { 
		var el = els[i]; 
		if (!el.disabled) { 
			switch(el.type) { 
				case 'text': 
				case 'password': 
				case 'hidden': 
				case 'textarea': 
					this.addField(el.name,el.value); 
				break; 
				case 'select-one': 
					if (el.selectedIndex>=0) { 
						this.addField(el.name,el.options[el.selectedIndex].value); 
					} 
				break; 
				case 'select-multiple': 
					for (var j=0; j<el.options.length; j++) { 
						if (el.options[j].selected) { 
							this.addField(el.name,el.options[j].value); 
						} 
					} 
				break; 
				case 'checkbox': 
				case 'radio': 
					if (el.checked) { 
						this.addField(el.name,el.value); 
					} 
				break; 
			} 
		} 
	}
 
	return queryString; 

}
