diff --git a/adminforce/index.php b/adminforce/index.php
index 81a5868c5e487c1456b0faeacb8820ac28398f65..d0e1fe21ad40e6dbc948b82e80d6152e1b8c3969 100644
--- a/adminforce/index.php
+++ b/adminforce/index.php
@@ -23,7 +23,8 @@
     require_once('lib/layout.lib.php');
     require_once( '../lib/extras.lib.php' );
 	require_once('lib/run.inc.php');
-
+	$grundconfig = $datenbank->get_row("SELECT * FROM ". PREFIX . CONFIG ." ",true);
+    
     $shows = 0;
     if (!isset($_GET['page'])) $_GET['page'] = '/startseite';
     if (!file_exists('page'.$_GET['page'].'.php')) $_GET['page'] = '/error/keine_seite';
diff --git a/adminforce/lib/class/grundeinstellung.class.php b/adminforce/lib/class/grundeinstellung.class.php
index 47184867731b500522aca2dd19522d5df261047d..79a11ab6e4d9fe2f65f9b5c5260b909a0e7a3f9d 100644
--- a/adminforce/lib/class/grundeinstellung.class.php
+++ b/adminforce/lib/class/grundeinstellung.class.php
@@ -40,7 +40,7 @@ class grundeinstellung{
 		$aus = '<form method="post" action="">
 			<div class="form-group">
 				<label for="exampleInputEmail1">Anzahl Refebenen</label>
-				<input type="number" class="form-control" name="refEbenen" value="'.$this->config->RefEbenen .'">
+				<input type="number" class="form-control" name="AnzrefEbenen" value="'.$this->config->RefEbenen .'">
 				<small id="emailHelp" class="form-text text-muted">Sollten es mehr Refebenen werden, bitte erst die Anzahl Speichern und dann die Verg&uuml;tungen eintragen</small>
 			</div>
 			<div class="row">';
@@ -72,10 +72,9 @@ class grundeinstellung{
 	}
 	
 	public function RefVergSave($post){
-		if(is_numeric($post['refEbenen'])){ $RefEbenen = $post['refEbenen'];}else{ $RefEbenen = 0;}
-		echo $RefEbenen;
-		if(empty($post['refebenen'])){ $refebenen = '';}else{ $refebenen = implode(";",$post['refebenen']);}
-		if($this->db->update(PREFIX . CONFIG, array("RefEbenen" => $RefEbenen, "RefVerg" => $refebenen), array("id" => 3)) == true){
+		if(is_numeric($post['AnzrefEbenen'])){ $AnzRefEbenen = $post['AnzrefEbenen'];}else{ $AnzRefEbenen = 0;}
+		if(empty($post['refebenen'])){ $refebenen = 0;}else{ $refebenen = implode(";",$post['refebenen']);}
+		if($this->db->update(PREFIX . CONFIG, array("RefEbenen" => $AnzRefEbenen, "RefVerg" => $refebenen), array("id" => 1)) == true){
 			meldung(0,REFEBENEN_SAVE_TRUE);
 		}else{
 			meldung(1,REFEBENEN_SAVE_FALSE);
diff --git a/adminforce/lib/lang/lang.de.php b/adminforce/lib/lang/lang.de.php
index 2f7e7faf8adb42c73134a9794b6599b6a11a12d4..d4c60ed5f5f07da8ed6b747f745c1440b9cc3d5d 100644
--- a/adminforce/lib/lang/lang.de.php
+++ b/adminforce/lib/lang/lang.de.php
@@ -110,4 +110,8 @@
 	define("BOX_SAVE_FALSE","Die Box konnte nicht angelegt werden.<br>");
 	define("BOX_DELETE_TRUE","Die Box wurde erfolgreich gel&ouml;scht.<br>");
 	define("BOX_DELETE_FALSE","Die Box konnte nicht gel&ouml;scht werden.<br>");
+	
+//Interface
+	define("INTERFACE_SAVE_TRUE","Daten erfolgreich gespeichert.<br>");
+	define("INTERFACE_SAVE_FALSE","Fehler beim Speichern der Daten.<br>");
 ?>
diff --git a/lib/class/anmelden.class.php b/lib/class/anmelden.class.php
index fc391e360c6c66e4ac9850bab9206fd53db7d3fd..0ab1f4740b761ea3a8cc76fe35dc2f3088792508 100644
--- a/lib/class/anmelden.class.php
+++ b/lib/class/anmelden.class.php
@@ -1,27 +1,46 @@
 <?php
 
-require_once('lib/extra/mail.php');
-$mail_senden = new send_smtp_mail();
-
 class ANMELDEN{
 	
 	protected $uid;
 	protected $ak;
 	protected $werber;
+	private $db;
+	private $error = 0;
+	private $meldung;
+	private $post = array;
+	private $config;
+	private $session;
+	
+	public function __construct(){
+		global $datenbank,$grundconfig,$_SESSION;
+		$this->db = $datenbank;
+		$this->config = $grundconfig;
+		$this->session = $_SESSION;
+	}
+	
+	private function make_array($post){
+		foreach($post AS $key => $value){
+			if($key != '' && $value = ''){
+				$this->post[$key] = $this->db->escape($value);
+			}
+		}
+	}
 	
 	function anmelden_los(){
-		global $datenbank,$error,$meldung;
+		global $_POST;
+		$this->make_array($_POST);
 		$this->pruef();
-		if($error == 0){
+		if($this->error == 0){
 			$this->escapen();
-			$this->konto($_POST['password1']);
+			$this->konto($this->post['password1']);
 			$this->email();
 			$this->user();
 			$this->werber();
 			$this->nickpage();
 			$this->aktivierung();
 			$this->ak_senden();
-			if($error == 0){
+			if($this->error == 0){
 				return true;
 			}else{
 				return false;
@@ -29,21 +48,13 @@ class ANMELDEN{
 		}
 	}
 	
-	function escapen(){
-		global $datenbank,$_POST;
-		foreach($_POST AS $key => $value){
-			$_POST[$key] = $datenbank->escape($value);
-		}
-	}
-	
 	function ak_senden(){
-		global $mail_senden,$grundconfig,$_POST;
-		$betreff = "Ihre Anmeldung auf ". $grundconfig->seitenname;
-		$email_message = 'Hallo ' . $_POST['nickname'] . ',
-    	Du hast Dich soeben erfolgreich bei ' . $grundconfig->seitenname . ' angemeldet.
+		$betreff = "Ihre Anmeldung auf ". $this->config->seitenname;
+		$email_message = 'Hallo ' . $this->post['nickname'] . ',
+    	Du hast Dich soeben erfolgreich bei ' . $this->config->seitenname . ' angemeldet.
 
     	Bitte aktiviere jetzt Deinen Account, klicke dazu bitte auf den
-    	Aktivierungslink: ' . $grundconfig->domain . '/?page=/intern/aktivieren&ak=' . $this->ak . '
+    	Aktivierungslink: ' . $this->config->domain . '/?page=/intern/aktivieren&ak=' . $this->ak . '
 
     	----------------------------------------------------------
     	Kontonummer: ' . $this->uid . '
@@ -54,68 +65,63 @@ class ANMELDEN{
     	uns teilnehmen.
 
     	Mit freundlichen Grüßen
-    	Das ' . $grundconfig->seitenname . ' Team
+    	Das ' . $this->config->seitenname . ' Team
     	';
-		$mail_senden->senden($_POST['emailadresse'],$betreff,$email_message);
+		$Class = Classloader('mail');
+		$Class->senden($_POST['emailadresse'],$betreff,$email_message);
 	}
 	
 	function aktivierung(){
-		global $datenbank;
 		$this->ak = md5($this->uid . time() );
 		$insert = array(
 			"uid" => $this->uid,
 			"ak" => $this->ak
 		);
-		$datenbank->insert(PREFIX . AKT , $insert);
+		$this->db->insert(PREFIX . AKT , $insert);
 	}
 	
 	function nickpage(){
-		global $datenbank;
 		$insert = array(
 			"uid" => $this->uid
 		);
-		$datenbank->insert(PREFIX . NICKP, $insert);
+		$this->db->insert(PREFIX . NICKP, $insert);
 	}
 	
 	function werber(){
-		global $datenbank,$_POST,$_SESSION;
 		$insert = array(
 			"uid" => $this->uid,
-			"werber" => $this->werber_select($_SESSION['werber']),
+			"werber" => $this->werber_select($this->session['werber']),
 			"umsatz" => 0,
 			"zuordnungszeit" => time()
 		);
-		$datenbank->insert(PREFIX . WERBER , $insert);
+		$this->db->insert(PREFIX . WERBER , $insert);
 	}
 	
 	function user(){
-		global $datenbank,$_POST;
 		$insert = array(
 			"uid" => $this->uid,
-			"nickname" => $_POST['nickname'],
-			"vorname" => $_POST['vorname'],
-			"nachname" => $_POST['nachname'],
+			"nickname" => $this->post['nickname'],
+			"vorname" => $this->post['vorname'],
+			"nachname" => $this->post['nachname'],
 			"angemeldet_seit" => time(),
-			"bdate" => $this->bdate($_POST['bdate'])
+			"bdate" => $this->bdate($this->post['bdate'])
 		);
-		$datenbank->insert(PREFIX . USER , $insert);
+		$this->db->insert(PREFIX . USER , $insert);
 	}
  
 	function konto($pass){
-		global $datenbank;
 		$pw = pw_erstellen($pass);
-		$datenbank->insert(PREFIX . KONTO, array("passwort" => $pw, "status" => 0));
+		$this->db->insert(PREFIX . KONTO, array("passwort" => $pw, "status" => 0));
 		$this->uid = $datenbank->lastid();
 	}
 	
 	function email(){
-		global $datenbank;
 		$insert = array(
 			"uid" => $this->uid,
-			"emailadresse" => $_POST['emailadresse'],
-			"freigabe_fuer" => $_POST['newsletter']
+			"emailadresse" => $this->post['emailadresse'],
+			"freigabe_fuer" => $this->post['newsletter']
 		);
-		$datenbank->insert(PREFIX . EMAIL , $insert);
+		$this->db->insert(PREFIX . EMAIL , $insert);
 	}
 	
 	function bdate($date){
@@ -125,66 +131,60 @@ class ANMELDEN{
 	}
 	
 	function pruef(){
-		global $_POST,$error,$meldung;
-		if(empty($_POST['nachname'])){ $error = 1; $meldung .= ANMELDEN_NAME_FALSE;}
-		if(empty($_POST['bdate'])){ $error = 1; $meldung .= ANMELDEN_GEB_FALSE;} 
-		if(empty($_POST['vorname'])){ $error = 1; $meldung .= ANMELDEN_VORNAME_FALSE;}
-		$this->mailadresse($_POST['emailadresse']);
-		$this->nickname($_POST['nickname']);
-		$this->pass($_POST['password1'],$_POST['password2']);
-		if($_POST['agb'] != "ja"){ $error = 1; $meldung .= ANEMLDEN_AGB_FALSE; }
+		if(empty($this->post['nachname'])){ $this->error = 1; $this->meldung .= ANMELDEN_NAME_FALSE;}
+		if(empty($this->post['bdate'])){ $this->error = 1; $this->meldung .= ANMELDEN_GEB_FALSE;} 
+		if(empty($this->post['vorname'])){ $this->error = 1; $this->meldung .= ANMELDEN_VORNAME_FALSE;}
+		$this->mailadresse($this->post['emailadresse']);
+		$this->nickname($this->post['nickname']);
+		$this->pass($this->post['password1'],$_POST['password2']);
+		if($this->post['agb'] != "ja"){ $this->error = 1; $this->meldung .= ANEMLDEN_AGB_FALSE; }
 	}
 	
 	function mail_denied($mail){
-		global $datenbank,$grundconfig,$error,$meldung;
-		$denied = explode(';', $grundconfig->denied_domains);
-		if($grundconfig->ip_erlaubt != ''){
-			$ip_denied = explode(',', $pageconfig['ip_erlaubt']);
+		$denied = explode(';', $this->config->denied_domains);
+		if($this->config->ip_erlaubt != ''){
+			$ip_denied = explode(',', $this->config->ip_erlaubt);
 			if(!in_array(geoIP($ip),$ip_denied)){
-				$error = 1;
-				$meldung .= ANMELDEN_IP_FALSE;}
+				$this->error = 1;
+				$this->meldung .= ANMELDEN_IP_FALSE;}
 		}
 		foreach ($denied AS $nr => $emaildomain){
 			if (($nr < (count ($denied) - 2) || strlen ($emaildomain) >= 5) && strpos ($mail, $emaildomain) !== false){
-				$error = 1;
-				$meldung .= ANMELDEN_MAIL_ANBIETER_FALSE;
+				$this->error = 1;
+				$this->meldung .= ANMELDEN_MAIL_ANBIETER_FALSE;
 			}
 		}
 	}
 	
 	function mailadresse($mail){
-		global $datenbank,$error,$meldung;
-		if(!filter_var( $mail, FILTER_VALIDATE_EMAIL )) { $error = 1; $meldung .= ANMELDEN_EMAIL_FALSE;}
-		$select = $datenbank->num_rows("SELECT * FROM ". PREFIX . EMAIL ." WHERE emailadresse = '$mail' ");
+		if(!filter_var( $mail, FILTER_VALIDATE_EMAIL )) { $this->error = 1; $this->meldung .= ANMELDEN_EMAIL_FALSE;}
+		$select = $this->db->num_rows("SELECT * FROM ". PREFIX . EMAIL ." WHERE emailadresse = '$mail' ");
 		if($select == true){
-			$error = 1;
-			$meldung .= ANMELDEN_MAIL_EXIST;
+			$this->error = 1;
+			$this->meldung .= ANMELDEN_MAIL_EXIST;
 		}
 		$this->mail_denied($mail);
 	}
 	
 	function pass($pass1,$pass2){
-		global $error,$meldung;
-		if(empty($pass1)){ $error = 1; $meldung .= ANMELDEN_PASS1_FALSE;}
-		if(empty($pass2)){ $error = 1; $meldung .= ANMELDEN_PASS2_FALSE;}
-		if($pass1 != $pass2){ $error = 1; $meldung .= ANMELDEN_PASS_KONTROLLE_FALSE;}
-		if(strlen($pass1) < 8){ $error = 1; $meldung .= ANMELDEN_PASS_SHORT; }
+		if(empty($pass1)){ $this->error = 1; $this->meldung .= ANMELDEN_PASS1_FALSE;}
+		if(empty($pass2)){ $this->error = 1; $this->meldung .= ANMELDEN_PASS2_FALSE;}
+		if($pass1 != $pass2){ $this->error = 1; $this->meldung .= ANMELDEN_PASS_KONTROLLE_FALSE;}
+		if(strlen($pass1) < 8){ $this->error = 1; $this->meldung .= ANMELDEN_PASS_SHORT; }
 	}
 	
 	function nickname($nick){
-		global $datenbank,$error,$meldung;
-		if(empty($nick)){$error = 1; $meldung = ANMELDEN_NICKNAME_FALSE;}
-		$select = $datenbank->exists(PREFIX . USER , 'nickname', array("nickname" => $datenbank->escape($nick)));
+		if(empty($nick)){$this->error = 1; $this->meldung = ANMELDEN_NICKNAME_FALSE;}
+		$select = $this->db->exists(PREFIX . USER , 'nickname', array("nickname" => $nick));
 		if($select == true){
-			$error = 1;
-			$meldung .= ANMLEDEN_NICKNAME_EXIST;
+			$this->error = 1;
+			$this->meldung .= ANMLEDEN_NICKNAME_EXIST;
 		}
 	}
 	
 	function werber_select($werber){
-		global $datenbank;
 		if($werber != ''){
-			$ab = $datenbank->exists(PREFIX . USER , 'uid' , array("uid" => $datenbank->escape($werber)));
+			$ab = $this->db->exists(PREFIX . USER , 'uid' , array("uid" => $werber));
 			if(!is_numeric($werber) OR $ab == false){
 				$this->werber = 0;
 			}
diff --git a/lib/extra/mail.php b/lib/extra/mail.php
index cb51ea2c24617993f0ad23908e8374586d11c6a7..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644
--- a/lib/extra/mail.php
+++ b/lib/extra/mail.php
@@ -1,46 +0,0 @@
-<?php
-use PHPMailer\PHPMailer\PHPMailer;
-use PHPMailer\PHPMailer\Exception;
-
-require_once $_SERVER['DOCUMENT_ROOT'].'/lib/class/phpmailer/Exception.php';
-require_once $_SERVER['DOCUMENT_ROOT'].'/lib/class/phpmailer/PHPMailer.php';
-require_once $_SERVER['DOCUMENT_ROOT'].'/lib/class/phpmailer/SMTP.php';
-
-class send_smtp_mail{
-
-		public function senden($mail_adresse,$betreff,$nachricht){
-			global $grundconfig;
-			$mailer = new PHPMailer();
-			$mailer->SMTPDebug = 0;                                 // Enable verbose debug output
-			$mailer->isSMTP();                                      // Set mailer to use SMTP
-			$mailer->Host = $grundconfig->SMTP_HOST;  // Specify main and backup SMTP servers
-			$mailer->SMTPAuth = true;                               // Enable SMTP authentication
-			$mailer->Username = $grundconfig->SMTP_LOGIN;                 // SMTP username
-			$mailer->Password = $grundconfig->SMTP_PASS;                           // SMTP password
-			$mailer->SMTPSecure = $grundconfig->SMTP_VERBINDUNG;                            // Enable TLS encryption, `ssl` also accepted
-			$mailer->Port = $grundconfig->SMTP_PORT;   
-			$mailer->SMTPOptions = array(
-				'ssl' => array(
-					'verify_peer' => false,
-					'verify_peer_name' => false,
-					'allow_self_signed' => true
-				)
-			);	// TCP port to connect to
-			$mailer->CharSet = 'UTF-8'; // Charset setzen (für richtige Darstellung von Sonderzeichen/Umlauten)
-			$mailer->setFrom($grundconfig->betreibermail,$grundconfig->seitenname); // Absenderemail und -name setzen
-			$mailer->addAddress($mail_adresse); // Empfängeradresse
-			$mailer->isHTML(true);
-			$mailer->Subject = $betreff; // Betreff der Email
-			$mailer->Body = $nachricht; // Inhalt der Email
-			
-			if(!$mailer->Send()){
-				return false;
-			}else{
-				return true;
-			}
-			
-			return $error;
-			
-		}
-}
-?>
diff --git a/lib/functions.lib.php b/lib/functions.lib.php
index 5b78136936216e77f4d75233e13b4a17748c1336..d8a853412a6eaa63ebb825e2bed88e7f86295f2e 100644
--- a/lib/functions.lib.php
+++ b/lib/functions.lib.php
@@ -274,4 +274,17 @@ function imageToBase65 ( $file = NULL ) {
     $content = file_get_contents ( $file );
 	return 'data:image/'.$type[1].';base64,'.base64_encode( $content );   
 }
+
+function getURL($url,$post = 0){
+	$curl = curl_init();
+    curl_setopt($curl,CURLOPT_URL,$url);
+    if($post == 1){
+		curl_setopt($curl,CURLOPT_POST,1);
+		curl_setopt($curl,CURLOPT_POSTFIELDS,$curl_post);
+	}
+	curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
+    $content = curl_exec($curl);
+    curl_close($curl);
+    return $content;
+}
 ?>
diff --git a/page/konto/profil_include/nickpage.php b/page/konto/profil_include/nickpage.php
index 0602491fbbd435402f10e91fc5c693c96372a945..511578722b009ced5824d84d18d90c48fc069d79 100644
--- a/page/konto/profil_include/nickpage.php
+++ b/page/konto/profil_include/nickpage.php
@@ -68,7 +68,7 @@
 		</tr>
 	</table>
 	<div class="text-center">
-		<input type="submit" name="runaendern_nickpage]" class="btn btn-success" value="Speichern">
+		<input type="submit" name="run[aendern_nickpage]" class="btn btn-success" value="Speichern">
 	</div>
 </form>