Mirror of @tangled.org/core. Running on a Raspberry Pi Zero 2

appview/issues: fix search not updating count of open/closed issues

searching for issues did not previously update open/closed issue counts
https://tangled.org/tangled.org/core/issues/400.

Signed-off-by: pdewey.com <p@pdewey.com>

authored by pdewey.com and committed by tangled.org 92ab4c2e 6795ddae

+18 -1
+18 -1
appview/issues/issues.go
··· 822 822 823 823 keyword := params.Get("q") 824 824 825 + repoInfo := rp.repoResolver.GetRepoInfo(r, user) 826 + 825 827 var issues []models.Issue 826 828 searchOpts := models.IssueSearchOptions{ 827 829 Keyword: keyword, ··· 839 837 } 840 838 l.Debug("searched issues with indexer", "count", len(res.Hits)) 841 839 totalIssues = int(res.Total) 840 + 841 + // count matching issues in the opposite state to display correct counts 842 + countRes, err := rp.indexer.Search(r.Context(), models.IssueSearchOptions{ 843 + Keyword: keyword, RepoAt: f.RepoAt().String(), IsOpen: !isOpen, 844 + Page: pagination.Page{Limit: 1}, 845 + }) 846 + if err == nil { 847 + if isOpen { 848 + repoInfo.Stats.IssueCount.Open = int(res.Total) 849 + repoInfo.Stats.IssueCount.Closed = int(countRes.Total) 850 + } else { 851 + repoInfo.Stats.IssueCount.Closed = int(res.Total) 852 + repoInfo.Stats.IssueCount.Open = int(countRes.Total) 853 + } 854 + } 842 855 843 856 issues, err = db.GetIssues( 844 857 rp.db, ··· 901 884 902 885 rp.pages.RepoIssues(w, pages.RepoIssuesParams{ 903 886 LoggedInUser: rp.oauth.GetMultiAccountUser(r), 904 - RepoInfo: rp.repoResolver.GetRepoInfo(r, user), 887 + RepoInfo: repoInfo, 905 888 Issues: issues, 906 889 IssueCount: totalIssues, 907 890 LabelDefs: defs,