initializeProperties(null, User::class); } public function rules() { return array_merge([ 'first_name' => 'required|string|max:255', 'last_name' => 'required|string|max:255', 'email' => 'required|email|max:255|unique:users', 'password' => 'required|string|min:8|confirmed', ], $this->getRulesForProperties()); } public function submit() { $validatedData = $this->validate(); $user = User::create([ 'first_name' => $this->first_name, 'last_name' => $this->last_name, 'email' => $this->email, 'password' => Hash::make($this->password), ]); if (array_key_exists('properties', $validatedData)) { $this->updateProperties($user, $validatedData['properties']); } Auth::login($user); return $this->redirectIntended(route('dashboard'), true); } public function render() { return view('auth.register'); } }