function getHTTPObject() {
	var xmlHttp=false;
	if(window.XMLHttpRequest && !(window.ActiveXObject)) {
	    	try {
			xmlHttp= new XMLHttpRequest();
        	} catch(e) {
			xmlHttp= false;
	        }
	// branch for IE/Windows ActiveX version
	} else {
//	 	/*@cc_on
//		@if (@_jscript_version >= 5)
//			try {
//				xmlHttp = new ActiveXObject("Msxml2.ServerXMLHTTP");
//			} catch (e) {
//				try {
//					xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
//				} catch (E) {
//					xmlHttp = false;
//				};
//			};
//		@else
//			xmlHttp = false;
//		@end @*/
		if (!xmlHttp) {
			// Internet Explorer 6 und älter
			try {
				xmlHttp  = new ActiveXObject("Msxml2.XMLHTTP");
			} catch(e) {
				try {
					xmlHttp  = new ActiveXObject("Microsoft.XMLHTTP");
				} catch(e) {
					xmlHttp  = null;
				}
			}
		}
	}
	return xmlHttp;
}


function oldLoadData(request) {
	try {
		var aHttp = getHTTPObject();
		if(typeof netscape != 'undefined') {
			//Firefox Security Settings
			// The following entries have to be made in the user.js file
			//
			//
			// user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.open","allAccess");
			// user_pref("capability.policy.XMLHttpRequestToAnySite.sites", "http://ODSServ:8083");
			// user_pref("capability.policy.policynames", "XMLHttpRequestToAnySite");
			// 
			// In the about:config page, the following value has to be set to true
			// 
			// signed.applets.codebase_principal_support = true !!
			//
			netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead UniversalBrowserWrite");
			netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
		}
//		aHttp.setRequestHeader("Cache-Control", "no-cache");
//		aHttp.setRequestHeader("Content-Type", "text/html");
		aHttp.open("GET", request, true);
		aHttp.onreadystatechange = function() {
			if(aHttp.status == 403) {
				alert("403 - You do not have permission to perform a SWSi Request to VASERControl");
				return;
			};
//			if (aHttp.readyState == 4) {
//				alert(aHttp.status);
//			};
		};
		aHttp.send(null);
	} catch (error) {
		alert("Exception " + error.name + " message: " + error.message);
	}
}

function connectToPushlet(request, aDiv) {
	try {
		var aHttp = getHTTPObject();
		if(typeof netscape != 'undefined') {
			//Firefox Security Settings
			// The following entries have to be made in the user.js file
			//
			//
			// user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.open","allAccess");
			// user_pref("capability.policy.XMLHttpRequestToAnySite.sites", "http://ODSServ:8083");
			// user_pref("capability.policy.policynames", "XMLHttpRequestToAnySite");
			// 
			// In the about:config page, the following value has to be set to true
			// 
			// signed.applets.codebase_principal_support = true !!
			//
			netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead UniversalBrowserWrite");
			netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
		}
//		aHttp.setRequestHeader("Cache-Control", "no-cache");
//		aHttp.setRequestHeader("Content-Type", "text/html");
		aHttp.open("GET", request, true);
		aHttp.onreadystatechange = function() {
			if(aHttp.status == 403) {
				alert("403 - You do not have permission to perform a SWSi Request to VASERControl");
				return;
			};
			if (aHttp.readyState == 4) {
				var someCode = xmlhttp.responseText;
				alert(someCode);
				aDiv.innerHTML = someCode;
			};
		};
		aHttp.send(null);
	} catch (error) {
		alert("Exception " + error.name + " message: " + error.message);
	}
}


