topTools(7, 15); foreach ($topTools as &$row) { $starts = (int) ($row['starts'] ?? 0); $successes = (int) ($row['successes'] ?? 0); $failures = (int) ($row['failures'] ?? 0); $finished = $successes + $failures; $row['success_rate'] = $finished > 0 ? (int) round($successes * 100 / $finished) : null; unset($row); } return $this->render('analytics_index', [ 'counts' => $events->countsSince(1), 'week' => $events->countsSince(7), 'topTools' => $topTools, 'formats' => $events->topFormats(7), 'searches' => $events->recentSearches(15), ]); } }