mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-25 05:02:42 +01:00
This commit is contained in:
parent
44ff1d6a1e
commit
9cc5a89b8c
2 changed files with 43 additions and 36 deletions
|
@ -364,21 +364,17 @@ func Issues(ctx *context.Context) {
|
|||
filterMode = models.FilterModeAll
|
||||
)
|
||||
|
||||
if ctxUser.IsOrganization() {
|
||||
viewType = ctx.Query("type")
|
||||
switch viewType {
|
||||
case "assigned":
|
||||
filterMode = models.FilterModeAssign
|
||||
case "created_by":
|
||||
filterMode = models.FilterModeCreate
|
||||
case "mentioned":
|
||||
filterMode = models.FilterModeMention
|
||||
case "your_repositories": // filterMode already set to All
|
||||
default:
|
||||
viewType = "your_repositories"
|
||||
} else {
|
||||
viewType = ctx.Query("type")
|
||||
switch viewType {
|
||||
case "assigned":
|
||||
filterMode = models.FilterModeAssign
|
||||
case "created_by":
|
||||
filterMode = models.FilterModeCreate
|
||||
case "mentioned":
|
||||
filterMode = models.FilterModeMention
|
||||
case "your_repositories": // filterMode already set to All
|
||||
default:
|
||||
viewType = "your_repositories"
|
||||
}
|
||||
}
|
||||
|
||||
page := ctx.QueryInt("page")
|
||||
|
@ -453,11 +449,15 @@ func Issues(ctx *context.Context) {
|
|||
case models.FilterModeAll:
|
||||
opts.RepoIDs = userRepoIDs
|
||||
case models.FilterModeAssign:
|
||||
opts.AssigneeID = ctxUser.ID
|
||||
opts.AssigneeID = ctx.User.ID
|
||||
case models.FilterModeCreate:
|
||||
opts.PosterID = ctxUser.ID
|
||||
opts.PosterID = ctx.User.ID
|
||||
case models.FilterModeMention:
|
||||
opts.MentionedID = ctxUser.ID
|
||||
opts.MentionedID = ctx.User.ID
|
||||
}
|
||||
|
||||
if ctxUser.IsOrganization() {
|
||||
opts.RepoIDs = userRepoIDs
|
||||
}
|
||||
|
||||
var forceEmpty bool
|
||||
|
@ -575,7 +575,7 @@ func Issues(ctx *context.Context) {
|
|||
}
|
||||
|
||||
userIssueStatsOpts := models.UserIssueStatsOptions{
|
||||
UserID: ctxUser.ID,
|
||||
UserID: ctx.User.ID,
|
||||
UserRepoIDs: userRepoIDs,
|
||||
FilterMode: filterMode,
|
||||
IsPull: isPullList,
|
||||
|
@ -585,6 +585,9 @@ func Issues(ctx *context.Context) {
|
|||
if len(repoIDs) > 0 {
|
||||
userIssueStatsOpts.UserRepoIDs = repoIDs
|
||||
}
|
||||
if ctxUser.IsOrganization() {
|
||||
userIssueStatsOpts.RepoIDs = userRepoIDs
|
||||
}
|
||||
userIssueStats, err := models.GetUserIssueStats(userIssueStatsOpts)
|
||||
if err != nil {
|
||||
ctx.ServerError("GetUserIssueStats User", err)
|
||||
|
@ -594,7 +597,7 @@ func Issues(ctx *context.Context) {
|
|||
var shownIssueStats *models.IssueStats
|
||||
if !forceEmpty {
|
||||
statsOpts := models.UserIssueStatsOptions{
|
||||
UserID: ctxUser.ID,
|
||||
UserID: ctx.User.ID,
|
||||
UserRepoIDs: userRepoIDs,
|
||||
FilterMode: filterMode,
|
||||
IsPull: isPullList,
|
||||
|
@ -604,6 +607,8 @@ func Issues(ctx *context.Context) {
|
|||
}
|
||||
if len(repoIDs) > 0 {
|
||||
statsOpts.RepoIDs = repoIDs
|
||||
} else if ctxUser.IsOrganization() {
|
||||
statsOpts.RepoIDs = userRepoIDs
|
||||
}
|
||||
shownIssueStats, err = models.GetUserIssueStats(statsOpts)
|
||||
if err != nil {
|
||||
|
@ -616,15 +621,19 @@ func Issues(ctx *context.Context) {
|
|||
|
||||
var allIssueStats *models.IssueStats
|
||||
if !forceEmpty {
|
||||
allIssueStats, err = models.GetUserIssueStats(models.UserIssueStatsOptions{
|
||||
UserID: ctxUser.ID,
|
||||
allIssueStatsOpts := models.UserIssueStatsOptions{
|
||||
UserID: ctx.User.ID,
|
||||
UserRepoIDs: userRepoIDs,
|
||||
FilterMode: filterMode,
|
||||
IsPull: isPullList,
|
||||
IsClosed: isShowClosed,
|
||||
IssueIDs: issueIDsFromSearch,
|
||||
LabelIDs: opts.LabelIDs,
|
||||
})
|
||||
}
|
||||
if ctxUser.IsOrganization() {
|
||||
allIssueStatsOpts.RepoIDs = userRepoIDs
|
||||
}
|
||||
allIssueStats, err = models.GetUserIssueStats(allIssueStatsOpts)
|
||||
if err != nil {
|
||||
ctx.ServerError("GetUserIssueStats All", err)
|
||||
return
|
||||
|
|
|
@ -9,20 +9,18 @@
|
|||
{{.i18n.Tr "home.issues.in_your_repos"}}
|
||||
<strong class="ui right">{{CountFmt .IssueStats.YourRepositoriesCount}}</strong>
|
||||
</a>
|
||||
{{if not .ContextUser.IsOrganization}}
|
||||
<a class="{{if eq .ViewType "assigned"}}ui basic blue button{{end}} item" href="{{.Link}}?type=assigned&repos=[{{range $.RepoIDs}}{{.}}%2C{{end}}]&sort={{$.SortType}}&state={{.State}}">
|
||||
{{.i18n.Tr "repo.issues.filter_type.assigned_to_you"}}
|
||||
<strong class="ui right">{{CountFmt .IssueStats.AssignCount}}</strong>
|
||||
</a>
|
||||
<a class="{{if eq .ViewType "created_by"}}ui basic blue button{{end}} item" href="{{.Link}}?type=created_by&repos=[{{range $.RepoIDs}}{{.}}%2C{{end}}]&sort={{$.SortType}}&state={{.State}}">
|
||||
{{.i18n.Tr "repo.issues.filter_type.created_by_you"}}
|
||||
<strong class="ui right">{{CountFmt .IssueStats.CreateCount}}</strong>
|
||||
</a>
|
||||
<a class="{{if eq .ViewType "mentioned"}}ui basic blue button{{end}} item" href="{{.Link}}?type=mentioned&repos=[{{range $.RepoIDs}}{{.}}%2C{{end}}]&sort={{$.SortType}}&state={{.State}}">
|
||||
{{.i18n.Tr "repo.issues.filter_type.mentioning_you"}}
|
||||
<strong class="ui right">{{CountFmt .IssueStats.MentionCount}}</strong>
|
||||
</a>
|
||||
{{end}}
|
||||
<a class="{{if eq .ViewType "assigned"}}ui basic blue button{{end}} item" href="{{.Link}}?type=assigned&repos=[{{range $.RepoIDs}}{{.}}%2C{{end}}]&sort={{$.SortType}}&state={{.State}}">
|
||||
{{.i18n.Tr "repo.issues.filter_type.assigned_to_you"}}
|
||||
<strong class="ui right">{{CountFmt .IssueStats.AssignCount}}</strong>
|
||||
</a>
|
||||
<a class="{{if eq .ViewType "created_by"}}ui basic blue button{{end}} item" href="{{.Link}}?type=created_by&repos=[{{range $.RepoIDs}}{{.}}%2C{{end}}]&sort={{$.SortType}}&state={{.State}}">
|
||||
{{.i18n.Tr "repo.issues.filter_type.created_by_you"}}
|
||||
<strong class="ui right">{{CountFmt .IssueStats.CreateCount}}</strong>
|
||||
</a>
|
||||
<a class="{{if eq .ViewType "mentioned"}}ui basic blue button{{end}} item" href="{{.Link}}?type=mentioned&repos=[{{range $.RepoIDs}}{{.}}%2C{{end}}]&sort={{$.SortType}}&state={{.State}}">
|
||||
{{.i18n.Tr "repo.issues.filter_type.mentioning_you"}}
|
||||
<strong class="ui right">{{CountFmt .IssueStats.MentionCount}}</strong>
|
||||
</a>
|
||||
<div class="ui divider"></div>
|
||||
<a class="{{if not $.RepoIDs}}ui basic blue button{{end}} repo name item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&q={{$.Keyword}}">
|
||||
<span class="text truncate">All</span>
|
||||
|
|
Loading…
Reference in a new issue