diff --git a/app/Http/Requests/Admin/Account/UpdateProfileRequest.php b/app/Http/Requests/Admin/Account/UpdateProfileRequest.php index 09a6701..889cb2a 100644 --- a/app/Http/Requests/Admin/Account/UpdateProfileRequest.php +++ b/app/Http/Requests/Admin/Account/UpdateProfileRequest.php @@ -3,6 +3,7 @@ namespace App\Http\Requests\Admin\Account; use App\Enums\Gender; +use App\Rules\PhoneNumber; use Illuminate\Foundation\Http\FormRequest; use Illuminate\Validation\Rule; @@ -22,7 +23,7 @@ public function rules(): array 'email' => ['required', 'email', 'max:100', Rule::unique('users', 'email')->ignore($this->user()?->id)], 'username' => ['required', 'string', 'max:20', 'alpha_dash', Rule::unique('users', 'username')->ignore($this->user()?->id)], 'full_name' => ['required', 'string', 'max:200'], - 'phone_number' => ['nullable', 'string', 'max:20', 'regex:/^08\d{8,11}$/'], + 'phone_number' => ['nullable', 'string', 'max:20', new PhoneNumber], 'gender' => ['nullable', Rule::enum(Gender::class)], 'birth_date' => ['nullable', 'date', 'before:today'], 'address' => ['nullable', 'string'], diff --git a/app/Http/Requests/Admin/Hr/EmployeeRequest.php b/app/Http/Requests/Admin/Hr/EmployeeRequest.php index 6e83490..10e1da4 100644 --- a/app/Http/Requests/Admin/Hr/EmployeeRequest.php +++ b/app/Http/Requests/Admin/Hr/EmployeeRequest.php @@ -6,6 +6,7 @@ use App\Enums\Gender; use App\Enums\Permission; use App\Enums\Role; +use App\Rules\PhoneNumber; use Illuminate\Foundation\Http\FormRequest; use Illuminate\Validation\Rule; @@ -31,7 +32,7 @@ public function rules(): array 'email' => ['required', 'email', 'max:100', Rule::unique('users', 'email')->ignore($this->route('user')?->id)], 'username' => ['required', 'string', 'max:20', 'alpha_dash', Rule::unique('users', 'username')->ignore($this->route('user')?->id)], 'full_name' => ['required', 'string', 'max:200'], - 'phone_number' => ['nullable', 'string', 'max:20', 'regex:/^08\d{8,11}$/'], + 'phone_number' => ['nullable', 'string', 'max:20', new PhoneNumber], 'gender' => ['nullable', Rule::enum(Gender::class)], 'birth_date' => ['nullable', 'date', 'before:today'], 'address' => ['nullable', 'string'], diff --git a/app/Http/Requests/Admin/Master/CustomerRequest.php b/app/Http/Requests/Admin/Master/CustomerRequest.php index d9df170..cf42763 100644 --- a/app/Http/Requests/Admin/Master/CustomerRequest.php +++ b/app/Http/Requests/Admin/Master/CustomerRequest.php @@ -3,6 +3,7 @@ namespace App\Http\Requests\Admin\Master; use App\Enums\Permission; +use App\Rules\PhoneNumber; use Illuminate\Foundation\Http\FormRequest; class CustomerRequest extends FormRequest @@ -23,7 +24,7 @@ public function rules(): array { return [ 'name' => ['required', 'string', 'max:200'], - 'phone_number' => ['nullable', 'string', 'max:20'], + 'phone_number' => ['nullable', 'string', 'max:20', new PhoneNumber], 'address' => ['nullable', 'string'], ]; } diff --git a/app/Http/Requests/Admin/Master/SupplierRequest.php b/app/Http/Requests/Admin/Master/SupplierRequest.php index 11de518..9be85ef 100644 --- a/app/Http/Requests/Admin/Master/SupplierRequest.php +++ b/app/Http/Requests/Admin/Master/SupplierRequest.php @@ -3,6 +3,7 @@ namespace App\Http\Requests\Admin\Master; use App\Enums\Permission; +use App\Rules\PhoneNumber; use Illuminate\Foundation\Http\FormRequest; class SupplierRequest extends FormRequest @@ -23,7 +24,7 @@ public function rules(): array { return [ 'name' => ['required', 'string', 'max:200'], - 'phone_number' => ['nullable', 'string', 'max:20'], + 'phone_number' => ['nullable', 'string', 'max:20', new PhoneNumber], 'address' => ['nullable', 'string'], ]; } diff --git a/app/Http/Requests/Admin/System/Setting/SystemRequest.php b/app/Http/Requests/Admin/System/Setting/SystemRequest.php index 21bd19c..7ed61f6 100644 --- a/app/Http/Requests/Admin/System/Setting/SystemRequest.php +++ b/app/Http/Requests/Admin/System/Setting/SystemRequest.php @@ -3,6 +3,7 @@ namespace App\Http\Requests\Admin\System\Setting; use App\Enums\Permission; +use App\Rules\PhoneNumber; use Illuminate\Foundation\Http\FormRequest; class SystemRequest extends FormRequest @@ -21,7 +22,7 @@ public function rules(): array 'app_name' => ['required', 'string', 'max:100'], 'about_app' => ['required', 'string'], 'email' => ['required', 'email', 'max:100'], - 'phone' => ['required', 'string', 'max:20'], + 'phone' => ['required', 'string', 'max:20', new PhoneNumber], 'address' => ['required', 'string'], 'logo' => ['required', 'image', 'max:2048'], 'login_cover' => ['required', 'image', 'max:5120'], diff --git a/app/Rules/PhoneNumber.php b/app/Rules/PhoneNumber.php new file mode 100644 index 0000000..6f21cf6 --- /dev/null +++ b/app/Rules/PhoneNumber.php @@ -0,0 +1,16 @@ +