feat: add auth routes and update register view

This commit is contained in:
2026-08-16 11:31:47 +03:30
parent 43c786a751
commit ede831c121
5 changed files with 129 additions and 28 deletions
@@ -2,17 +2,35 @@
namespace App\Http\Controllers\Auth;
use App\Enums\UserMaritalStatus;
use App\Http\Controllers\Controller;
use App\Http\Requests\Auth\RegisterPostRequest;
use App\Models\Province;
use App\Models\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Hash;
class RegisterController extends Controller
{
public function index()
{
$provinces = Province::all();
$maritalStatuses = UserMaritalStatus::cases();
$withoutHeader = true;
$withoutFooter = true;
return view('auth.register' , compact('withoutFooter' , 'withoutHeader'));
return view('auth.register' , compact('withoutFooter' , 'withoutHeader' , 'provinces' , 'maritalStatuses'));
}
public function post(RegisterPostRequest $request)
{
$input = $request->validated();
$input['password'] = Hash::make($input['password']);
$user = User::create($input);
Auth::login($user);
return redirect()->route('index');
}
}
+14 -1
View File
@@ -82,7 +82,20 @@ class RegisterPostRequest extends FormRequest
'persian_alpha'
],
'gender' => [
'required'
'required',
'int',
'in:0,1,2'
],
'marital_status' => [
'required',
'int',
'in:0,1'
],
'user_province' => [
'nullable'
],
'user_city' => [
'nullable'
]
];
}
+8 -6
View File
@@ -6,13 +6,15 @@
namespace App\Models;
use App\Enums\UserGender;
use App\Enums\UserMaritalStatus;
use Carbon\Carbon;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Foundation\Auth\User as Authenticated;
/**
* Class User
*
*
* @property int $id
* @property string $first_name
* @property string $last_name
@@ -30,19 +32,19 @@ use Illuminate\Database\Eloquent\SoftDeletes;
* @property Carbon $created_at
* @property Carbon $updated_at
* @property string|null $deleted_at
*
*
* @property File $file
*
* @package App\Models
*/
class User extends Model
class User extends Authenticated
{
use SoftDeletes;
protected $table = 'users';
protected $casts = [
'gender' => 'bool',
'marital_status' => 'int',
'gender' => UserGender::class,
'marital_status' => UserMaritalStatus::class,
'file_id' => 'int'
];