Preview: AuthenticatedSessionController.php
Size: 2.31 KB
/home/byroehnu/cnggold.com.ng/app/Http/Controllers/Auth/AuthenticatedSessionController.php
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use App\Http\Requests\Auth\LoginRequest;
use App\Models\Setting;
use App\Providers\RouteServiceProvider;
use Artesaos\SEOTools\Facades\OpenGraph;
use Artesaos\SEOTools\Facades\SEOMeta;
use Artesaos\SEOTools\Facades\TwitterCard;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Route;
use Inertia\Inertia;
use Inertia\Response;
class AuthenticatedSessionController extends Controller
{
/**
* Display the login view.
*/
public function create(): Response
{
$current_page_url = request()->url();
$meta_tags = 'login';
$site_name = Setting::pull('site_name');
$tagline = __('Login');
SEOMeta::setTitle($tagline.' - '.$site_name);
SEOMeta::setCanonical($current_page_url);
SEOMeta::addMeta('robots', 'index, follow');
SEOMeta::addKeyword(explode(',', $meta_tags));
OpenGraph::setUrl($current_page_url);
OpenGraph::setSiteName($site_name);
OpenGraph::addProperty('type', 'website');
TwitterCard::setSite('@bione');
TwitterCard::setType('summary_large_image');
SEOMeta::addMeta('viewport', 'width=device-width, initial-scale=1');
return Inertia::render('Auth/Login', [
'canResetPassword' => Route::has('password.request'),
'status' => session('status'),
'is_facebook_login_active' => (bool) Setting::pull('facebook_is_active'),
'is_google_login_active' => (bool) Setting::pull('google_login_is_active'),
'meta_tags' => $meta_tags,
'site_name' => $site_name,
'tagline' => $tagline,
'is_demo' => (bool) config('app.is_demo'),
]);
}
/**
* Handle an incoming authentication request.
*/
public function store(LoginRequest $request)
{
$request->authenticate();
$request->session()->regenerate();
return Inertia::location(RouteServiceProvider::HOME);
}
/**
* Destroy an authenticated session.
*/
public function destroy(Request $request)
{
Auth::guard('web')->logout();
$request->session()->invalidate();
$request->session()->regenerateToken();
return Inertia::location('/');
}
}
Directory Contents
Dirs: 0 × Files: 11