This commit is contained in:
Doar Mihai
2026-03-21 15:25:05 +02:00
parent ac64140de7
commit f78f3aeeb7
16 changed files with 561 additions and 20 deletions
+36 -2
View File
@@ -33,6 +33,12 @@ class IssueController extends Controller
});
}
if ($environment = $request->query('environment')) {
$query->whereHas('events', function ($q) use ($environment) {
$q->where('environment', $environment);
});
}
$sortField = $request->query('sort', 'last_seen_at');
$sortDir = $request->query('dir', 'desc');
$allowedSorts = ['last_seen_at', 'first_seen_at', 'times_seen', 'level'];
@@ -42,12 +48,22 @@ class IssueController extends Controller
$issues = $query->cursorPaginate(25)->withQueryString();
// Get distinct environments from events for this project
$environments = $project->events()
->whereNotNull('environment')
->distinct()
->pluck('environment')
->sort()
->values();
return view('issues.index', [
'project' => $project,
'issues' => $issues,
'currentStatus' => $status ?: 'unresolved',
'currentLevel' => $level,
'currentEnvironment' => $environment,
'search' => $search,
'environments' => $environments,
]);
}
@@ -56,18 +72,36 @@ class IssueController extends Controller
$this->authorizeProject($request, $project);
abort_unless($issue->project_id === $project->id, 404);
$latestEvent = $issue->events()->latest('timestamp')->first();
$environment = $request->query('environment');
$events = $issue->events()
$eventsQuery = $issue->events();
if ($environment) {
$eventsQuery->where('environment', $environment);
}
$latestEvent = (clone $eventsQuery)->latest('timestamp')->first();
$events = $eventsQuery
->latest('timestamp')
->cursorPaginate(10)
->withQueryString();
// Get distinct environments for this issue
$environments = $issue->events()
->whereNotNull('environment')
->distinct()
->pluck('environment')
->sort()
->values();
return view('issues.show', [
'project' => $project,
'issue' => $issue,
'latestEvent' => $latestEvent,
'events' => $events,
'environments' => $environments,
'currentEnvironment' => $environment,
]);
}