diff options
author | Unknown <joe2010xtmf@163.com> | 2014-03-27 19:42:10 -0400 |
---|---|---|
committer | Unknown <joe2010xtmf@163.com> | 2014-03-27 19:42:10 -0400 |
commit | eb6021f73f270b6fad937432964ab15f42e8f0d9 (patch) | |
tree | 4b6d560c60e41cfec3a20a9ecf6144c27a3353df /routers/user | |
parent | 34f4af9ebf179dbb24a7da6091b4259d66a3c426 (diff) | |
download | gitea-eb6021f73f270b6fad937432964ab15f42e8f0d9.tar.gz gitea-eb6021f73f270b6fad937432964ab15f42e8f0d9.zip |
Fix issue pages URL params
Diffstat (limited to 'routers/user')
-rw-r--r-- | routers/user/user.go | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/routers/user/user.go b/routers/user/user.go index 052a277498..b0fc583978 100644 --- a/routers/user/user.go +++ b/routers/user/user.go @@ -289,6 +289,9 @@ func Issues(ctx *middleware.Context) { ctx.Data["ViewType"] = "all" page, _ := base.StrTo(ctx.Query("page")).Int() + repoId, _ := base.StrTo(ctx.Query("repoid")).Int64() + + ctx.Data["RepoId"] = repoId var posterId int64 = 0 if ctx.Query("type") == "created_by" { @@ -299,10 +302,12 @@ func Issues(ctx *middleware.Context) { // Get all repositories. repos, err := models.GetRepositories(ctx.User) if err != nil { - ctx.Handle(200, "user.Issues(get repository)", err) + ctx.Handle(200, "user.Issues(get repositories)", err) return } + showRepos := make([]models.Repository, 0, len(repos)) + var closedIssueCount, createdByCount int // Get all issues. @@ -315,8 +320,18 @@ func Issues(ctx *middleware.Context) { } closedIssueCount += repo.NumClosedIssues - repos[i].NumOpenIssues = repo.NumIssues - repo.NumClosedIssues + + // Set repository information to issues. + for j := range issues { + issues[j].Repo = &repos[i] + } allIssues = append(allIssues, issues...) + + repos[i].NumOpenIssues = repo.NumIssues - repo.NumClosedIssues + if repos[i].NumOpenIssues > 0 { + showRepos = append(showRepos, repos[i]) + + } } showIssues := make([]models.Issue, 0, len(allIssues)) @@ -335,12 +350,16 @@ func Issues(ctx *middleware.Context) { createdByCount++ } + if repoId > 0 && repoId != allIssues[i].Repo.Id { + continue + } + if isShowClosed == allIssues[i].IsClosed { showIssues = append(showIssues, allIssues[i]) } } - ctx.Data["Repos"] = repos + ctx.Data["Repos"] = showRepos ctx.Data["Issues"] = showIssues ctx.Data["AllIssueCount"] = len(allIssues) ctx.Data["ClosedIssueCount"] = closedIssueCount |