diff --git a/index.php b/index.php
index 6728918740121f81874d6789323505168f299b60..5564d9b3f6feb1f1f7b45c07337ec7b371eda180 100644
--- a/index.php
+++ b/index.php
@@ -3,32 +3,10 @@
 if(!file_exists (__dir__ .'/lib/db_config.php' )){
 	header ("location: /install/index.php");
 }
-session_start();
-require_once(__dir__ .'/lib/db_config.php');
-require_once(__dir__ .'/lib/class/db.class.php');
-require_once(__dir__ .'/lib/var.php');
-$grundconfig = $datenbank->get_row("SELECT * FROM ". PREFIX . CONFIG ." ",true);
-require_once(__dir__ .'/lib/session.lib.php');
-require_once(__dir__ .'/lib/lang/lang.de.php');
-require_once (__dir__ .'/lib/functions.lib.php');
-require_once (__dir__ .'/lib/run.inc.php');
-require_once (__dir__ .'/lib/layout.lib.php');
-require_once (__dir__ .'/lib/extras.lib.php');
-require_once (__dir__ .'/lib/extra/mail.php');
-ReloadDelete();
 
-if (!isset($_GET['page']) || empty ($_GET['page'])) 	$_GET['page'] = '/intern/startseite';
-if (!file_exists('page' . $_GET['page'] . '.php')) 		$_GET['page'] = '/error/keine_seite';
-if ($_GET['page'] == '/intern/startseite') 				require_once (__dir__ .'/lib/texte/alt_startseitenpopup.txt');
-if ($_GET['page'] == '/betteln') 						require_once (__dir__ .'/lib/texte/alt_bettelseitenpopup.txt');
+session_start();
 
-CheckLogin();
-$CountDownTime = 0;
-$start_reload = "SELECT * FROM ". PREFIX . RELOAD ." WHERE uid = '".$datenbank->escape($_SESSION['uid']) ."' and tan = 'startseitenaufruf' and bis >= '". time() ."'";
-if ($datenbank->num_rows($start_reload) != 0) {
-	$start = $datenbank->get_row($start_reload,true);
-	$CountDownTime = $start->bis;
-}
+require(__dir__ .'/lib/autoload.php');
 ?>
 
 <!DOCTYPE html>
diff --git a/install/db.default.php b/install/db.default.php
index b3d807a19844f22dc49ad5be776fc70a81a046fa..0ffe8fc5dbcb805ac96c521105067eabbe2bab8c 100644
--- a/install/db.default.php
+++ b/install/db.default.php
@@ -57,4 +57,8 @@
 	
 	// Verschlsselungspasswort
 	define("VER_SCHLUESSEL","???SCHLUESSEL???");
+	
+	//Seitenconstante
+	
+	const DIR_FS = '???DIR???';
 ?>
