* @license https://www.gnu.org/licenses/agpl-3.0.en.html/ GNU Affero General Public License v3.0 */ namespace App\Http\Controllers\User; use App\Http\Controllers\Controller; use App\Models\User; class TopicController extends Controller { /** * Show user topics. */ public function index(User $user): \Illuminate\Contracts\View\Factory|\Illuminate\View\View { return view('user.topic.index', [ 'user' => $user, 'topics' => $user->topics() ->with([ 'user.group', 'latestPoster', 'forum:id,name', 'reads' => fn ($query) => $query->whereBelongsTo(auth()->user()), ]) ->authorized(canReadTopic: true) ->latest() ->paginate(25), ]); } }