git add .
git commit "add user authentication"
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
<?php
|
||||
|
||||
namespace App\Enums;
|
||||
|
||||
enum UserGender : int
|
||||
{
|
||||
case male=0;
|
||||
case famale=1;
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace App\Enums;
|
||||
|
||||
enum UserMaritalStatus : int
|
||||
{
|
||||
case single = 0;
|
||||
case Married = 1;
|
||||
case Separated = 2;
|
||||
}
|
||||
@@ -3,9 +3,35 @@
|
||||
namespace App\Http\Controllers\Auth;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Requests\LoginPostRequest;
|
||||
use App\Models\User;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class LoginController extends Controller
|
||||
{
|
||||
//
|
||||
public function index()
|
||||
{
|
||||
$withoutHeader = true;
|
||||
$withoutFooter = true;
|
||||
$withoutHero = true;
|
||||
|
||||
return view('auth.login',compact('withoutHeader','withoutHero','withoutFooter'));
|
||||
}
|
||||
|
||||
public function post(LoginPostRequest $request)
|
||||
{
|
||||
$user = $request->validated();
|
||||
|
||||
if (!Auth::attempt($user)) {
|
||||
return back()->withErrors([
|
||||
'general' => 'شماره موبایل یا رمز عبور اشتباه است.',
|
||||
])->withInput();
|
||||
}
|
||||
|
||||
$request->session()->regenerate();
|
||||
|
||||
return redirect()->route('users.dashboard');
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -4,8 +4,18 @@ 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()
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
Request()->session()->invalidate();
|
||||
Request()->session()->regenerateToken();
|
||||
|
||||
return redirect()->route('index');
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ namespace App\Http\Controllers\Auth;
|
||||
|
||||
use App\Enums\UserStatus;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Requests\RegisterRequest;
|
||||
use App\Http\Requests\RegisterPostRequest;
|
||||
use App\Models\Province;
|
||||
use App\Models\User;
|
||||
use Illuminate\Http\Request;
|
||||
@@ -22,7 +22,7 @@ class RegisterController extends Controller
|
||||
return view('auth.register',compact('withoutHeader','withoutFooter','withoutHero','provinces'));
|
||||
}
|
||||
|
||||
public function post(RegisterRequest $request)
|
||||
public function post(RegisterPostRequest $request)
|
||||
{
|
||||
$inputs = $request->validated();
|
||||
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class DashboardController extends Controller
|
||||
{
|
||||
//
|
||||
public function index()
|
||||
{
|
||||
$user=Auth::User();
|
||||
|
||||
return view('users.dashboard',compact('user'));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class FavoriteController extends Controller
|
||||
{
|
||||
//
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Http\Requests\ProfileUpdateRequest;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class ProfileController extends Controller
|
||||
{
|
||||
public function edite()
|
||||
{
|
||||
$user=Auth::User();
|
||||
return view('users.profile.edit',compact('user'));
|
||||
}
|
||||
|
||||
public function update(ProfileUpdateRequest $request)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
@@ -5,7 +5,7 @@ namespace App\Http\Requests;
|
||||
use Illuminate\Contracts\Validation\ValidationRule;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class LoginRequest extends FormRequest
|
||||
class FavoritePostRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use Illuminate\Contracts\Validation\ValidationRule;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class LoginPostRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*/
|
||||
public function authorize(): bool
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array<string, ValidationRule|array<mixed>|string>
|
||||
*/
|
||||
public function rules(): array
|
||||
{
|
||||
return [
|
||||
'mobile'=>[
|
||||
'required',
|
||||
'string',
|
||||
'ir_mobile'
|
||||
],
|
||||
'password'=>[
|
||||
'required',
|
||||
'string'
|
||||
]
|
||||
];
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use Illuminate\Contracts\Validation\ValidationRule;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class ProfileUpdateRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*/
|
||||
public function authorize(): bool
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array<string, ValidationRule|array<mixed>|string>
|
||||
*/
|
||||
public function rules(): array
|
||||
{
|
||||
return [
|
||||
];
|
||||
}
|
||||
}
|
||||
@@ -6,7 +6,7 @@ use Illuminate\Contracts\Validation\ValidationRule;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
use Illuminate\Validation\Rule;
|
||||
|
||||
class RegisterRequest extends FormRequest
|
||||
class RegisterPostRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
@@ -41,7 +41,7 @@ class RegisterRequest extends FormRequest
|
||||
'national_code' => [
|
||||
'required',
|
||||
'unique:users,national_code',
|
||||
'ir_national_id'
|
||||
// 'ir_national_id'
|
||||
],
|
||||
|
||||
'gender' => [
|
||||
@@ -72,7 +72,8 @@ class RegisterRequest extends FormRequest
|
||||
|
||||
'username' => [
|
||||
'required',
|
||||
'unique:users,username'
|
||||
'unique:users,username',
|
||||
'regex:/^[A-Za-z0-9]+$/',
|
||||
],
|
||||
'image' => [
|
||||
'nullable',
|
||||
Reference in New Issue
Block a user