// http-request (GET)
function ajaxManager()
{
  var args = ajaxManager.arguments;
  
  switch (args[0])
  {
    case "load_page":
      if (document.getElementById)      
        var x = (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
      if (x)
      {
        x.onreadystatechange = function()
          {
            if (x.readyState == 4 && x.status == 200)
              document.getElementById(args[2]).innerHTML = x.responseText;
          }
        x.open("GET", args[1], true);
        x.send(null);
      }
      break;

    case "start_up":
      ajaxManager('load_page', 'basic.xml', 'contentLYR');
      break;
  }
}

// Unser Request Objekt global verwendbar.
var http_request = false;

// http-request (POST)
function doRequest(url, parameters) 
{
	http_request = false;

	// Testen ob der Browser ein XMLHttpRequest Objekt zur Verfügung stellt. (Mozilla und andere)
	if (window.XMLHttpRequest) 
	{     
		http_request = new XMLHttpRequest(); 
		if (http_request.overrideMimeType) 
		{
			//Das Ergebnis soll als XML-Dokument betrachtet werden.
			http_request.overrideMimeType('text/xml');     
			//http_request.overrideMimeType('text/html');
		}		
	} 	
	else if (window.ActiveXObject) // Wenn der Browser ein IE ist, dann müssen andere Objekte benutzt werden.
	{ 
		try 
		{
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} 
		catch (e) 
		{
			try 
			{
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} 
			catch (e) {}
		}
	}

	// Falls kein Request Objekt zur Verfügung steht funktioniert das ganze nicht
	if (!http_request) 
	{ 
	  document.getElementById("bottom").innerHTML = "<span style='color:red'>Es kann kein Request Objekt erzeugt werden.</span>"; 
		return false;
	}
			
	http_request.open('POST', url, true);
	http_request.onreadystatechange = myHandler; // callback-funktion = myHandler
  http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	http_request.setRequestHeader("Content-length", parameters.length);
	if(!document.all)http_request.setRequestHeader("Connection", "close");	
	http_request.send(parameters);
	
	//document.getElementById("suchen").src = "loading.gif"; ///
 
	timeout = window.setTimeout("abbrechen()", 2500); // Anfrage laenger als 1 Sek: abbrechen 	
}

function abbrechen() 
{
  http_request.abort();
  /*
  document.getElementById("bo").style.cursor= "default";
  document.getElementById("suchen").style.cursor = "default";
  document.getElementById("suchen").src = "button_suchen.png";
  document.getElementById("suchen").title= "Suche starten...";
  */
  document.getElementById("bottom").innerHTML = "<p style='color:red'>Server-Anfrage dauerte zu lange. Bitte Anfrage wiederholen!</p>";
}
        
function myHandler() 
{   
  //document.getElementById("suchen").style.display = "none";
  //document.getElementById("suchen").style.display = "block"; 
  
  
	// Testen ob das Request-Objekt mit dem Laden fertig ist
	if (http_request.readyState == 4) 
	{ 
		ergebnisverarbeiten();
		window.clearTimeout(timeout);
	}
}

function putDataNL(obj)
{
	var poststr = "emailNL=" + escape(encodeURI(document.getElementById("nameNL").value));
	//alert(poststr);
	doRequest('ajax.php', poststr);
}

function putDataTermin(obj)
{ 
	var poststr = "name=" + escape(encodeURI(document.getElementById("name").value)) +
	"&anschrift=" + escape(encodeURI(document.getElementById("anschrift").value)) +			
	"&fon=" + escape(encodeURI(document.getElementById("fon").value)) +
	"&email=" + escape(encodeURI(document.getElementById("email").value)) +			
	"&termin=" + escape(encodeURI(document.getElementById("termin").value)) +		
	"&rueckruf=" + escape(encodeURI(document.getElementById("rueckruf").checked)) +
	"&type=soforttermin";
	
	doRequest('ajax.php', poststr);
}

function putDataBuch(obj)
{
	var poststr = "name=" + escape(encodeURI(document.getElementById("name").value)) +
	"&anschrift=" + escape(encodeURI(document.getElementById("anschrift").value)) +			
	"&email=" + escape(encodeURI(document.getElementById("email").value)) +			
	"&type=buch";

	doRequest('ajax.php', poststr);
}

function putDataSpeed(obj)
{ 
	var poststr = "name=" + escape(encodeURI(document.getElementById("name").value)) +
	"&anschrift=" + escape(encodeURI(document.getElementById("anschrift").value)) +			
	"&fon=" + escape(encodeURI(document.getElementById("fon").value)) +
	"&email=" + escape(encodeURI(document.getElementById("email").value)) +			
	"&termin=" + escape(encodeURI(document.getElementById("termin").value)) +		
	"&rueckruf=" + escape(encodeURI(document.getElementById("rueckruf").checked)) +
	"&type=speed";
	
	doRequest('ajax.php', poststr);
}

function putDataKarriere(obj)
{ 
var poststr = "name=" + escape(encodeURI(document.getElementById("name").value)) +
"&anschrift=" + escape(encodeURI(document.getElementById("anschrift").value)) +			
"&fon=" + escape(encodeURI(document.getElementById("fon").value)) +
"&email=" + escape(encodeURI(document.getElementById("email").value)) +			
"&termin=" + escape(encodeURI(document.getElementById("termin").value)) +		
"&rueckruf=" + escape(encodeURI(document.getElementById("rueckruf").checked)) +
"&type=karriere";

doRequest('ajax.php', poststr);
}

function ergebnisverarbeiten()
{  
	ergebnisdiv= document.getElementById('guide');
	//ergebnisdiv.innerHTML=http_request.responseText;
		
	var the_response = http_request.responseText;
	
  if (the_response)
	{
	   document.getElementById("bottom").innerHTML = the_response;
	   document.getElementById("bottom").className = "display";
	   
	   if (document.getElementById("kontaktDiv"))
	   	document.getElementById("kontaktDiv").className = "noDisplay";
		
	   if (document.getElementById("kontaktDiv2"))
	   	document.getElementById("kontaktDiv2").className = "noDisplay";
	}
}

