//alert("in kit")
var xmlhttp=false; // ############### The MAGIC object ;)
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
// JScript gives us Conditional compilation, we can cope with old IE versions.
// and security blocked creation of the objects.
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
@end @*/
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
document.magic = true
///////////////////// The object oriented way
function mgcinit(){
	if (!xmlhttp) {
		alert("No magic in this browser, sorry")
		return (0);
	}
	var mgc = Object()
	mgc.mgob = xmlhttp
	mgc.phpurl = document.phpurl
	mgc.kzam = mgczam
	mgc.todo = Array()
	mgc.rdy = true
	document.mgc = mgc
	return mgc
}
function mgczam(rs4, fnc, arg){
	if(rs4 && fnc){
		
			this.rs4 = rs4
			var url = "emlkit.php" ////
			this.mgob.onreadystatechange = svret
			
			//alert("Off to Server\n" + url + "\n" + this.mgob.readyState)
		
				//parseob(this.mgob, true)
				url += "?fnc=" + fnc + "&arg=" + escape(arg)
				this.mgob.open("GET", url,true);
				this.mgob.setRequestHeader('Content-Type', 'text/plain');
				//this.mgob.setRequestHeader('Content-Length', 0);
				this.mgob.send(null)
				//alert("GET:\n" + url + "\n State:  " + this.mgob.readyState)
			
		
	}
	else{
		alert("Cock-up with rs4, fnc or php.url")
	}
}
function svret(){
	//alert("Ready State\n" + "" + "\n" + xmlhttp.readyState)
	if(xmlhttp.readyState==4){
		document.mgc.rdy = true
		var resp = xmlhttp.responseText
		xmlhttp.abort()
		//alert("server Debug\n" + resp)//
		if((resp.indexOf("error</b>") > 0) || resp.indexOf("<b>Warning") > 0){
			if(!confirm("server Squawkin'\n" + resp))  return false;
		}
		else if(resp.substr(0, 4) == "ALT:"){
			if(!confirm("server Message\n" + resp.substr(4))) return false;
		}
		else{
			document.mgc.rs4.dat =resp
			if(document.mgc.rs4.ret){
				document.mgc.rs4.ret()
			}
			else{
				if(document.mgc.rs4.setv){
					document.mgc.rs4.setv()
				}
				else{
					alert("No setv for " + document.mgc.rs4.id)
				}
			}
			//alert("set todo return\n" + xmlhttp.todo.length)
			if(document.mgc.todo.length > 0){
				var nxt = document.mgc.todo.shift()
				document.mgc.kzam(nxt[0],nxt[1],nxt[2],nxt[3])
			}
		}
	}
	else {
		var tx = (xmlhttp.readyState ? xmlhttp.readyState: "No status text")
		//alert("Magic state is:  " + tx)
	}
}
//