59 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| namespace App\Http\Requests;
 | |
| 
 | |
| use App\Models\User;
 | |
| use Illuminate\Foundation\Http\FormRequest;
 | |
| use Illuminate\Support\Facades\Validator;
 | |
| use Illuminate\Validation\Rule;
 | |
| 
 | |
| class UserRequest 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, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
 | |
|      */
 | |
|     public function rules(): array
 | |
|     {
 | |
|         return [
 | |
|             'username' => 'required|unique:user,username|min:5|max:255',
 | |
|             'password' => 'required|min:6|max:255',
 | |
|             'email' => 'required|email|unique:user,email|max:255',
 | |
|             'user_photo' => ''
 | |
|         ];
 | |
|     }
 | |
| 
 | |
|     public static function rulesForUpdate(FormRequest $formRequest, User $user): \Illuminate\Validation\Validator
 | |
|     {
 | |
|         return Validator::make($formRequest->all(), [
 | |
|             'email' => [
 | |
|                 'required',
 | |
|                 'email',
 | |
|                 'max:255',
 | |
|                 Rule::unique('user', 'email')->ignore($user->email, 'email'),
 | |
|             ],
 | |
|             'username' => [
 | |
|                 'required',
 | |
|                 'min:5',
 | |
|                 'max:255',
 | |
|                 Rule::unique('user', 'username')->ignore($user->username, 'username'),
 | |
|             ],
 | |
|             'password' => [
 | |
|                 'min:6',
 | |
|                 'max:255',
 | |
|                 'nullable',
 | |
|             ],
 | |
|             'user_photo' => []
 | |
|         ]);
 | |
|     }
 | |
| }
 |