36 lines
794 B
PHP
36 lines
794 B
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace App\Livewire\Auth;
|
||
|
|
|
||
|
|
use Livewire\Component;
|
||
|
|
use Illuminate\Support\Facades\Auth;
|
||
|
|
use Livewire\Attributes\Rule;
|
||
|
|
|
||
|
|
class Login extends Component
|
||
|
|
{
|
||
|
|
#[Rule('required|email')]
|
||
|
|
public $email = '';
|
||
|
|
|
||
|
|
#[Rule('required')]
|
||
|
|
public $password = '';
|
||
|
|
|
||
|
|
public $remember = false;
|
||
|
|
|
||
|
|
public function login()
|
||
|
|
{
|
||
|
|
$this->validate();
|
||
|
|
|
||
|
|
if (Auth::attempt(['email' => $this->email, 'password' => $this->password], $this->remember)) {
|
||
|
|
session()->regenerate();
|
||
|
|
return redirect()->intended(route('dashboard'));
|
||
|
|
}
|
||
|
|
|
||
|
|
$this->addError('email', 'These credentials do not match our records.');
|
||
|
|
}
|
||
|
|
|
||
|
|
public function render()
|
||
|
|
{
|
||
|
|
return view('livewire.auth.login')
|
||
|
|
->layout('layouts.guest');
|
||
|
|
}
|
||
|
|
}
|