diff --git a/install/install.class.php b/install/install.class.php
index 4483b4bc7fb459179e4867471f6ad095a3da189e..53c500121407e3e7fafbe52731b86c1a33521bf0 100644
--- a/install/install.class.php
+++ b/install/install.class.php
@@ -43,6 +43,7 @@ class Install{
 		$file = str_replace("???PREFIX???",$this->array['prefix'],$file);
 		$file = str_replace("???SCHLUESSEL???", create_code(16),$file);
 		$file = str_replace("???PW???", create_code(4),$file);
+		$file = str_replace("???DIR???", __dir__ );
 		$datei = fopen("../lib/db_config.php","w");
 		fwrite($datei, $file,100000);
 		fclose($datei);
diff --git a/lib/autoload.php b/lib/autoload.php
new file mode 100644
index 0000000000000000000000000000000000000000..dc527a9ef0eea8c750e6c9eb21ed35edcee56a9b
--- /dev/null
+++ b/lib/autoload.php
@@ -0,0 +1,30 @@
+<?php
+
+require_once( 'db_config.php');
+require_once( 'class/db.class.php');
+require_once( 'var.php');
+$grundconfig = $datenbank->get_row("SELECT * FROM ". PREFIX . CONFIG ." ",true);
+require_once( 'session.lib.php');
+require_once( 'lang/lang.'. $_SESSION['lang'] .'.php');
+require_once ( 'functions.lib.php');
+require_once ( 'run.inc.php');
+require_once ( 'layout.lib.php');
+require_once ( 'extras.lib.php');
+require_once ( 'extra/mail.php');
+ReloadDelete();
+
+if (!isset($_GET['page']) || empty ($_GET['page'])) 	$_GET['page'] = '/intern/startseite';
+if (!file_exists('page' . $_GET['page'] . '.php')) 		$_GET['page'] = '/error/keine_seite';
+if ($_GET['page'] == '/intern/startseite') 				require_once ( 'texte/alt_startseitenpopup.txt');
+if ($_GET['page'] == '/betteln') 						require_once ( 'texte/alt_bettelseitenpopup.txt');
+LoadLanguageFile();
+
+CheckLogin();
+$CountDownTime = 0;
+$start_reload = "SELECT * FROM ". PREFIX . RELOAD ." WHERE uid = '".$datenbank->escape($_SESSION['uid']) ."' and tan = 'startseitenaufruf' and bis >= '". time() ."'";
+if ($datenbank->num_rows($start_reload) != 0) {
+	$start = $datenbank->get_row($start_reload,true);
+	$CountDownTime = $start->bis;
+}
+
+?>
\ No newline at end of file
diff --git a/lib/class/session.class.php b/lib/class/session.class.php
index 5105a1e6fdff0790de1c8d29ed4f8d869f1867be..316f33f4718f39e0b007078cecb454d06853987f 100644
--- a/lib/class/session.class.php
+++ b/lib/class/session.class.php
@@ -68,6 +68,7 @@ class SESSION{
 					$_SESSION['admin'] = $user->admin;
 					$_SESSION['passwort'] = $user->passwort;
 					$_SESSION['login'] = true;
+					$_SESSION['lang'] = 'de';
 					$meldung = LOGIN_SESSION_TRUE;
 				}
 				header ("location: " . $grundconfig->domain);
@@ -109,6 +110,7 @@ class SESSION{
 					$_SESSION['passwort'] = $login_check->passwort;
 					$_SESSION['admin'] = $login_check->admin;
 					$_SESSION['login'] = true;
+					$_SESSION['lang'] = 'de';
 				}
 			}
 		}
diff --git a/lib/class/start.class.php b/lib/class/start.class.php
index ecb4d4d82ad072409744ba7089e4f2205d3e090f..a216f7bad9b5e84573e4fb69312ebe3508179cf1 100644
--- a/lib/class/start.class.php
+++ b/lib/class/start.class.php
@@ -1,6 +1,6 @@
 <?php
 
