function ajaxObj(){
	try	{
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
		return xmlHttp;
	}
	catch (e){
		// Internet Explorer
		try{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
			return xmlHttp;
		}
		catch (e){
			try{
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
				return xmlHttp;
			}
			catch (e){
				alert("Your browser does not support AJAX!");
				return false;
			}
		}
	}
}

function ajaxPost(ajaxObject,location,params,async){
	
	if ( typeof(async) == "undefined" || async==null ) {
		var async = true; 
	}
		
	ajaxObject.open("POST",location,async);
	ajaxObject.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajaxObject.setRequestHeader("Content-length", params.length);
	ajaxObject.setRequestHeader("Connection", "close");
	ajaxObject.send(params);
}

function getRequestFields(addEdit,fields){
	fieldsArray = fields.split(",");
	
	if(addEdit == 0){
		var requestParams = "function=addRecord";
	}
	else if(addEdit ==1){
		var requestParams = "function=updateRecord";
	}
	
	/*we wrap single quotes around it on the php side so escape them here or it will mess up our eval*/
	for(i=0;i<fieldsArray.length;i++){
		<!--ckEditor text fields-->
		if(ckEditArray[fieldsArray[i]]){
			requestParams = requestParams + "&" + fieldsArray[i] + "=" +  ckFieldEscape(fieldsArray[i]);
		}
		/*radio buttons*/
		else if(radioFieldArray[fieldsArray[i]]){
			rObj = document.getElementsByName(radioFieldArray[fieldsArray[i]]);
			requestParams = requestParams + "&" + fieldsArray[i] + "=" +  getCheckedValue(rObj);
		}
		/*time field.... must convert 12hr to 24hr for mysql*/
		else if(timeFieldArray[fieldsArray[i]]){
			timeVal = document.getElementById(timeFieldArray[fieldsArray[i]]).value;
			requestParams = requestParams + "&" + fieldsArray[i] + "=" + timeConvertMysql(timeVal);
		}
		/*time field.... epoch is in a different format than mysql, must convert*/
		else if(dateFieldArray[fieldsArray[i]]){
			dateVal = document.getElementById(dateFieldArray[fieldsArray[i]]).value;
			requestParams = requestParams + "&" + fieldsArray[i] + "=" + epochToMySQL(dateVal);
		}
		else{
			requestParams = requestParams + "&" + fieldsArray[i] + "=" +  fieldEscape(document.getElementById(fieldsArray[i]).value);
		}
		
	}
	
	if(addEdit == 1){
		
		requestParams = requestParams + "&priKeyID=" + fieldEscape(document.getElementById("priKeyID").value);
	}
	
	return requestParams;
}

function fieldEscape(fieldVal){
	return escape(fieldVal.replace(/\'/g,"\\'"));
}

function ckFieldEscape(fieldVal){
	var ckFieldData = eval('CKEDITOR.instances.' + fieldVal + '.getData();');
	return escape(ckFieldData.replace(/\'/g,"\\'"));
}