route('user')); } /** * Prepare the data for validation. */ protected function prepareForValidation(): void { /** @var \App\Models\User $userModel */ $userModel = request()->route()->parameter('user'); /** @var \App\Models\User $authUserModel */ $authUserModel = auth('backend')->user(); $this->merge([ 'published' => $authUserModel->getKey() !== $userModel->getKey() ? $this->boolean('published') : true, ]); } /** * Get the validation rules that apply to the request. */ public function rules(): array { return array_merge(parent::rules(), [ 'email' => [ 'required', 'email:rfc,strict,dns,spoof,filter', Rule::unique('users', 'email')->ignore(\optional($this->route('user'))->getRouteKey()), ], ]); } }