'string|max:100', 'last_name' => 'string:max:100', 'password' => 'required|string|min:6|max:100', 'email' => $email_rules, 'privacy_policy' => 'required|boolean', 'terms_of_service' => 'required|boolean', 'utm_source' => 'sometimes|nullable|string', 'utm_medium' => 'sometimes|nullable|string', 'utm_campaign' => 'sometimes|nullable|string', 'utm_term' => 'sometimes|nullable|string', 'utm_content' => 'sometimes|nullable|string', // 'cf-turnstile' => 'required_if:token_name,web_client|string', ]; } public function prepareForValidation() { nlog(array_merge(['signup' => 'true', 'ipaddy' => request()->ip()], $this->all())); $input = $this->all(); $input['user_agent'] = request()->server('HTTP_USER_AGENT'); $this->replace($input); } }