diff --git a/internal/handlers/handlers.go b/internal/handlers/handlers.go index fbb3710..a193882 100644 --- a/internal/handlers/handlers.go +++ b/internal/handlers/handlers.go @@ -188,18 +188,30 @@ func (h *Handler) Dashboard(w http.ResponseWriter, r *http.Request) { token := getToken(r) orgs := h.getUserOrgs(r) + selectedOrg := r.URL.Query().Get("org") type dashboardData struct { - Items []giteaclient.TriageItem - Error string + Items []giteaclient.TriageItem + Orgs []string + SelectedOrg string + Error string } - var data dashboardData + data := dashboardData{ + Orgs: orgs, + SelectedOrg: selectedOrg, + } if len(orgs) == 0 { data.Error = "No organizations found. Check your token permissions." } else { - queue, err := h.Client.GetTriageQueue(r.Context(), token, orgs) + // Determine which orgs to query. + queryOrgs := orgs + if selectedOrg != "" { + queryOrgs = []string{selectedOrg} + } + + queue, err := h.Client.GetTriageQueue(r.Context(), token, queryOrgs) if err != nil { slog.Error("failed to get triage queue", "error", err) data.Error = "Error loading triage queue." diff --git a/internal/templates/dashboard.html b/internal/templates/dashboard.html index 102c008..31a09c8 100644 --- a/internal/templates/dashboard.html +++ b/internal/templates/dashboard.html @@ -1,6 +1,17 @@ {{define "content"}}
{{.Error}}
{{else if not .Items}}