function ajaxrequest(fileurl, elementid, query) {
	try {
 		var xmlhttp = new XMLHttpRequest();
	}
	catch (error)	{
		try{
   			var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
 		}
 		catch (error) {
		   return false;
 		}
	}

	xmlhttp.open('POST', fileurl, true);
	xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlhttp.send(query);

	xmlhttp.onreadystatechange = function() {
		if (xmlhttp.readyState == 4) {
			 document.getElementById(elementid).innerHTML=xmlhttp.responseText;
		}
	}
}


//doesn't work if you put inputs inside of class objects
//overall you should use br in the forms and nothing else
function ajaxFormSubmit(handlerURL, obj, target_id) {
	//document.getElementById(target_id).innerHTML='Loading... Please wait!';
  var getstr = "";

  for (i=0; i<obj.childNodes.length; i++) {
	//alert(" name = " + obj.childNodes[i].name + "  value = " + obj.childNodes[i].value);
	 if (obj.childNodes[i].tagName == "INPUT") {
		if (obj.childNodes[i].type == "text") {
		   getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
		}
		else if (obj.childNodes[i].type == "checkbox") {
		   if (obj.childNodes[i].checked) {
			  getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
		   } else {
			  getstr += obj.childNodes[i].name + "=&";
		   }
		}
		else if (obj.childNodes[i].type == "hidden") {
			 getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
		}
		else if (obj.childNodes[i].type == "select") {
		  getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
		}
		else  if (obj.childNodes[i].type == "radio") {
		   if (obj.childNodes[i].checked) {
			  getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
		   }
		}else if (obj.childNodes[i].type == "password") {
			getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
		}
	 }
	 
	if (obj.childNodes[i].tagName == "SELECT") {
		var sel = obj.childNodes[i];
		getstr += sel.name + "=" + sel.options[sel.selectedIndex].value + "&";
	 }
	 
	if (obj.childNodes[i].type == "textarea") {
               getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
            }
  }
   ajaxrequest(handlerURL, target_id, getstr);
}

function ajaxAdminEdit(handlerURL, obj, base, target_id) {
  //document.getElementById(target_id).innerHTML='Loading... Please wait!';
  var getstr = base;
  var field = document.getElementById(obj).value;

  getstr += "&new=" + field; 
  
   ajaxrequest(handlerURL, target_id, getstr);
}
/*
	This is the JavaScript file for the AJAX Suggest Tutorial

	You may use this code in your own projects as long as this 
	copyright is left	in place.  All code is provided AS-IS.
	This code is distributed in the hope that it will be useful,
 	but WITHOUT ANY WARRANTY; without even the implied warranty of
 	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
	
	For the rest of the code visit http://www.DynamicAJAX.com
	
	Copyright 2006 Ryan Smith / 345 Technical / 345 Group.	

*/
//Gets the browser specific XmlHttpRequest Object
function getXmlHttpRequestObject() {
	try {
 		return new XMLHttpRequest();
	}
	catch (error)	{
 		try{
   			return new ActiveXObject("Microsoft.XMLHTTP");
 		}
 		catch (error) {
		   return false;
 		}
	}
}
function toggleDiv(div_id){
			
			if(document.getElementById(div_id).style.display=='none'){
				document.getElementById(div_id).style.display='block';
			} else {
				document.getElementById(div_id).style.display='none';
			}
}
  

function textLimit(field, maxlen) {
if (field.value.length > maxlen + 1)
//alert('your input has been truncated!');
if (field.value.length > maxlen)
field.value = field.value.substring(0, maxlen);
}