/**
 *
 * @access public
 * @return void
 **/
function switchTab(tabTo){
	var tabContainer=document.getElementById('tabContainer');
	var currentTab=document.getElementById('currentTab');
	var c = tabContainer.childNodes;
	//var c = c1.getElementsByTagName['DIV'];
    for (i=0; i<c.length; i++) {
		if (c[i].tagName == 'DIV') {
			c[i].className="tabInactive";
			if (c[i].id==tabTo) {
				c[i].className="tabActive";
			}
		}
	}
	currentTab.value=tabTo;
	filter(currentTab);
}
/**
 *
 * @access public
 * @return void
 **/
function filterForm(){
	var e=document.getElementById('currentTab');
	filter(e);
}
/**
 *
 * @access public
 * @return void
 **/
function DA(e,ev){
	alert(e.name);
	JACS.show(e,ev);
}
/**
 *
 * @access public
 * @return void
 **/
function loadurl(dest) {
	try {
		// Moz supports XMLHttpRequest. IE uses ActiveX.
		// browser detction is bad. object detection works for any browser
		xmlhttp = window.XMLHttpRequest?new XMLHttpRequest(): new ActiveXObject("Microsoft.XMLHTTP");
	}
	catch (e) {
		// browser does not support ajax. handle however you want
	}
	// the xmlhttp object triggers an event everytime the status changes
	// triggered() function handles the events
	xmlhttp.onreadystatechange = triggered;
	// open takes in the HTTP method and url.
	xmlhttp.open("GET", dest);
	// send the request. if this is a POST request we would have
	// sent post variables: send("name=aleem&gender=male)
	// Moz is fine with just send(); but
	// IE expects a value here, hence we do send(null);
	xmlhttp.send(null);
	//alert(dest);
}
/**
 *
 * @access public
 * @return void
 **/
function loadurl1(dest){
	try {
		// Moz supports XMLHttpRequest. IE uses ActiveX.
		// browser detction is bad. object detection works for any browser
		xmlhttp1 = window.XMLHttpRequest?new XMLHttpRequest(): new ActiveXObject("Microsoft.XMLHTTP");
	}
	catch (e) {
		// browser does not support ajax. handle however you want
	}
	// the xmlhttp object triggers an event everytime the status changes
	// triggered() function handles the events
	xmlhttp1.onreadystatechange = triggered1;
	// open takes in the HTTP method and url.
	xmlhttp1.open("GET", dest);
	// send the request. if this is a POST request we would have
	// sent post variables: send("name=aleem&gender=male)
	// Moz is fine with just send(); but
	// IE expects a value here, hence we do send(null);
	xmlhttp1.send(null);
	//alert(dest);

}
/**
 *
 * @access public
 * @return void
 **/
function loadpost(dest,act) {

	try {
		// Moz supports XMLHttpRequest. IE uses ActiveX.
		// browser detction is bad. object detection works for any browser
		xmlhttp = window.XMLHttpRequest?new XMLHttpRequest(): new ActiveXObject("Microsoft.XMLHTTP");
	}
	catch (e) {
		// browser does not support ajax. handle however you want
		alert("Security??????????????");
	}
	//alert(dest+" act= "+act);
	// open takes in the HTTP method and url.
	xmlhttp.open("POST", dest, true);
	// the xmlhttp object triggers an event everytime the status changes
	// triggered() function handles the events
	xmlhttp.onreadystatechange = triggered;
	// send the request. if this is a POST request we would have
	// sent post variables: send("name=aleem&gender=male)
	// Moz is fine with just send(); but
	// IE expects a value here, hence we do send(null);
	xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	//xmlhttp.setRequestHeader('Content-Type', 'multipart/form-data');
	xmlhttp.send(act);

}

/**
 *
 * @access public
 * @return void
 **/
function triggered(){
	// if the readyState code is 4 (Completed)
	// and http status is 200 (OK) we go ahead and get the responseText
	// other readyState codes:
	// 0=Uninitialised 1=Loading 2=Loaded 3=Interactive
	turnStampaOn((xmlhttp.readyState == 4)?false:true);
	if ((xmlhttp.readyState == 4) && (xmlhttp.status == 200)) {
		// xmlhttp.responseText object contains the response.
		var OutputDiv = xmlhttp.getResponseHeader("OutputDiv");
		if (OutputDiv>"") {
			document.getElementById(OutputDiv).innerHTML = xmlhttp.responseText;
		} else {
			var OutputDiv = 'content';
			document.getElementById(OutputDiv).innerHTML = xmlhttp.responseText;
		}
		var Elem = xmlhttp.getResponseHeader("Element0");
		if (Elem>"") {
			var me=document.getElementById(Elem);
			filter1(me);
			var Elem1 = xmlhttp.getResponseHeader("Element1");
			if (Elem1>"") {
				var me1=document.getElementById(Elem1);
				filter(me1);
				var Elem2 = xmlhttp.getResponseHeader("Element2");
				if (Elem2>"") {
					var me2=document.getElementById(Elem2);
					filter1(me2);
				}
			}
		}
		var Elem3 = xmlhttp.getResponseHeader("Element3");
		if (Elem3>"") {
			var me=document.getElementById(Elem3);
			filter3(me);
		}
	}
}
/**
 *
 * @access public
 * @return void
 **/
