(ui) Add review actions to filtered run lists
Add inline Mark reviewed actions for failed and warning runs on the run list, preserving active filters after review so Operational Status drill-downs can be cleared without opening every run detail page. Refs #22
This commit is contained in:
@@ -661,13 +661,13 @@ def resolve_run_review(request, run_id: int):
|
||||
return redirect("run_detail", run_id=run.id)
|
||||
if run.reviewed_at:
|
||||
messages.info(request, f"Run {run.id} was already marked reviewed.")
|
||||
return redirect("run_detail", run_id=run.id)
|
||||
return _redirect_after_run_review(request, run)
|
||||
|
||||
run.reviewed_at = timezone.now()
|
||||
run.reviewed_by = request.user.get_username()
|
||||
run.save(update_fields=["reviewed_at", "reviewed_by"])
|
||||
messages.success(request, f"Run {run.id} marked reviewed.")
|
||||
return redirect("run_detail", run_id=run.id)
|
||||
return _redirect_after_run_review(request, run)
|
||||
|
||||
|
||||
@staff_member_required
|
||||
@@ -937,6 +937,13 @@ def _next_run_for_schedule(schedule: ScheduleConfig | None, host_config: HostCon
|
||||
return None
|
||||
|
||||
|
||||
def _redirect_after_run_review(request, run: BackupRun):
|
||||
next_url = request.POST.get("next", "").strip()
|
||||
if next_url.startswith("/"):
|
||||
return redirect(next_url)
|
||||
return redirect("run_detail", run_id=run.id)
|
||||
|
||||
|
||||
def _retention_warning_for_host(host_config: HostConfig, schedule: ScheduleConfig | None) -> dict[str, object]:
|
||||
incomplete_count = host_config.snapshots.filter(
|
||||
kind=SnapshotRecord.Kind.INCOMPLETE,
|
||||
|
||||
Reference in New Issue
Block a user