ldc-boutique-cnc/app/Http/Controllers/Auth/LoginController.php
2022-09-03 16:56:16 +02:00

70 lines
1.8 KiB
PHP

<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
class LoginController extends Controller
{
/**
* Display login form
*
* @param Request $request
* @return \Illuminate\Contracts\View\View
*
* @phpcs:disable Generic.CodeAnalysis.UnusedFunctionParameter.FoundInExtendedClass
*/
public function index(Request $request)
{
// @phpcs:enable
return view('auth.login-bo');
}
/**
* Compute login form
*
* @param Request $request
* @return \Illuminate\Contracts\View\View
*
*/
public function login(Request $request)
{
$request->validate([
'email' => 'required',
'password' => 'required'
]);
$credentials = $request->only(['email', 'password']);
if (Auth::attempt($credentials)) {
$user = Auth::user();
if ($user->role === 1 || $user->role === 2) {
return redirect()->route('bo.dashboard');
} else {
if ($user->email_verified_at === null) {
Auth::logout();
return view('auth.login')->withErrors('Compte non activé.');
}
return redirect()->intended('/');
}
}
return view('auth.login')->withErrors('Informations incorrectes.');
}
/**
* logout
*
* @param Request $request
* @return \Illuminate\Contracts\View\View
*
* @phpcs:disable Generic.CodeAnalysis.UnusedFunctionParameter.FoundInExtendedClass
*/
public function logout(Request $request)
{
// @phpcs:enable
Auth::logout();
return redirect()->route('home');
}
}