function triggered1(){
	// if the readyState code is 4 (Completed)
	// and http status is 200 (OK) we go ahead and get the responseText
	// other readyState codes:
	// 0=Uninitialised 1=Loading 2=Loaded 3=Interactive
	var stampa=document.getElementById("stampa");
	if (stampa!=null) {
		stampa.style.visibility = (xmlhttp1.readyState == 4)?"hidden":"";
	}
	if ((xmlhttp1.readyState == 4) && (xmlhttp1.status == 200)) {
		// xmlhttp.responseText object contains the response.
		var OutputDiv = xmlhttp1.getResponseHeader("OutputDiv");
		if (OutputDiv>"") {
			document.getElementById(OutputDiv).innerHTML = xmlhttp1.responseText;
		} else {
			var OutputDiv = 'content';
			alert('No output div');
			document.getElementById(OutputDiv).innerHTML = xmlhttp1.responseText;
		}
		var Elem = xmlhttp1.getResponseHeader("Element0");
		if (Elem>"") {
			var me=document.getElementById(Elem);
			filter(me);
			var Elem1 = xmlhttp1.getResponseHeader("Element1");
			if (Elem1>"") {
				var me1=document.getElementById(Elem1);
				filter1(me1);
				var Elem2 = xmlhttp1.getResponseHeader("Element2");
				if (Elem2>"") {
					var me2=document.getElementById(Elem2);
					filter(me2);
				}


			}
		}
	}

}
/**
 *
 * @access public
 * @return void
 **/
function submitLogin(){
	frm=document.getElementById('loginForm');
	var dest=frm.action+"?m=1";
	//alert (dest+ 'Hello');
	for(var i = 0; i < frm.elements.length; i++) {
		e=frm.elements[i];
		dest+='&'+e.name+'='+e.value
	}
	//dest=frm.action +'?OutputDiv='+frm.OutputDiv.value+'&destination='+frm.destination.value+'&currentTab='+frm.currentTab.value+'&username='+frm.username.value+'&password='+frm.password.value+'&Login='+frm.Loginy.value;
	//alert (dest);
	loadurl(dest);
	return false;
}
/**
 *
 * @access public
 * @return void
 **/
function setAction(b){
	var Uaction=document.getElementById('Uaction');
	Uaction.value=b.value;
	frm=Uaction.form;
	//use AjaxForm to reload page
	var dest=document.getElementById('currentTab').form.action;
	var act="?m=1";
	for(var i = 0; i < frm.elements.length; i++) {
		e=frm.elements[i];
		if (e.name=='OutputDiv') {
			e.value='output';
		} else {
			if (e.name=='NewsText') {
				//alert(escape(FCKeditorAPI.GetInstance('newsEditor').GetHTML()));
				e.value=escape(FCKeditorAPI.GetInstance('newsEditor').GetHTML());
			}
		}
		if (e.name!='newsEditor') {
			act+=getElementString(e);
		}
	}
	//alert(dest + ' : '+act);
	loadpost(dest,act);
}
/**
 *
 * @access public
 * @return void
 **/
function submitNews(){
	return false;
}
/**
 *
 * @access public
 * @return void
 **/
function filter1(e){
	frm=e.form;
	var dest=frm.action+"?m=1";
	for(var i = 0; i < frm.elements.length; i++) {
		dest+=getElementString(frm.elements[i]);
	}
	loadurl1(dest);
}
/**
 *
 * @access public
 * @return void
 **/
function filter2(e){
	frm=e.form;
	var dest=frm.action+"?m=2";
	for(var i = 0; i < frm.elements.length; i++) {
		dest+=getElementString(frm.elements[i]);
	}
	alert(dest);
	loadurl1(dest);

}
/**
 *
 * @access public
 * @return void
 **/
function filter(e){
	frm=e.form;
	var dest=frm.action+"?m=0";
	for(var i = 0; i < frm.elements.length; i++) {
		dest+=getElementString(frm.elements[i]);
	}
	//alert(dest);
	loadurl(dest);

}
/**
 *
 * @access public
 * @return void
 **/
