diff options
author | Roger Luo <rogerluo410@gmail.com> | 2021-04-08 19:53:59 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-08 13:53:59 +0200 |
commit | fa06e98553b78da66cb75e13cffe56b3ef013447 (patch) | |
tree | a448a47ea1f0f7643d705a9da6bbe106d7e9eff7 /routers/user/home.go | |
parent | 0d1a5e0ffcf689e6e6b2aaa4a4251db74f6b487b (diff) | |
download | gitea-fa06e98553b78da66cb75e13cffe56b3ef013447.tar.gz gitea-fa06e98553b78da66cb75e13cffe56b3ef013447.zip |
Add dashboard milestone search and repo milestone search by name (#14866)
Feature for issue #13845:
- Add milestones search by name on dashboard milestones page.
- Add milestones search by name on repo issue/milestones page.
Diffstat (limited to 'routers/user/home.go')
-rw-r--r-- | routers/user/home.go | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/routers/user/home.go b/routers/user/home.go index 178ad57a79..3436a44bae 100644 --- a/routers/user/home.go +++ b/routers/user/home.go @@ -202,6 +202,7 @@ func Milestones(ctx *context.Context) { isShowClosed = ctx.Query("state") == "closed" sortType = ctx.Query("sort") page = ctx.QueryInt("page") + keyword = strings.Trim(ctx.Query("q"), " ") ) if page <= 1 { @@ -234,15 +235,15 @@ func Milestones(ctx *context.Context) { } } - counts, err := models.CountMilestonesByRepoCond(userRepoCond, isShowClosed) + counts, err := models.CountMilestonesByRepoCondAndKw(userRepoCond, keyword, isShowClosed) if err != nil { ctx.ServerError("CountMilestonesByRepoIDs", err) return } - milestones, err := models.SearchMilestones(repoCond, page, isShowClosed, sortType) + milestones, err := models.SearchMilestones(repoCond, page, isShowClosed, sortType, keyword) if err != nil { - ctx.ServerError("GetMilestonesByRepoIDs", err) + ctx.ServerError("SearchMilestones", err) return } @@ -277,7 +278,7 @@ func Milestones(ctx *context.Context) { i++ } - milestoneStats, err := models.GetMilestonesStatsByRepoCond(repoCond) + milestoneStats, err := models.GetMilestonesStatsByRepoCondAndKw(repoCond, keyword) if err != nil { ctx.ServerError("GetMilestoneStats", err) return @@ -287,7 +288,7 @@ func Milestones(ctx *context.Context) { if len(repoIDs) == 0 { totalMilestoneStats = milestoneStats } else { - totalMilestoneStats, err = models.GetMilestonesStatsByRepoCond(userRepoCond) + totalMilestoneStats, err = models.GetMilestonesStatsByRepoCondAndKw(userRepoCond, keyword) if err != nil { ctx.ServerError("GetMilestoneStats", err) return @@ -310,12 +311,14 @@ func Milestones(ctx *context.Context) { ctx.Data["Counts"] = counts ctx.Data["MilestoneStats"] = milestoneStats ctx.Data["SortType"] = sortType + ctx.Data["Keyword"] = keyword if milestoneStats.Total() != totalMilestoneStats.Total() { ctx.Data["RepoIDs"] = repoIDs } ctx.Data["IsShowClosed"] = isShowClosed pager := context.NewPagination(pagerCount, setting.UI.IssuePagingNum, page, 5) + pager.AddParam(ctx, "q", "Keyword") pager.AddParam(ctx, "repos", "RepoIDs") pager.AddParam(ctx, "sort", "SortType") pager.AddParam(ctx, "state", "State") |