<html>

<head>
   <head>
    <title>Installation</title>
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    <link rel="stylesheet" type="text/css" href="styles/spider.css">
    <script src="3rdparty/jquery-2.0.3.min.js"></script>

    <script src="utils.js"></script>
</head>

<body>
<script>

function getConfig() {
	doAjax("GET",
			"install/installer.php?command=getConfig",
			null,fillDbVals,
			"Kommunikation zum Server fehlerhaft");
}

/**
 * Fill the user interface with the database connection parameters that are
 * stored in the config.php file.
 */
function fillDbVals(dbVals) {
	if (dbVals.status == "OK") {
		var db = dbVals.result;
		$("#db_host").val(db.host);
		$("#db_name").val(db.db);
		$("#db_user").val(db.user);
		$("#db_pass").val(db.password);
		$("#table_prefix").val(db.tabprefix);
		testdb();
	}
}

/**
 * Bind the "install" button: The values from the user interface are
 * collected and the transferred to the server installer script.
 */
function handleInstallBtn() {
	$("#startinstallbtn").on("click", function (e) {
		e.stopImmediatePropagation();
		e.preventDefault();
		
		var accesspass = $("#passwd").val();
		if (accesspass == "") {
			alert("Zugangspasswort muss gesetzt werden!");
		} else {
			var configData = {
					host:$("#db_host").val(),
					db:$("#db_name").val(),
					user:$("#db_user").val(),
					password:$("#db_pass").val(),
					prefix:$("#table_prefix").val(),
					adminpass:accesspass
			};
			
			doAjax("POST",
					"install/installer.php?command=install",
					configData,handleInstallResult,
					"Kommunikation zum Server fehlerhaft");
		};
	});
}

/**
 * Handle the result of the installation. If the installation completed without errors the 
 * user is forwarded to the login page (index.thml). Otherwise he gets an information with
 * some hints to check what might have been the root cause for the failures.
 */
function handleInstallResult(result) {
	if (result.status == "OK") {
		reloadPage("index.html");
	} else {
		alert("Die Installation war nicht erfolgreich. Wurden die richtigen Datenbankparameter angegeben? Kann das PHP-Verzeichnis gelesen werden? Ist die Datei php/config.php beschreibbar? Die Fehlermeldung lautet: " + result.msg);
	}
}

/**
 * jQuery entry point after loading the web page
 */
$( document ).ready(function() {
	getConfig();
	handleInstallBtn();
});

</script>

<h1>Installation OrderSprinter <i>Spider</i></h1>

<div id=dbsettings>
Bitte geben Sie die Datenbank-Settings und das Zugangspasswort ein, mit dem nach der Installation der Zugang zu OrderSprinter Spider möglich sein soll:<br><br>
<form>
<table class=gentable>
<tr><th>Attribut<th>Wert<th>Erklärung</tr>
<tr><td>DB-Server<td><input id="db_host" /><td>Server, auf dem die Datenbank läuft</tr>
<tr><td>DB-Name<td><input id="db_name"/><td>Jede Datenbank des Datenbankservers hat einen eigenen Namen.</tr>
<tr><td>DB-Benutzer<td><input id="db_user" /><td>Verschiedene Benutzer können auf eine Datenbank mit benutzerspezifischen Rechten zugreifen.</tr>
<tr><td>DB-Passwort<td><input type="password" id="db_pass" /><td>Passwort des Datenbank-Benutzers</tr>
<tr><td>DB-Tabellenpräfix<td><input id="table_prefix" /><td>Allen Tabellen in der Datenbank wird dieses Präfix vorangestellt. Damit können mehrere Applikationen eine gemeinsame Datenbank nutzen.</tr>
<tr><td>Zugangspasswort<td><input type="password" id="passwd" /><td>Passwort, welches vor der Nutzung von OrderSprinter Spider eingegeben werden muss.</tr>
<tr><td colspan=3><input type="submit" id="startinstallbtn" value="Installation starten" style="width:100%;height:50px;"/></tr>
</table>
</form>
</div>

</body>

</html>