isMethod('get') && $response->getStatusCode() === 200 && !$request->is(env('ADMIN_PATH', 'loom') . '*')) { $agent = new Agent(); $agent->setUserAgent($request->userAgent()); $view = PageView::create([ 'path' => $request->getPathInfo(), 'referrer' => $request->headers->get('referer'), 'browser' => $agent->browser() ?: 'Unknown', 'os' => $agent->platform() ?: 'Unknown', 'device_type' => $this->getDeviceType($agent), 'view_date' => now()->toDateString(), ]); } return $response; } protected function getDeviceType($agent) { if ($agent->isTablet()) { return 'tablet'; } if ($agent->isMobile()) { return 'mobile'; } return 'desktop'; } }