-class START{
+class start{
 	private $db;
 	private $session = array();
 	private $grund;
@@ -10,7 +10,7 @@ class START{
 	private $reload = 0;
 	private $ip;
 	
-	function __construct(){
+	public function __construct(){
 		global $datenbank,$_SESSION,$grundconfig;
 		$this->db = $datenbank;
 		$this->session = $this->db->escape($_SESSION);
@@ -39,7 +39,7 @@ class START{
 			"datum" => time(),
 			"betrag" => $this->grund->verdienst_start
 		);
-		$this->db->insert(START_LOG, $array);
+		$this->db->insert(PREFIX . START_LOG, $array);
 	}
 	
 	private function StatistikUpgrade(){
diff --git a/lib/functions.lib.php b/lib/functions.lib.php
index be27524d1dc0bdd08bc24ded943bf34b7022e029..7bfd642c976f1072435ffaa11db12e3746a8d11f 100644
--- a/lib/functions.lib.php
+++ b/lib/functions.lib.php
@@ -308,4 +308,11 @@ function IMGtoBase64 ( $file = NULL, $ordner = NULL ) {
 		return '';
 	}
 }
+
+function LoadLanguageFile(){
+	global $_GET;
+	if(file_exists(DIR_FS .'/lib/lang/'. $_SESSION['lang'] .'/seiten'. $_GET['page'] .'.php')){
+		require DIR_FS .'/lib/lang/'. $_SESSION['lang'] .'/seiten'. $_GET['page'] .'.php';
+	}
+}
 ?>
diff --git a/lib/lang/de/index.html b/lib/lang/de/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/lib/lang/de/seiten/index.html b/lib/lang/de/seiten/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/lib/lang/de/seiten/intern/anmelden.php b/lib/lang/de/seiten/intern/anmelden.php
new file mode 100644
index 0000000000000000000000000000000000000000..2035d16b2cc117aed144ce443aa48f9a96fae4e9
--- /dev/null
+++ b/lib/lang/de/seiten/intern/anmelden.php
@@ -0,0 +1,28 @@
+<?php
+
+const ANMELDEN_NEU = 'Neuanmeldung';
+
+const ANMELDEN_NICKNAME = 'Nickname';
+const ANMELDEN_VORNAME = 'Vorname';
+const ANMELDEN_NACHNAME = 'Nachname';
+const ANMELDEN_GEB = 'Geburtstag';
+const ANMELDEN_MAIL = 'E-Mail Adresse';
+const ANMELDEN_PASS = 'Passwort';
+const ANMELDEN_PASS_W = 'Passwort wiederholen';
+const ANMELDEN_WERBER = 'Werber';
+const ANMELDEN_NEWSLETTER = 'Newsletter entpfangen';
+const ANMELDEN_AGB = 'AGB gelesen und akzeptiert';
+const ANMELDEN_DATA = 'Datenschutzerkl&auml;rung gelesen und akzeptiert';
+
+const ANMELDEN_INFO = 'Vor dem Anmelden lese bitte die AGB und Datenschutzrichtlinien!';
+
+const ANMELDEN_TRUE = 'Anmeldung erfolgreich';
+
+const ANMELDEN_TRUE_MAIL = 'Deine Anmeldung war erfolgreich, Du bekommst jetzt eine Email mit Deinen Daten und einen Aktivierungslink.
+			Sobald Du deinen Account aktiviert hast kannst Du dich bei uns einloggen und diese Seite im vollen Umfang nutzen.<br>
+			<br>
+			Bitte beachte dass es auch etwas dauern kann bis die Aktivierungsmail bei Dir ankommt, dieses ist anhängig von Deinem Emailanbieter.<br>';
+
+const ANMELDEN_TRUE_MANUELL = 'Deine Anmeldung wurde erfolgreich registriert.<br>
+			Ein Admin wird nun diese Prüfen und gegebenfalls freischalten.<br>
+			&Uuml;ber diesen Vorgang wirst du per E-Mail Informiert.';
\ No newline at end of file
diff --git a/lib/lang/de/seiten/intern/index.html b/lib/lang/de/seiten/intern/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/lib/layout.lib.php b/lib/layout.lib.php
index f70bf49ee76508d0b9b5ee87ab286968f5b4e779..4298cdd3b5a206490e1bfd0c9e47243095107472 100644
--- a/lib/layout.lib.php
+++ b/lib/layout.lib.php
@@ -71,10 +71,31 @@ echo'</div></div><hr>';
  * @example table_head("hier,jede,Spalte,eintragen","table table-striped");
  * @return  HTML Code für Tabellenkopf einer Tabelle
  */
-function table_head($style,$array){
+function table_head($array = NULL,$style = ''){
 	echo '<table class="'. $style .'">';
-	$tr = explode(",",$array);
-	foreach($tr as $t) echo '<th>'. $t .'</th>';
+	if($array != NULL){
+		$tr = explode(",",$array);
+		foreach($tr as $t) echo '<th>'. $t .'</th>';
+	}
+}
+
+/**
+ * table_body()
+ *
+ * @author vms1-scripte.de
+ * @example table_body(array(array("spalte 1.1","spalte 1.2"), array("Spalte 2.1", "Spalte 2.2")));
+ * @return  HTML Code für Tabellenkopf einer Tabelle
+ */
+function table_body($array){
+	$aus = '';
+	for($i = 0; $i <= count($array)-1; $i++){
+		$aus .= '<tr>';
+		for($ii = 0; $ii <= count($array[$i])-1; $ii++){
+			$aus .= '<td>'. $array[$i][$ii] .'</td>';
+		}
+		$aus .= '</tr>';
+	}
+	echo $aus;
 }
 
 /**
@@ -87,4 +108,65 @@ function table_head($style,$array){
 function table_foot(){
 	echo '</table>';
 }
+
+/**
+ * suee_add_input()
+ *
+ * @author vms1-scripte.de
+ * @example suee_add_input("name","text","Vorgabe","Platzhalter","andere variablen");
+ * @return HTML Code für Inputfeld
+ */
+
+function suee_add_input($name,$type,$value = NULL, $placeholder = NULL, $other = NULL){
+	$input = '<input type="';
+	$input .= $type .'"';
+	$input .= "name=\"$name\"";
+	
+	if($value != NULL){
+		$input .= "value=\"$value\"";
+	}
+	if($placeholder != NULL){
+		$input .= "placeholder=\"$placeholder\"";
+	}
+	
+	if($other != NULL){
+		$input .= $other;
+	}
+	
+	$input .= '>';
+	return $input;
+}
+
+/**
+ * suee_add_select()
+ * @author vms1-scripte.de
+ * @example suee_add_input("Name",array(array("value 1","Text 1), array("Value 2", "Text 2")));
+ * @return HTML Code für Select
+ */
+
+function suee_add_select($name,$option,$other = ''){
+	$select = '<select name="'. $name .'" '. $other .'>';
+	for($i = 0; $i <= count($option)-1; $i++){
+		$select .= '<option value="'. $option[$i][0] .'">'. $option[$i][1] .'</option>';
+	}
+	$select .= '</select>';
+	
+	return $select;
+}
+
+/**
+ * suee_add_alert()
+ * @author vms1-scripte.de
+ * $class kann success/alert/warning/info/danger sein
+ * @example suee_add_alert("Text im Alert","success", "text-bold text-center");
+ * @return HTML Code für div Alert
+ */
+
+function suee_add_alert($text,$class,$other = ''){
+	$alert = '<div class="alert alert-'. $class .' '. $other .'">';
+	$alert .= $text;
+	$alert .= '</div>';
+	
+	return $alert;
+}
 ?>
diff --git a/lib/var.php b/lib/var.php
index 10199a006064ca8d6879f162f8ec53b14966e93c..a5010a3200ea7e5c485065cc87f6dfa1043f0b9d 100644
--- a/lib/var.php
+++ b/lib/var.php
@@ -79,6 +79,7 @@ if(!isset($_SESSION['admin']))	{ $_SESSION['admin'] = 0;}
 if(!isset($_SESSION['login']))	{ $_SESSION['login'] = "";}
 if(!isset($_SESSION['werber'])) { $_SESSION['werber'] = "0";}
 if(!isset($_SESSION['uid'])) 	{ $_SESSION['uid'] = "0";}
+if(!isset($_SESSION['lang'])) 	{ $_SESSION['lang'] = "de";}
 
 //$_GET
 
diff --git a/page/intern/anmelden.php b/page/intern/anmelden.php
index 562b4d558cc8966b5b3aec47ddad58fb295d69cd..830dcc5991bb09c16fb598d5194be46c648b83de 100644
--- a/page/intern/anmelden.php
+++ b/page/intern/anmelden.php
@@ -1,97 +1,34 @@
 <?php
 if ($anmeldeok != true) {
-    head("$grundconfig->seitenname - Neuanmeldung");?>
-        <center><b>Neuanmeldung</b></center>
-        <form action="" method="post">
-            <table class="table table-striped">
-                <tr>
-                    <td class="main"><b>Nickname:</b></td>
-                    <td class="main"><input type="text" class="form-control" name="nickname" value="<?php echo $_POST['nickname'];?>"></td>
-                </tr>
-                <tr>
-                    <td class="main"><b>Vorname:</b></td>
-                    <td class="main"><input type="text" class="form-control" name="vorname" value="<?php echo $_POST['vorname'];?>"></td>
-                </tr>
-				<tr>
-					<th>Nachname</th>
-					<td><input type="text" class="form-control" name="nachname" value="<?php echo $_POST['nachname'];?>">
-				</tr>
-                <tr>
-                    <td class="main"><b>Emailadresse:</b></td>
-                    <td class="main"><input type="text" class="form-control" name="emailadresse" value="<?php echo $_POST['emailadresse'];?>"></td>
-                </tr>
-				<tr>
-                    <td class="main"><b>Geburtsdatum:</b></td>
-                    <td class="main"><input type="date" class="tcal" name="bdate" value="<?php echo $_POST['bdate'];?>"></td>
-                </tr>
-                <tr>
-                    <td class="main">Werber:</td>
-                    <td class="main">
-                    <?php if ($_SESSION['werber'] == 0) {
-                        echo '<b>keinen</b>';
-                    } else {
-                        echo $_SESSION['werber'];
-                    } ?></td>
-                </tr>
-                <tr>
-                    <td class="main"><b>Passwort:</b></td>
-                    <td class="main"><input type="password" class="form-control" name="password1"></td>
-                </tr>
-                <tr>
-                    <td class="main"><b>Passwortbestätigung:</b></td>
-                    <td class="main"><input type="password" class="form-control" name="password2"></td>
-                </tr>
-                <tr>
-                    <td class="main"><b>Newsletter:</b></td>
-                    <td class="main"><select name="newsletter" class="form-control"><option value="1"
-                    <?php if ($_POST['newsletter'] == "1") {
-                        echo 'selected';
-                    } ?>>Ja</option><option value="0" <?php if ($_POST['newsletter'] != "1") {
-                        echo 'selected';
-                    } ?>>Nein</option></select></td>
-                </tr>
-                <tr>
-                    <td class="main"><b>AGB gelesen und akzeptiert:</b></td>
-                    <td class="main"><select name="agb" class="form-control"><option value="ja"
-                    <?php if ($_POST['agb'] == "ja") {
-                        echo 'selected';
-                    } ?>>Ja</option><option value="nein" <?php if ($_POST['agb'] != "ja") {
-                        echo 'selected';
-                    } ?>>Nein</option></select></td>
-                </tr>
-				<tr>
-                    <td class="main"><b>Datenschutzerkl&auml;rung gelesen und akzeptiert:</b></td>
-                    <td class="main"><select name="data" class="form-control"><option value="ja"
-                    <?php if ($_POST['data'] == "ja") {
-                        echo 'selected';
-                    } ?>>Ja</option><option value="nein" <?php if ($_POST['data'] != "ja") {
-                        echo 'selected';
-                    } ?>>Nein</option></select></td>
-                </tr>
-                <tr>
-                    <td class="main" class="alert alert-warning text-center" colspan="2">
-                        Vor dem Anmelden lese bitte die AGB und Datenschutzrichtlinien!<br><br>
-                        <input type="submit" name="run[anmelden]" value="Jetzt anmelden!">
-                    </td>
-                </tr>
-            </table>
-        </form>
-    <?php foot();
+	$Anmelden_Felder = array(
+		array(ANMELDEN_NICKNAME, suee_add_input("nickname","text",$_POST['nickname'],NULL,'class="form-control"')),
+		array(ANMELDEN_VORNAME, suee_add_input("vorname","text",$_POST['nickname'],NULL,'class="form-control"')),
+		array(ANMELDEN_NACHNAME, suee_add_input("nachname","text",$_POST['nickname'],NULL,'class="form-control"')),
+		array(ANMELDEN_MAIL, suee_add_input("emailadresse","text",$_POST['nickname'],NULL,'class="form-control"')),
+		array(ANMELDEN_GEB, suee_add_input("bdate","date",$_POST['nickname'],NULL,'class="form-control"','class="tcal"')),
+		array(ANMELDEN_PASS, suee_add_input("password1","password",$_POST['nickname'],NULL,'class="form-control"')),
+		array(ANMELDEN_PASS_W, suee_add_input("password2","password",$_POST['nickname'],NULL,'class="form-control"')),
+		array(ANMELDEN_WERBER, suee_add_input("","text",$_SESSION['werber'],NULL,'class="form-control" disabled="disabled"')),
+		array(ANMELDEN_NEWSLETTER, suee_add_select("newsletter", array(array(0,"Ja"), array(1,"Nein")), 'class="form-control"')),
+		array(ANMELDEN_AGB, suee_add_select("agb", array(array(0,"Nein"), array(1,"Ja")), 'class="form-control"')),
+		array(ANMELDEN_DATA, suee_add_select("data", array(array(0,"Nein"), array(1,"Ja")), 'class="form-control"')),
+	);
+    head($grundconfig->seitenname .'-'. ANMELDEN_NEU);
+		echo '<center><b>'. ANMELDEN_NEU .'</b></center>
+				<form action="" method="post">';
+		table_head(NULL,"table table-striped");
+		table_body($Anmelden_Felder);
+		table_foot();
+		echo suee_add_alert(ANMELDEN_INFO,"warning","text-bold text-center");
+		echo suee_add_input("run[anmelden]","submit","Jetzt anmelden!",NULL,'class="btn btn-success btn-block"');
+		echo '</form>';
+	foot();
 } else {
-    head("$grundconfig->seitenname - Anmeldung erfolgreich!");
+    head($grundconfig->seitenname .'-'. ANMELDEN_TRUE);
 		if($grundconfig->reg_free == 1){
-			echo 'Deine Anmeldung bei '.$grundconfig->seitenname.' war erfolgreich, Du bekommst jetzt eine Email mit Deinen Daten und einen Aktivierungslink.
-			Sobald Du deinen Account aktiviert hast kannst Du dich bei uns einloggen und diese Seite im vollen Umfang nutzen.<br>
-			<br>
-			Bitte beachte dass es auch etwas dauern kann bis die Aktivierungsmail bei Dir ankommt, dieses ist anhängig von Deinem Emailanbieter.<br>
-			';
+			echo suee_add_alert(ANMELDEN_TRUE_MAIL,"success", "text-dark");
 		}else{
-			echo 'Deine Anmeldung wurde erfolgreich registriert.<br>
-			Ein Admin wird nun diese Prüfen und gegebenfalls freischalten.<br>
-			&Uuml;ber diesen Vorgang wirst du per E-Mail Informiert.'
+			echo suee_add_alert(ANMELDEN_TRUE_MANUELL,"info","text-dark");
 		}
-		echo '<br>
-			Mit freundlichen Grüßen<br>
-			Das '.$grundconfig->seitenname.' Team<br>';
     foot();
 }
diff --git a/page/start.php b/page/start.php
index acedfe008c308eee7e34cad943b69b7317d8d2e7..77b7572e65595735844153c09c376f801983b5e9 100644
--- a/page/start.php
+++ b/page/start.php
@@ -1,15 +1,14 @@
 <?php
 
-require_once('lib/class/start.class.php');
-$Pay4Start = new START;
+$Pay4Start = Classloader('start');
 
 if ($grundconfig->popup_start == 0) {
 	head("");
 	$row = $Pay4Start->StartAbruf();
-	if($row->error == 1){ $alert = 'danger';}else{$alert = 'success';}
+	if($row['error'] == 1){ $alert = 'danger';}else{$alert = 'success';}
 	echo '
 		<div class="alert alert-'. $alert .'">
-			'. $row->meldung .'
+			'. $row['meldung'] .'
 		</div>
 	';
 	foot();