Skip to content

Authentication

Intro

Every portal needs authentication.
This package provides some livewire components to add the features of: login, registration, email verification and logout.
More will need to be added later.

See generic doc for using livewire components

Components

Routing

This snippet is copied from the routes/portal.php, and might not be up to date with the latest version.

php
// GUEST ONLY
Route::group(['middleware' => array_filter([
    'qore-portal-guest',
])],
    function (): void {
        Route::get('/', fn () => view('application.portal.pages.home'))->name('home');
        Route::get('/login', LoginCard::class)->name('login');
        Route::get('/register', RegisterCard::class)->name('register');
    });

// LOGGED IN
Route::group(['middleware' => array_filter([
    'qore-portal-auth',
])],
    function (): void {
        Route::get('/email/verify', VerifyEmailCard::class)->name('verification.notice');
        Route::get('/email/verified', VerifiedEmailCard::class)->name('verification.verified');
        Route::get('/email/verify/{id}/{hash}', EmailVerificationVerify::class)
            ->middleware(['signed', 'throttle:6,1'])
            ->name('verification.verify');

        Route::post('/logout', [AuthenticatedSessionController::class, 'destroy'])->name('logout');
    });

Login

php
use QoreWorksBusiness\QoreFrontend\Integrations\Portal\Livewire\auth\LoginCard

Registration

php
use QoreWorksBusiness\QoreFrontend\Integrations\Portal\Livewire\auth\RegisterCard

Email Verification

php
use QoreWorksBusiness\QoreFrontend\Integrations\Portal\Livewire\auth\VerifyEmailCard
use QoreWorksBusiness\QoreFrontend\Integrations\Portal\Livewire\auth\VerifiedEmailCard