var request = false;
var requestRandomText = false;
var pagename = "home_ajax";
var param = "";
var old_pagename = "";
var old_param = "";
var counter = 0;

// Request senden
function setRequest(url,parameter) {
	// 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");
		return false;
	} else {
		document.getElementById('content').innerHTML = '<br /><br /><br /><br /><br /><br /><br /><br /><div align="center"><img src="images/preload.gif" /><br /><b>Bitte warten - Please wait!</b><br /><span id="ajax_engine">AJAX Engine started...</span><span id="modules" style="display:none;">Modules load...</span></div><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />&nbsp;';
		document.getElementById('print_tell').style.display = 'none';
		// Request öffnen
		if(url == -1)
		{
			if(old_pagename)
			{
				url = old_pagename;
				parameter = old_param;
			}
			else
			{
				url = "home_ajax";
				parameter = "";
			}
		}
		request.open('post', url, true);
		// Request senden
		document.getElementById("ajax_engine").style.display = "block";
		request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		request.send(parameter);
		// Request auswerten
		request.onreadystatechange = interpretRequest;
		old_pagename = pagename;
		old_param = param;
		pagename = url;
		param = parameter;
	}
}

// Request auswerten
function interpretRequest() {
	document.getElementById("modules").style.display = "block";
	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("AJAX Error-Stack Message\n-------------------------------------\nAn Error occurred: request was done, but response did not succeed.\n\nError-Code: "+request.status+"\n\nPlease inform your administrator about this.");
			} else {
				var content = request.responseText;
				var Bilder = new Array("../imagesrandom/images/Head-51.jpg", "../imagesrandom/images/Head-45.jpg", "../imagesrandom/images/Head-52.jpg", "../imagesrandom/images/Head-48.jpg", "../imagesrandom/images/Head-50.jpg", "../imagesrandom/images/Head-46.jpg", "../imagesrandom/images/Head-47.jpg", "../imagesrandom/images/Head-54.jpg", "../imagesrandom/images/Head-53.jpg", "../imagesrandom/images/Head-49.jpg");				var rand = Math.round(Math.random() * (Bilder.length - 1));
				// den Inhalt des Requests in das <div> schreiben
				document.getElementById('content').innerHTML = content;
				if((old_pagename != pagename) || !counter)
				{
					document.getElementById('Table_01').style.backgroundImage = "url(" + Bilder[rand] + ")";
					setRequestRandomText();
					setRequestStatistic();
					switch (pagename)
					{
						case "tabelle_ajax":
							document.getElementById('tabelle_mini_area').style.display = 'none';
							document.getElementById('notabelle').style.display = 'block';
							document.getElementById('spielertagebuch').style.display = 'block';
							document.getElementById('login').style.display = 'none';
							break;
						case "spielertagebuch_ajax":
							document.getElementById('tabelle_mini_area').style.display = 'block';
							document.getElementById('notabelle').style.display = 'none';
							document.getElementById('spielertagebuch').style.display = 'none';
							document.getElementById('login').style.display = 'block';
							break;
						default:
							document.getElementById('tabelle_mini_area').style.display = 'block';
							document.getElementById('notabelle').style.display = 'none';
							document.getElementById('spielertagebuch').style.display = 'block';
							document.getElementById('login').style.display = 'none';
							break;
					}
				}

				counter++;
				document.getElementById('print_tell').style.display = 'block';
				initLightbox();
				rauf();
			}
			break;
		default:
			break;
	}
}

function setRequestRandomText() {
	// Request erzeugen
	if (window.XMLHttpRequest) {
		requestRandomText = new XMLHttpRequest(); // Mozilla, Safari, Opera
	} else if (window.ActiveXObject) {
		try {
			requestRandomText = new ActiveXObject('Msxml2.XMLHTTP'); // IE 5
		} catch (e) {
			try {
				requestRandomText = new ActiveXObject('Microsoft.XMLHTTP'); // IE 6
			} catch (e) {}
		}
	}

	// überprüfen, ob Request erzeugt wurde
	if (!requestRandomText) {
		alert("Kann keine XMLHTTP-Instanz erzeugen");
		return false;
	} else {
		// Zufallstext ändern BEGIN
		requestRandomText.open('post', 'scripts/txtrandom.php', true);
		requestRandomText.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		requestRandomText.send('reload');
		requestRandomText.onreadystatechange = interpretRequestRandomText;
		// Zufallstext ändern ENDE
	}
}

// Request auswerten
function interpretRequestRandomText() {
	switch (requestRandomText.readyState) {
		// wenn der readyState 4 und der request.status 200 ist, dann ist alles korrekt gelaufen
		case 4:
			if (requestRandomText.status != 200) {
				alert("AJAX Error-Stack Message\n-------------------------------------\nAn Error occurred: request was done, but response did not succeed.\n\nError-Code: "+requestRandomText.status+"\n\nPlease inform your administrator about this.");
			} else {
				var content = requestRandomText.responseText;
				document.getElementById('zufallstext').innerHTML = content;
			}
			break;
		default:
			break;
	}
}

function setRequestStatistic() {
	// Request erzeugen
	if (window.XMLHttpRequest) {
		requestStatistic = new XMLHttpRequest(); // Mozilla, Safari, Opera
	} else if (window.ActiveXObject) {
		try {
			requestStatistic = new ActiveXObject('Msxml2.XMLHTTP'); // IE 5
		} catch (e) {
			try {
				requestStatistic = new ActiveXObject('Microsoft.XMLHTTP'); // IE 6
			} catch (e) {}
		}
	}

	// überprüfen, ob Request erzeugt wurde
	if (!requestStatistic) {
		alert("Kann keine XMLHTTP-Instanz erzeugen");
		return false;
	} else {
		// Zufallstext ändern BEGIN
		requestStatistic.open('post', 'scripts/statistik.php', true);
		requestStatistic.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		requestStatistic.send('ip=MzguMTA3LjE3OS4yMzk=&browser=Q0NCb3QvMS4wICgraHR0cDovL3d3dy5jb21tb25jcmF3bC5vcmcvYm90Lmh0bWwp&language=ZW4tdXMsZW47cT0wLjU=&site=' + pagename + '&param=' + ((param)?param:''));
		requestStatistic.onreadystatechange = interpretRequestStatistic;
		// Zufallstext ändern ENDE
	}
}

// Request auswerten
function interpretRequestStatistic() {
	switch (requestStatistic.readyState) {
		// wenn der readyState 4 und der request.status 200 ist, dann ist alles korrekt gelaufen
		case 4:
			if (requestStatistic.status != 200) {
				alert("AJAX Error-Stack Message\n-------------------------------------\nAn Error occurred: request was done, but response did not succeed.\n\nError-Code: "+requestStatistic.status+"\n\nPlease inform your administrator about this.");
			} else {
				var content = requestStatistic.responseText;
				document.getElementById('statistik').innerHTML = content;
			}
			break;
		default:
			break;
	}
}

