$request->name, 'email' => $request->email, 'password' => Hash::make($request->password), 'role' => 'pending', 'is_approved' => false, ]); event(new Registered($user)); Auth::login($user); $this->recordDocumentAcceptances($user, $request); return redirect(route('dashboard')); } private function recordDocumentAcceptances(User $user, RegisterRequest $request): void { $documents = \App\Models\LegalDocument::all()->groupBy('type'); foreach ($documents as $type => $docs) { $latest = $docs->sortByDesc('version')->first(); if (!$latest) { continue; } \App\Models\UserDocumentAcceptance::create([ 'user_id' => $user->id, 'legal_document_id' => $latest->id, 'document_version' => $latest->version, 'ip_address' => $request->ip(), 'user_agent' => $request->userAgent(), 'accepted_at' => now(), ]); } } }