function setCookie(c_name,value,expiredays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate()+expiredays);
document.cookie=c_name+ "=" +escape(value)+
((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
}

function getCookie(c_name)
{
if (document.cookie.length>0)
  {
  c_start=document.cookie.indexOf(c_name + "=");
  if (c_start!=-1)
    {
    c_start=c_start + c_name.length+1;
    c_end=document.cookie.indexOf(";",c_start);
    if (c_end==-1) c_end=document.cookie.length;
    return unescape(document.cookie.substring(c_start,c_end));
    }
  }
return "";
}

function entsub(event,ourform)
{
  if (event && event.which == 13)
    ourform.submit();
  else
    return true;
}

function enableDD()
{
	if (document.getElementById('directDebit').checked == true)
	{
		document.getElementById('tr1').style.display = "block";
		document.getElementById('tr2').style.display = "block";
		document.getElementById('tr3').style.display = "block";
	} else {
		document.getElementById('tr1').style.display = "inline";
		document.getElementById('tr2').style.display = "inline";
		document.getElementById('tr3').style.display = "inline";
	}
}

function createXmlHttpRequestObject()
{
	var xmlHttp = false;

	if(window.ActiveXObject)
	{
		try
		{
			//xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
			try { xmlHttp = new ActiveXObject("Msxml2.XMLHTTP.6.0") } catch(e) {}
			try { xmlHttp = new ActiveXObject("Msxml2.XMLHTTP.3.0") } catch(e) {}
			try { xmlHttp = new ActiveXObject("Msxml2.XMLHTTP") } catch(e) {}
			try { xmlHttp = ActiveXObject("Microsoft.XMLHTTP") } catch(e) {}
		} catch (e) {
			xmlHttp = false;	
		}

	} else {
		try
		{
			xmlHttp = new XMLHttpRequest();
		} catch (e) {
			xmlHttp = false;
		}
	}

	if(!xmlHttp)
		alert("Error creating the XMLHttpRequest object.");
	else
		return xmlHttp;
}

var xmlHttp = createXmlHttpRequestObject();

function LoadExisting(user, pwd, code, typ)
{
	document.getElementById("divAnfragetyp").innerHTML = "LoadExisting";
	document.getElementById("SubmitLink").innerHTML = "<strong>Ihre Daten werden verifiziert...</strong>";

	if(xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	{
		xmlHttp.onreadystatechange = handleServerResponse;
		xmlHttp.open("POST", "anmeldung/validateExisting.php", true);

		param='user='+user+'&pwd='+pwd+'&typ='+typ+'&code='+code;

		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.setRequestHeader("Content-length", param.length);
		xmlHttp.setRequestHeader("Connection", "close");
		xmlHttp.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		xmlHttp.send(param);
	} else
		setTimeout('LoadExisting("' + user + '", "' + pwd + '", "' + code + '", "' + typ + '")', 2500);
}

function checkUser(user)
{
	document.getElementById("divAnfragetyp").innerHTML = "checkUser";

	if(xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	{
		xmlHttp.onreadystatechange = handleServerResponse;
		xmlHttp.open("POST", "anmeldung/checkUser.php", true);

		param='user='+user;

		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.setRequestHeader("Content-length", param.length);
		xmlHttp.setRequestHeader("Connection", "close");
		xmlHttp.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		xmlHttp.send(param);
	} else
		setTimeout('checkUser()', 1000);
}

function registerUser(anrede, vorname, nachname, email, passwort, wiederholung, code, strasse, plz, stadt, typ, unternehmen)
{
	if (passwort != wiederholung)
	{
		document.getElementById("wiederholung").value = "";	
		document.getElementById("wdh").style.color = "#ff0000";
	} else {
	document.getElementById("divAnfragetyp").innerHTML = "registerUser";
	document.getElementById("SubmitLink").innerHTML = "<strong>Bitte warten...</strong>";
	if(xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	{
		xmlHttp.onreadystatechange = handleServerResponse;
		xmlHttp.open("POST", "anmeldung/registerUser.php", true);

		param='user='+email+'&pwd='+passwort+'&vorname='+vorname+'&nachname='+nachname+'&code='+code+'&strasse='+strasse+'&plz='+plz+'&stadt='+stadt+'&typ='+typ+'&anrede='+anrede+'&company='+unternehmen;

		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.setRequestHeader("Content-length", param.length);
		xmlHttp.setRequestHeader("Connection", "close");
		xmlHttp.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		xmlHttp.send(param);
	} else
		setTimeout('registerUser("' + anrede + '", "' + vorname + '", "' + nachname + '", "' + email + '", "' + passwort + '", "' + wiederholung + '", "' + code + '", "' + strasse + '", "' + plz + '", "' + stadt + '", "' + typ + '")', 2500);
	}
}

function login(user, pwd)
{
	document.getElementById("divAnfragetyp").innerHTML = "login";
	document.getElementById("LoginLink").innerHTML = "<strong>Bitte warten...</strong>";
	if(xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	{
		xmlHttp.onreadystatechange = handleServerResponse;
		xmlHttp.open("POST", "anmeldung/login.php", true);

		param='user='+user+'&pwd='+pwd;
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.setRequestHeader("Content-length", param.length);
		xmlHttp.setRequestHeader("Connection", "close");
		xmlHttp.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		xmlHttp.send(param);
	} else
		setTimeout('login("' + user + '", "' + pwd + '")', 1000);
}

function logout()
{
	document.getElementById("divAnfragetyp").innerHTML = "logout";
	document.getElementById("LoginLink").innerHTML = "<strong>Bitte warten...</strong>";
	if(xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	{
		xmlHttp.onreadystatechange = handleServerResponse;
		xmlHttp.open("POST", "anmeldung/logout.php", true);

		param='';

		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.setRequestHeader("Content-length", param.length);
		xmlHttp.setRequestHeader("Connection", "close");
		xmlHttp.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		xmlHttp.send(param);
	} else
		setTimeout('logout()', 1000);
}


function setAddress(addressStreet, addressZipCode, addressCity)
{
	document.getElementById("divAnfragetyp").innerHTML = "setAddress";
	if(xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	{
		xmlHttp.onreadystatechange = handleServerResponse;
		xmlHttp.open("POST", "anmeldung/setAddress.php", true);

		param='addressStreet='+addressStreet+'&addressZipCode='+addressZipCode+'&addressCity='+addressCity;

		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.setRequestHeader("Content-length", param.length);
		xmlHttp.setRequestHeader("Connection", "close");
		xmlHttp.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		xmlHttp.send(param);
	} else
		setTimeout('setAddress("' + addressStreet + '", "' + addressZipCode + '", "' + addressCity + '")', 2500);
}

function ok()
{
	document.getElementById("divAnfragetyp").innerHTML = "ok";
	if(xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	{
		xmlHttp.onreadystatechange = handleServerResponse;
		xmlHttp.open("POST", "anmeldung/ok.php", true);

		param='';

		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.setRequestHeader("Content-length", param.length);
		xmlHttp.setRequestHeader("Connection", "close");
		xmlHttp.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		xmlHttp.send(param);
	} else
		setTimeout('ok()', 1000);
}

function checkSession()
{
	document.getElementById("divAnfragetyp").innerHTML = "checkSession";
	if(xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	{
		xmlHttp.onreadystatechange = handleServerResponse;
		xmlHttp.open("POST", "anmeldung/checkSession.php", true);

		param='';

		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.setRequestHeader("Content-length", param.length);
		xmlHttp.setRequestHeader("Connection", "close");
		xmlHttp.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		xmlHttp.send(param);
	} else
		setTimeout('checkSession()', 1000);
}

function getBank()
{
	document.getElementById("divAnfragetyp").innerHTML = "getBank";
	if(xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	{
		xmlHttp.onreadystatechange = handleServerResponse;
		xmlHttp.open("POST", "anmeldung/getBank.php", true);

		param='';

		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.setRequestHeader("Content-length", param.length);
		xmlHttp.setRequestHeader("Connection", "close");
		xmlHttp.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		xmlHttp.send(param);
	} else
		setTimeout('getBank()', 1000);
}

function bLunch()
{
        document.getElementById("divAnfragetyp").innerHTML = "bLunch";
        if(xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
        {
                xmlHttp.onreadystatechange = handleServerResponse;
                xmlHttp.open("POST", "anmeldung/businessLunch.php", true);

                param='';

                xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
                xmlHttp.setRequestHeader("Content-length", param.length);
                xmlHttp.setRequestHeader("Connection", "close");
                xmlHttp.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
                xmlHttp.send(param);
        } else
                setTimeout('bLunch()', 1000);
}


function setBank(accountNumber, bankCode, nameOfBank, directDebit)
{
	document.getElementById("divAnfragetyp").innerHTML = "setBank";
	if(xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	{
		xmlHttp.onreadystatechange = handleServerResponse;
		xmlHttp.open("POST", "anmeldung/setBank.php", true);

		param='accountNumber='+accountNumber+'&bankCode='+bankCode+'&nameOfBank='+nameOfBank+'&directDebit='+directDebit;

		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.setRequestHeader("Content-length", param.length);
		xmlHttp.setRequestHeader("Connection", "close");
		xmlHttp.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		xmlHttp.send(param);
	} else
		setTimeout('setBank("' + accountNumber + '", "' + bankCode + '", "' + nameOfBank + '", "' + directDebit + '")', 1000);
}


function handleServerResponse()
{
//alert(xmlHttp.readyState);
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{
			xmlResponse = xmlHttp.responseText;
			var anfragetyp = document.getElementById("divAnfragetyp").innerHTML;

			switch (anfragetyp) {
			  case "LoadExisting":
				document.getElementById("UserData").innerHTML = '' + xmlResponse + '';
				break;
			  case "setAddress":
				document.getElementById("UserData").innerHTML = '' + xmlResponse + '';
			    break;
			  case "ok":
				document.getElementById("UserData").innerHTML = '' + xmlResponse + '';
			    break;
			  case "checkSession":
				document.getElementById("besucher").innerHTML = '' + xmlResponse + '';
			    break;
			  case "registerUser":
				document.getElementById("regform").innerHTML = '' + xmlResponse + '';
			    break;
			  case "login":
				document.getElementById("besucher").innerHTML = '' + xmlResponse + '';
			    break;
			  case "logout":
				document.getElementById("besucher").innerHTML = '' + xmlResponse + '';
			    break;
			  case "checkUser":
				document.getElementById("besucher").innerHTML = '' + xmlResponse + '';
			    break;
			  case "setBank":
				document.getElementById("sBank").innerHTML = '' + xmlResponse + '';
			    break;
			  case "getBank":
				document.getElementById("sBank").innerHTML = '' + xmlResponse + '';
			    break;
			case "bLunch":
                                document.getElementById("bLunch").innerHTML = '' + xmlResponse + '';
                            break;

			  default:
				document.write("Anfrage fehlgeschlagen!");
			    break;
			}
			xmlHttp = createXmlHttpRequestObject();
		} else {
			switch (anfragetyp) {
			  case "LoadExisting":
				document.getElementById("UserData").innerHTML = 'Fehler';
				break;
			  case "setAddress":
				document.getElementById("UserData").innerHTML = 'Fehler';
			    break;
			  case "ok":
				document.getElementById("UserData").innerHTML = 'Fehler';
			    break;
			  case "checkSession":
				document.getElementById("besucher").innerHTML = 'Fehler';
			    break;
			  case "registerUser":
				document.getElementById("regform").innerHTML = 'Fehler';
			    break;
			  case "login":
				document.getElementById("besucher").innerHTML = 'Fehler';
			    break;
			  case "logout":
				document.getElementById("besucher").innerHTML = 'Fehler';
			    break;
			  case "checkUser":
				document.getElementById("besucher").innerHTML = 'Fehler';
			    break;
			  case "setBank":
				document.getElementById("sBank").innerHTML = 'Fehler';
			    break;
			  case "getBank":
				document.getElementById("sBank").innerHTML = 'Fehler';
			    break;
			  default:
				document.write("Anfrage fehlgeschlagen!");
			    break;
			}
		}
	}
}
