diff --git a/models/issue.go b/models/issue.go index d815bc40101e..4fc3da25d67b 100644 --- a/models/issue.go +++ b/models/issue.go @@ -1711,13 +1711,15 @@ func GetUserIssueStats(opts UserIssueStatsOptions) (*IssueStats, error) { sess := func(cond builder.Cond) *xorm.Session { s := db.GetEngine(db.DefaultContext).Where(cond) - s.Join("INNER", "repository", "issue.repo_id = repository.id") if len(opts.LabelIDs) > 0 { s.Join("INNER", "issue_label", "issue_label.issue_id = issue.id"). In("issue_label.label_id", opts.LabelIDs) } - if opts.IsArchived != util.OptionalBoolNone { - s.And(builder.Eq{"repository.is_archived": opts.IsArchived.IsTrue()}) + if opts.UserID > 0 || opts.IsArchived != util.OptionalBoolNone { + s.Join("INNER", "repository", "issue.repo_id = repository.id") + if opts.IsArchived != util.OptionalBoolNone { + s.And(builder.Eq{"repository.is_archived": opts.IsArchived.IsTrue()}) + } } return s } diff --git a/models/repo_list.go b/models/repo_list.go index 0296efe58786..9bda0d5a374a 100644 --- a/models/repo_list.go +++ b/models/repo_list.go @@ -315,7 +315,7 @@ func userOrgPublicRepoCondPrivate(userID int64) builder.Cond { Join("INNER", "`user`", "`user`.id = `org_user`.org_id"). Where(builder.Eq{ "`org_user`.uid": userID, - "`user`.type": user_model.UserTypeOrganization, + "`user`.`type`": user_model.UserTypeOrganization, "`user`.visibility": structs.VisibleTypePrivate, }), ),