function loadData(nextRequest) {
	var request=nextRequest;
	var vc = request.indexOf("<vaserControl:");
	if(vc>=0) {
		var ve=request.indexOf("/>", vc);
		if(ve>=0) {
			request=nextRequest.substring(0, vc) + nextRequest.substring(vc+14, ve) + nextRequest.substring(ve+2, nextRequest.length - 1);
		}
	}
	gXMLHttp=null ;
	if (window.XMLHttpRequest) {
		gXMLHttp = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		gXMLHttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	if (gXMLHttp!=null) {
		gXMLHttp.onreadystatechange = state_Change;
		gXMLHttp.open("GET", request, true);
		gXMLHttp.send(null);
	}
} 

function state_Change() {
	var xmlDoc = null ;
	if (gXMLHttp.readyState==4 && gXMLHttp.status==200) {
/*		xmlDoc = new ActiveXObject("Microsoft.XMLDom");
		xmlDoc.async="false"
		xmlDoc.loadXML(gXMLHttp.responseText);
		processData(xmlDoc);*/
	}
	xmlDoc = null ;
}

function setBoolean(elementName, elementValue) {
	setObject(elementName, elementValue, "Boolean");
}
function setInteger(elementName, elementValue) {
	setObject(elementName, elementValue, "Integer");
}
function setString(elementName, elementValue) {
	setObject(elementName, elementValue, "String");
}
function setObject(elementName, elementValue, elementType) {
	elements = elementName.split("||");
	if(elements.length==2) {
		sEleName = elements[0];
		sEleMethod = elements[1];
	} else {
		sEleName = elements[0];
		sEleMethod = "elementValue";
	}
//	aVal = 'http://' + serverName + ':' + serverPort + '/HAS?element=' + sEleName + '&message=' + sEleMethod + ':&value_1=' + elementValue + '&valueClass_1=' + elementType;
	aVal = '/HAS?element=' + sEleName + '&message=' + sEleMethod + ':&value_1=' + elementValue + '&valueClass_1=' + elementType + "&vasRnd=" + Math.random();
//	aVal = 'http://odsserv:8087/HAS?element=' + sEleName + '&message=' + sEleMethod + ':&value_1=' + elementValue + '&valueClass_1=' + elementType;
	loadData(aVal);
}
function xxsendMessage(elementName, message) {
//	aVal = 'http://' + serverName + ':' + serverPort + '/HAS?element=' + elementName + '&message=' + message;
	aVal = '/HAS?element=' + elementName + '&message=' + message;
	loadData(aVal);
}

function checkBoxClicked(item) {
	var aId=item.id;
	if(aId==null) {
		aId=item.name;
	};
	if(item.checked) {
		setBoolean(aId, 'true');
	} else {
		setBoolean(aId, 'false');
	}
}
function valueChangedInteger(item) {
	var aId=item.id;
	setInteger(aId, item.value);
}
function valueChangedString(item) {
	var aId=item.id;
	setString(aId, item.value);
}
function vc_event(aId, aValue) {
	if(typeof vcIsFrame != 'undefined') {
		if(vcIsFrame==false) {
			doEvent(aId, aValue);
			return;
		}
	}
	var frameName="Fussbereich";
	if(typeof heartbeatUpdate != 'undefined') {
		frameName = heartbeatUpdate;
	}
	var heartbeatFrame=top.frames[frameName];
	if(aId=="heartbeat") {
		if(typeof heartbeatFrame != 'undefined') {
			heartbeatFrame.doEvent(aId,aValue);
			return;
		}
		top.doHeartbeatEvent(name, aValue);
		return;
	}
	if(aId=="heartbeat||elementValue") {
		if(typeof heartbeatFrame != 'undefined') {
			heartbeatFrame.doEvent(aId,aValue);
			return;
		}
		top.doHeartbeatEvent(name, aValue);
		return;
	}
	frameName="Content";
	if(typeof contentUpdate != 'undefined') {
		frameName = contentUpdate;
	}
	var contentFrame=parent.frames[frameName];
	if(typeof contentFrame == 'undefined') {
		contentFrame = document.getElementById(frameName);
		if(typeof contentFrame == 'undefined') {
			alert("Could not find contentFrame");
			return;
		}
	}
	contentFrame.doEvent(aId,aValue);
}
function oldEvent (aId, aValue) {
	if(custom==true) return;
	ele = document.getElementById(aId);
	if (ele == null) {
		ele = top.Content.document.getElementById(aId);
		if (ele == null) {
			ele = top.Content.document.getElementsByName(aId)[0];
			if (ele == null) {
				return;
			}
		}
	};
	switch(ele.type) {
			case "checkbox": 
				alert("Checkbox");
				ele.checked=aValue;
				ele.set("checked", aValue);
				break;
			case "select-one": 
				ele.selectedIndex=aValue;
				break;
			case "image": 
				aName = "/Graphics/dim" + parseInt(aValue /10) + ".gif";
				ele.src=aName;
				break;
			default:
				ele.value=aValue;
				ele.set("checked", aValue);
				break;
 		};
}

