$input */ public function create(array $input): User { Validator::make($input, [ 'registration_code' => [new ValidRegistrationCode], 'first_name' => ['required', 'string', 'max:255'], 'last_name' => ['required', 'string', 'max:255'], 'judging_preference' => ['required', 'string', 'max:255'], 'cell_phone' => ['required', 'string', 'max:255'], 'email' => [ 'required', 'string', 'email', 'max:255', Rule::unique(User::class), ], 'password' => $this->passwordRules(), ])->validate(); $profileImageURL = 'https://ui-avatars.com/api/?name='.mb_substr($input['first_name'], 0, 1).'+'.mb_substr($input['last_name'], 0, 1); $user = User::create([ 'first_name' => $input['first_name'], 'last_name' => $input['last_name'], 'judging_preference' => $input['judging_preference'], 'cell_phone' => $input['cell_phone'], 'email' => $input['email'], 'profile_image_url' => $profileImageURL, 'password' => Hash::make($input['password']), ]); $message = 'New User Registered - '.$input['email'] .'
Name: '.$input['first_name'].' '.$input['last_name'] .'
Judging Pref: '.$input['judging_preference'] .'
Cell Phone: '.$input['cell_phone']; AuditLogEntry::create([ 'user' => $input['email'], 'ip_address' => request()->ip(), 'message' => $message, 'affected' => ['users' => [$user->id]], ]); return $user; } }