summaryrefslogtreecommitdiffstats
path: root/models/issue.go
diff options
context:
space:
mode:
Diffstat (limited to 'models/issue.go')
-rw-r--r--models/issue.go23
1 files changed, 23 insertions, 0 deletions
diff --git a/models/issue.go b/models/issue.go
index 511bfa31c4..87e64ce99b 100644
--- a/models/issue.go
+++ b/models/issue.go
@@ -1682,6 +1682,21 @@ func GetUserIssueStats(opts UserIssueStatsOptions) (*IssueStats, error) {
if err != nil {
return nil, err
}
+ case FilterModeMention:
+ stats.OpenCount, err = x.Where(cond).And("is_closed = ?", false).
+ Join("INNER", "issue_user", "issue.id = issue_user.issue_id and issue_user.is_mentioned = ?", true).
+ And("issue_user.uid = ?", opts.UserID).
+ Count(new(Issue))
+ if err != nil {
+ return nil, err
+ }
+ stats.ClosedCount, err = x.Where(cond).And("is_closed = ?", true).
+ Join("INNER", "issue_user", "issue.id = issue_user.issue_id and issue_user.is_mentioned = ?", true).
+ And("issue_user.uid = ?", opts.UserID).
+ Count(new(Issue))
+ if err != nil {
+ return nil, err
+ }
}
cond = cond.And(builder.Eq{"issue.is_closed": opts.IsClosed})
@@ -1700,6 +1715,14 @@ func GetUserIssueStats(opts UserIssueStatsOptions) (*IssueStats, error) {
return nil, err
}
+ stats.MentionCount, err = x.Where(cond).
+ Join("INNER", "issue_user", "issue.id = issue_user.issue_id and issue_user.is_mentioned = ?", true).
+ And("issue_user.uid = ?", opts.UserID).
+ Count(new(Issue))
+ if err != nil {
+ return nil, err
+ }
+
stats.YourRepositoriesCount, err = x.Where(cond).
And(builder.In("issue.repo_id", opts.UserRepoIDs)).
Count(new(Issue))