diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php
index 8ba9eaa..069b9da 100644
--- a/app/Http/Controllers/Auth/LoginController.php
+++ b/app/Http/Controllers/Auth/LoginController.php
@@ -3,7 +3,10 @@
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
+use App\Http\Requests\Auth\LoginPostRequest;
+use App\Models\User;
use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Auth;
class LoginController extends Controller
{
@@ -14,4 +17,24 @@ class LoginController extends Controller
$withoutFooter = true;
return view('auth.login' , compact('withoutFooter' , 'withoutHeader'));
}
+
+ public function post(LoginPostRequest $request)
+ {
+ $input = $request->validated();
+ $user = User::query()
+ ->where('email' , $input['email'])
+ ->first();
+ if (!$user){
+ return back()->withErrors([
+ 'general' => 'اطلاعات یافت نشد'
+ ]);
+ }
+ if (!\Hash::check($input['password'] , $user->password)){
+ return back()->withErrors([
+ 'general' => 'اطلاعات یافت نشد'
+ ]);
+ }
+ Auth::login($user);
+ return redirect()->route('index');
+ }
}
diff --git a/app/Http/Controllers/Auth/LogoutController.php b/app/Http/Controllers/Auth/LogoutController.php
index 25f566a..597adda 100644
--- a/app/Http/Controllers/Auth/LogoutController.php
+++ b/app/Http/Controllers/Auth/LogoutController.php
@@ -4,8 +4,16 @@ namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Auth;
class LogoutController extends Controller
{
//
+ public function index()
+ {
+ session()->regenerate();
+
+ Auth::logout();
+ return redirect()->route('index');
+ }
}
diff --git a/app/Http/Requests/Auth/LoginPostRequest.php b/app/Http/Requests/Auth/LoginPostRequest.php
new file mode 100644
index 0000000..d41844e
--- /dev/null
+++ b/app/Http/Requests/Auth/LoginPostRequest.php
@@ -0,0 +1,44 @@
+|string>
+ */
+ public function rules(): array
+ {
+ return [
+ 'email' => [
+ 'required',
+ 'email',
+ 'min:10',
+ 'max:150',
+
+ ],
+
+ 'password' => [
+ 'required',
+ 'string',
+ 'min:8',
+ 'alpha_num',
+
+
+ ],
+ ];
+ }
+}
diff --git a/resources/views/auth/login.blade.php b/resources/views/auth/login.blade.php
index 4de3f0f..ea7e66f 100644
--- a/resources/views/auth/login.blade.php
+++ b/resources/views/auth/login.blade.php
@@ -1,61 +1,246 @@
@extends('layouts.app')
-@section('content')
-
-