session_start();
if (!isset($_POST["username"]) || empty($_POST["username"])) {
    throw new Exception('Bitte geben Sie einen Nutzernamen ein.');
} else {
    if (!isset($_POST["email"]) || empty($_POST["email"]) || !filter_var($_POST["email"], FILTER_VALIDATE_EMAIL)) {
        throw new Exception('Bitte geben Sie eine gültige E-Mail-Adresse ein.');
    } else {
        if (!isset($_POST["password"]) || empty($_POST["password"])) {
            throw new Exception('Bitte geben Sie ein Passwort ein.');
        }
    }
}
require_once "db_connect.php";
require_once "user.php";
$username = $_POST["username"];
$email = $_POST["email"];
$password = $_POST["password"];
try {
    $dbc = new DBConnect();
    $user = User::getUserByEmail($email);
    if ($user != null) {
        throw new Exception('Es gibt bereits einen Nutzer mit dieser E-Mail-Adresse.');
    }
    $user = new User(null, $username, $email, $password);
    $success = $dbc->insertUser_db($user);
    if ($success) {
        echo 'Registrierung erfolgreich abgeschlossen.';
    }
} catch (Exception $e) {
    echo "Registrierung konnte nicht abgeschlossen werden.\n" . $e->getMessage();
}