Passed
Push — master ( 30f336...ab8928 )
by Brian
14:05
created

AuthenticatedSessionController   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 34
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 9
c 1
b 0
f 0
dl 0
loc 34
rs 10
wmc 3

3 Methods

Rating   Name   Duplication   Size   Complexity  
A create() 0 3 1
A store() 0 7 1
A destroy() 0 9 1
1
<?php
2
3
namespace App\Http\Controllers\Auth;
4
5
use App\Http\Controllers\Controller;
6
use App\Http\Requests\Auth\LoginRequest;
7
use App\Providers\RouteServiceProvider;
8
use Illuminate\Http\RedirectResponse;
9
use Illuminate\Http\Request;
10
use Illuminate\Support\Facades\Auth;
11
use Illuminate\View\View;
12
13
class AuthenticatedSessionController extends Controller
14
{
15
    /**
16
     * Display the login view.
17
     */
18
    public function create(): View
19
    {
20
        return view('auth.login');
21
    }
22
23
    /**
24
     * Handle an incoming authentication request.
25
     */
26
    public function store(LoginRequest $request): RedirectResponse
27
    {
28
        $request->authenticate();
29
30
        $request->session()->regenerate();
31
32
        return redirect()->intended(RouteServiceProvider::HOME);
33
    }
34
35
    /**
36
     * Destroy an authenticated session.
37
     */
38
    public function destroy(Request $request): RedirectResponse
39
    {
40
        Auth::guard('web')->logout();
41
42
        $request->session()->invalidate();
43
44
        $request->session()->regenerateToken();
45
46
        return redirect('/');
47
    }
48
}
49