function getElementString(e){
	var getString='';
	if (e.tagName.toLowerCase()=="input") {
		switch (e.type) {
			case "checkbox":
				if (e.checked) {
					getString='&'+e.name+'='+e.value;
				}
				break;
			case "radio":
				if (e.checked) {
					getString='&'+e.name+'='+e.value;
				}
				break;
			case "text":
				getString='&'+e.name+'='+e.value;
				break;
			case "hidden":
				getString='&'+e.name+'='+e.value;
				break;
			default:
		}
	} else {
		if (e.tagName.toLowerCase()=="select") {
			for (var j=0; j<e.options.length; j++) {
				if (e.options[j].selected) {
					getString='&'+e.name+'='+e.options[j].value;
				}
			}
		}
	}
	return getString;
}
/**
 *
 * @access public
 * @return void
 **/
function filterReport(i){
	e=document.getElementById('j')
	e.value=i;
	filter1(e);
}
/**
 *
 * @access public
 * @return void
 **/
function filterEvents(i){
	e=document.getElementById('j')
	var x = Math.max(e.selectedIndex - i,0)
	e.selectedIndex=x;
	filter1(e);
}
/**
 *
 * @access public
 * @return void
 **/
function filterEvent(i){
	e=document.getElementById('past');
	if (i==1) {
		e.value='Past';
	} else {
		e.value='Future';
	}
	filterForm();
}
/**
 *
 * @access public
 * @return void
 **/
function turnStampaOn(on){
	var stampa=document.getElementById("stampa");
	if (stampa!=null) {
		if (on==true) {
			stampa.style.visibility = "";
		} else {
			stampa.style.visibility = "hidden";
		}
	}
}
function submis(PB_id) {
	var me=document.getElementById("PB");
	var frm=me.form;
	me.value=PB_id;
	frm.action="/edit-pb";
	frm.submit();
}
function filter3(elem) {
	var length="";
	var stroke="";
	var selHTML="";
	var frm=elem.form;
	for(var i = 0; i < frm.elements.length; i++) {
		e=frm.elements[i];
		if (e.name=="poollength") {
			if (e.checked) {
				length=e.value;
			}
		}
		if (e.name=="stroke") {
			if (e.checked) {
				stroke=e.value;
			}
		}
	}
	sels=document.getElementById("sel");
	disto=document.getElementById("disto");
	dist=disto.value;
	selHTML='<label>Distance</label><select id="distance" name="distance" onchange="filter1(this)" size="1">'
	if (length=="3") {
		if (stroke=="5") {
			selHTML+=DistanceOption("132m",dist);
			selHTML+=DistanceOption("264m",dist);
		} else {
			selHTML+=DistanceOption(" 33m",dist);
			selHTML+=DistanceOption(" 66m",dist);
			selHTML+=DistanceOption(" 99m",dist);
			selHTML+=DistanceOption("132m",dist);
		}
	} else {
		if (length=="2") {
			if (stroke=="5") {
				selHTML+=DistanceOption("200m",dist);
				selHTML+=DistanceOption("400m",dist);
			} else {
				selHTML+=DistanceOption(" 50m",dist);
				selHTML+=DistanceOption("100m",dist);
				selHTML+=DistanceOption("200m",dist);
				selHTML+=DistanceOption("400m",dist);
				selHTML+=DistanceOption("800m",dist);
			}
		} else {
			if (stroke=="5") {
				selHTML+=DistanceOption("100m",dist);
				selHTML+=DistanceOption("200m",dist);
				selHTML+=DistanceOption("400m",dist);
			} else {
				selHTML+=DistanceOption(" 25m",dist);
				selHTML+=DistanceOption(" 50m",dist);
				selHTML+=DistanceOption("100m",dist);
				selHTML+=DistanceOption("200m",dist);
				selHTML+=DistanceOption("400m",dist);
				selHTML+=DistanceOption("800m",dist);
			}
		}
	}
	selHTML+='</select>';
	sels.innerHTML=selHTML;
	filter1(elem);
}
function DistanceOption(optDist,actDist) {

	var opthtml="";

	if (optDist==actDist) {

		opthtml='<option value="'+optDist+'" selected=true>'+optDist+'</option>'

	} else {

		opthtml='<option value="'+optDist+'">'+optDist+'</option>'

	}

	return opthtml;

}
function popuponclick(x,y,id) {
	attr="width=420,height=320,screenX="+x+",screenY="+y+",left="+x+",location=0,status=0,dependent=1,menubar=0";
	my_window = window.open("/modules/TimeInput.php?id="+id,"Hi",attr);
	if (window.focus) {
		my_window.focus()
	}
	my_window.moveTo(x,y)
}

