<?php

namespace App\Http\Controllers;
use Illuminate\Routing\Controller as BaseController;
use App\Models\Benutzer;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Session;


class AnmeldungController extends BaseController
{

    public function start(){
        return view(
            'm5_a1.anmeldung',
            []
        );
    }

    public function anmeldung_verifizieren(Request $rd){

        if($rd->isMethod("post")){
            $data = $rd;}

        $email = $data["email"] ?? NULL;
        $passwort = $data["passwort"] ?? NULL;

        $benutzer = new Benutzer();
        $anmeldung = $benutzer->anmelden($email, sha1($passwort));

        if($anmeldung){
            Log::info('Anmeldung erfolgreich!');
        }
        else{
            Log::info('Anmeldung fehlgeschlagen!');
        }

        return view(
            'm5_a1.anmeldung_verifizieren',
            [
                'email' => $email,
                'passwort' => $passwort,
                'anmeldung' => $anmeldung
            ]
        );
    }

    public function check(Request $rd){

        $data = $rd;

        $email = $data->email ?? NULL;
        $passwort = $data->passwort ?? NULL;
        $anmeldung = $data->anmeldung ?? NULL;
        Session::put("anmeldung", 1);

        return view(
            'm5_a1.anmeldung',
            [
                'email' => $email,
                'passwort' => $passwort,
                'anmeldung' => $anmeldung,
                'data' => $data
            ]
        );
    }


    function abmelden(){

        session()->pull("anmeldung");
        session()->pull("start");
        session()->pull("name");
        session()->pull("uid");
        session()->pull("email");
        session()->pull("bewertung");

        session()->regenerate();


        Log::info('Abmeldung erfolgreich!');

        return view('m5_a1.abmeldung', []);
    }
}
