function toggle_visibility(id) {

	var div = document.getElementById(id)
	if (div.style.display=="block") {
		div.style.display="none";
	} else {
		div.style.display="block";
	}

}



function openpanel(id) {

	for (var n=1; n<5; n++) {
		var btn = document.getElementById("btn"+n);
		var panel = document.getElementById("panel"+n);
		if (id==n) {
			btn.className = "on";
			panel.className = "panel-on";
			
			// select first element for this panel's form (if it has one...)
			if (document.getElementById("form"+n)) {
				document.getElementById("form"+n).elements[0].focus();			
			}
		} else {
			btn.className = "off";
			panel.className = "panel-off";	
		}	
	}
	
	document.getElementById("ajax-submit").className = "panel-off";
	document.getElementById("ajax-done").className = "panel-off";
	document.getElementById("ajax-error").className = "panel-off";
	
}


var xmlHttp;

function post_form(id) {

	var url="response.php?";

	theform = document.getElementById("form" + id);
	for (i = 0; i < theform.elements.length; i++) {
		url += encodeURI(theform.elements[i].name) + "=" + encodeURI(theform.elements[i].value) + "&";
	}
	
	xmlHttp = GetXmlHttpObject();
	if (xmlHttp==null) {
		return;
	} 

	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET", url, true);
	xmlHttp.send(null);

	document.getElementById("panel" + id).className = "panel-off";
	document.getElementById("ajax-submit").className = "panel-on";

}


function stateChanged() { 
	
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") { 

		document.getElementById("ajax-submit").className = "panel-off";

		if (xmlHttp.responseText == "ok") {
			document.getElementById("ajax-done").className = "panel-on";			
		} else {
			document.getElementById("ajax-error").className = "panel-on";			
		}

	} 
} 


function GetXmlHttpObject() { 

	var objXMLHttp=null;
	if (window.XMLHttpRequest)	{
		objXMLHttp=new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	return objXMLHttp;

}
