// -------------------------------------------------------------
// 
// This handles Ajax requests
// USAGE:
// 
// ajax('http://mysite.com/handler.php', 'GET', [name, name1, name2], [value, value1, value2]);
// var return_text=request.response;
// 
// --------------------------------------------------------------

var response=false;


/* ----- TOGGLE A HIDDEN ELEMENT ----- */
function toggle(id) {
	var element=document.getElementById(id);
	
	if (element.style.display=="none") {element.style.display="";}
	else  {element.style.display="none";}
	}


/* ----- CREATE AND XML HTTP REQUEST----- */
function get_xmlhttp() {
	
	// Try and get an xml HTTP object (good luck)
	var xmlhttp=false;
	
	try {
		// Firefox, Opera 8.0+, Safari
		var xmlhttp=new XMLHttpRequest();
		}
	catch (e) {
		// Internet Explorer (gotta love IE)
		try {var xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");}
		catch (e) {
			try {var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");}
			catch (e) {alert("Your browser does not support AJAX!"); return false;}
			}
		}
	return xmlhttp;
	}


/* ----- SEND XML HTTP REQUEST -----*/
function ajax(url, method, variables, values, id) {
	var xmlhttp=false;
	var response=false;
	
	// Get the XML HTTP request object
	xmlhttp=get_xmlhttp();
	
	if (xmlhttp===false) {
		alert("Can't Create Ajax Request.");
		return false;
		}
	
	// Handle POST Requests
	if (method.toLowerCase() == "post") {
		var params=""; var i=0;
		while (variables[i]) {
			params=params + variables[i] + "=" + values[i] + "&";
			i++;
			}
		
		xmlhttp.open("POST", url, true);
		xmlhttp.onreadystatechange=function() {
			if (xmlhttp.readyState==4) {
				document.getElementById(id).innerHTML=xmlhttp.responseText;
				}
			}
		
		xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		xmlhttp.send(params);
		}
	
	// Handle GET Requests
	else {
		var i=0; url=url+"?";
		while (variables[i]) {
			url=url + variables[i] + "=" + values[i] + "&";
			i++;
			}
		
		// This makes the actual call
		xmlhttp.open("GET", url, true);
		xmlhttp.onreadystatechange=function() {
			if (xmlhttp.readyState==4) {
				document.getElementById(id).innerHTML=xmlhttp.responseText;
				}
			}
		xmlhttp.send(null);
		}
	}




