Subversion-Projekte lars-tiefland.webanos.faltradxxs.de

Revision

Revision 16 | Revision 20 | Zur aktuellen Revision | Blame | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

<?php

    namespace App\Http\Controllers;

    use App\Http\Controllers\Controller;
    use App\Http\Requests\Auth\LoginRequest;
    use App\Providers\RouteServiceProvider;
    use Illuminate\Http\RedirectResponse;
    use Illuminate\Http\Request;
    use Illuminate\Support\Facades\Auth;
    use Illuminate\Validation\ValidationException;
    use Illuminate\View\View;

    class BackendController extends Controller
    {
        /**
         * Display the login view.
         */
        public function create(): View
        {
            return view( 'admin.login' );
        }

        private function getUserRechte()
        {
            $uId = auth()->id();
            $user_rechte = UserProperty::where( "user_id", "=", $uId )->get();
            return $user_rechte;
        }

        /**
         * Handle an incoming authentication request.
         */
        public function store( LoginRequest $request ): RedirectResponse
        {
            try
            {
                $request->authenticate();
                $_SESSION["admin"]["uid"] = auth()->id();
                $_SESSION["admin"]["user"] = auth()->user();
                \View::share( "user_rechte", $this->getUserRechte() );
                $request->session()->regenerate();
            }
            catch ( ValidationException $e )
            {
                dd( $e->getMessage() );
            }
            return redirect()->intended( "/index" );
        }

        /**
         * Destroy an authenticated session.
         */
        public function destroy( Request $request ): RedirectResponse
        {
            Auth::guard("web")->logout();

            $request->session()->invalidate();

            $request->session()->regenerateToken();

            return redirect( '/index' );
        }
    }