	var request = false;
	var mContent = 'content';
	aContents = new Array(3);
	
	var bFlagTooltip = false;
	var bScriptAfterRequest = false;
	var bResponseXML = false;
	
	var mTooltipHeader = 'Standard';
	var mScriptAfterRequest = '';
	
	function setContent(pcontent) {
		mContent = pcontent; 
	}
	
	function setFlagTooltip(pFlagTooltip) {
		bFlagTooltip = pFlagTooltip;
	}

	function isEmpty(inputVal) {
	
		var bReturn = false;
		
		if (inputVal == null || inputVal=='') {	
		  bReturn = true;	
		} 
	
		return bReturn;
	}
	
	function setTooltipHeader(header) {
		mTooltipHeader = header;   
	}

	function showTerminTooltip(url,pcontent,pHeader) {
		
		mContent = pcontent;

		var value = '';
		
		value = pHeader;
		
		setTooltipHeader(pHeader);
		
		setFlagTooltip(true);
		bScriptAfterRequest = true;
		//---
		Felder = new Array("InstitutHeader","Vorhandene","Mitarbeiter");
		
		
//		mScriptAfterRequest = "setRequestByXMLValue('ajax/ebh_termin_refresh.php','83',Felder);"
		mScriptAfterRequest = "setRequestByValue('ajax/ebh_termin_refresh.php','83','Vorhandene');";
		
		initRequest(url,value,'');
				
		
	}

	function initRequestByArray(url,aFelder,aValues) {
		
		bFlagTooltip = false;
		bResponseXML = false;
		
		if (!setRequestInstance()) {
			alert("Kann keine XMLHTTP-Instanz erzeugen");
			return false;
		} else {
			// Request öffnen
			request.open('post', url, true);
			// Requestheader senden
			request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

		    request.setRequestHeader("Content-length", url.length);
      		request.setRequestHeader("Connection", "close");


			// Request senden
 			// Request öffnen
//			request.open('post', url, true);
			var sUrl = '';
			
			for(i=0;i < aFelder.length;i++) {
				//---
				if(i > 0) {
					sUrl += '&';
				}
				
				sUrl += aFelder[i]+"="+aValues[i];
			}
			// Request senden
			request.send(sUrl);				
			
			// Request auswerten
			request.onreadystatechange = interpretRequest;
		
		}
				
	}

	function setRequestInstance() {

		var bReturn = false;
				
		// Request erzeugen
		if (window.XMLHttpRequest) {
			request = new XMLHttpRequest(); // Mozilla, Safari, Opera
		} else if (window.ActiveXObject) {
			try {
				request = new ActiveXObject('Msxml2.XMLHTTP'); // IE 5
			} catch (e) {
				try {
					request = new ActiveXObject('Microsoft.XMLHTTP'); // IE 6
				} catch (e) {}
			}
		}
				
		// überprüfen, ob Request erzeugt wurde
		if (!request) {
			alert("Kann keine XMLHTTP-Instanz erzeugen");
			bReturn = false;
		}
		else {
			bReturn = true;	
		}

		return bReturn;
		
	}

	function initRequest(url,value,id) {

		if (!setRequestInstance()) {
			alert("Kann keine XMLHTTP-Instanz erzeugen");
			return false;
		} else {

			// Request öffnen
			request.open('post', url, true);
			// Requestheader senden
			request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
			// Request senden
	
			if(!isEmpty(value)) {
				request.send('name='+value);			
			}	else if(!isEmpty(id)) {
				var value = document.getElementById('source_'+id).innerHTML;
				// Request öffnen
				request.open('post', url, true);
				// Request senden
				request.send('name='+value+'&pos='+id);				
			}	else {
				request.send(null);				
			}
			// Request auswerten
			request.onreadystatechange = interpretRequest;
			
		//	request.abort();
		}
		
	}


	function setRequestByXMLValue(url,value,paContents) {
				
		aContents = paContents;
		setFlagTooltip(false);
		bResponseXML = true;


		initRequest(url,value,'');

	}


	function setRequestByValue(url,value,pcontent) {
				
		mContent = pcontent;
		setFlagTooltip(false);
		bResponseXML = false;


		initRequest(url,value,'');

	}

	// Request senden
	function setRequestById(url,id,pcontent) {
		 
		mContent = pcontent;
		setFlagTooltip(false);
		bResponseXML = false;


		initRequest(url,'',id);

	}


	// Request senden
	function setRequest(url,pcontent) {
		
		mContent = pcontent;

		bResponseXML = false;		
		setFlagTooltip(false);

		initRequest(url,'','');
	}

	// Request auswerten
	function interpretRequest() {
		switch (request.readyState) {
			// wenn der readyState 4 und der request.status 200 ist, dann ist alles korrekt gelaufen
			case 4:
				if (request.status != 200) {
					alert("Der Request wurde abgeschlossen, ist aber nicht OK\nFehler:"+request.status);
				} else {
					if(bResponseXML) {
						var xmlDoc	= request.responseXML;						
					} else {
						var content = request.responseText;						
					}
					if (bFlagTooltip) {
						// den Inhalt des Requests in einem Tooltip anzeigen
						ToolTip.show(mContent, content, mTooltipHeader);
					} else if(bResponseXML) {
						// Antwort des Servers -> als XML-Dokument
						// Namen aus dem XML-Dokument herauslesen
						/*
						var original	= xmlDoc.getElementsByTagName('InstitutHeader')[0].firstChild.nodeValue;
						var small	= xmlDoc.getElementsByTagName('Vorhandene')[0].firstChild.nodeValue;
						var big		= xmlDoc.getElementsByTagName('Mitarbeiter')[0].firstChild.nodeValue;
						// Namen in die Felder schreiben
						document.getElementById('original').innerHTML	= original;
						document.getElementById('small').innerHTML	= small;
						document.getElementById('big').innerHTML	= big;												
						*/
						//---
						var sFeld = '';
						//---
//						alert(aContents.length);
						alert(aContents[1]);
						
//						for(i=0; i < 3;i++) {
//						for(i=0; i < aContents.length;i++) {
						//	sFeld = xmlDoc.getElementsByTagName(aContents[i])[0].firstChild.nodeValue;
							
						//	document.getElementById(aContents[i]).innerHTML	= sFeld;
					//	}
						
					} else {
						if(content != 'db-ok') {
							// den Inhalt des Requests in das <div> schreiben
							document.getElementById(mContent).innerHTML = content;													
						} 
					}
					
					if(bScriptAfterRequest) {
						eval(mScriptAfterRequest);
					}	
				}
				break;
			default:
				break;
		}
	}
