validate([ 'terms_version' => 'required|string', 'privacy_version' => 'required|string', 'cookie_version' => 'required|string', ]); $user = Auth::user(); UserConsent::create([ 'user_id' => $user->id, 'terms_version' => $request->terms_version, 'privacy_version' => $request->privacy_version, 'cookie_version' => $request->cookie_version, 'accepted_at' => now(), 'ip_address' => $request->ip(), 'user_agent' => $request->userAgent(), ]); return redirect()->intended('/dashboard')->with('success', __('legal.accepted_successfully')); } public function history() { $user = Auth::user(); $consents = $user->consents()->orderByDesc('accepted_at')->paginate(20); return view('legal.history', compact('consents')); } public function acceptCookieBanner(Request $request) { $request->validate([ 'terms_version' => 'required|string', 'privacy_version' => 'required|string', 'cookie_version' => 'required|string', ]); $user = Auth::user(); UserConsent::create([ 'user_id' => $user->id, 'terms_version' => $request->terms_version, 'privacy_version' => $request->privacy_version, 'cookie_version' => $request->cookie_version, 'accepted_at' => now(), 'ip_address' => $request->ip(), 'user_agent' => $request->userAgent(), ]); return response()->json(['success' => true]); } }