summaryrefslogtreecommitdiffstats
path: root/routers/user/profile.go
diff options
context:
space:
mode:
authorzeripath <art27@cantab.net>2019-05-15 16:24:39 +0100
committertechknowlogick <techknowlogick@gitea.io>2019-05-15 11:24:39 -0400
commit56ae539bed7d822980ebaae8db316a0177fc028c (patch)
treeee63a75ba156002cb6c40975c1c35b032954f913 /routers/user/profile.go
parent5fb1ad70113d3272232c266b4ff58e9f7f646594 (diff)
downloadgitea-56ae539bed7d822980ebaae8db316a0177fc028c.tar.gz
gitea-56ae539bed7d822980ebaae8db316a0177fc028c.zip
SearchRepositoryByName improvements and unification (#6897)
Diffstat (limited to 'routers/user/profile.go')
-rw-r--r--routers/user/profile.go96
1 files changed, 33 insertions, 63 deletions
diff --git a/routers/user/profile.go b/routers/user/profile.go
index a7dab18c7a..bda29522d9 100644
--- a/routers/user/profile.go
+++ b/routers/user/profile.go
@@ -170,74 +170,44 @@ func Profile(ctx *context.Context) {
}
case "stars":
ctx.Data["PageIsProfileStarList"] = true
- if len(keyword) == 0 {
- repos, err = ctxUser.GetStarredRepos(showPrivate, page, setting.UI.User.RepoPagingNum, orderBy.String())
- if err != nil {
- ctx.ServerError("GetStarredRepos", err)
- return
- }
-
- count, err = ctxUser.GetStarredRepoCount(showPrivate)
- if err != nil {
- ctx.ServerError("GetStarredRepoCount", err)
- return
- }
- } else {
- repos, count, err = models.SearchRepositoryByName(&models.SearchRepoOptions{
- Keyword: keyword,
- OwnerID: ctxUser.ID,
- OrderBy: orderBy,
- Private: showPrivate,
- Page: page,
- PageSize: setting.UI.User.RepoPagingNum,
- Starred: true,
- Collaborate: util.OptionalBoolFalse,
- TopicOnly: topicOnly,
- })
- if err != nil {
- ctx.ServerError("SearchRepositoryByName", err)
- return
- }
+ repos, count, err = models.SearchRepositoryByName(&models.SearchRepoOptions{
+ Keyword: keyword,
+ OrderBy: orderBy,
+ Private: ctx.IsSigned,
+ UserIsAdmin: ctx.IsUserSiteAdmin(),
+ UserID: ctx.Data["SignedUserID"].(int64),
+ Page: page,
+ PageSize: setting.UI.User.RepoPagingNum,
+ StarredByID: ctxUser.ID,
+ Collaborate: util.OptionalBoolFalse,
+ TopicOnly: topicOnly,
+ })
+ if err != nil {
+ ctx.ServerError("SearchRepositoryByName", err)
+ return
}
total = int(count)
default:
- if len(keyword) == 0 {
- repos, err = models.GetUserRepositories(ctxUser.ID, showPrivate, page, setting.UI.User.RepoPagingNum, orderBy.String())
- if err != nil {
- ctx.ServerError("GetRepositories", err)
- return
- }
-
- if showPrivate {
- total = ctxUser.NumRepos
- } else {
- count, err := models.GetPublicRepositoryCount(ctxUser)
- if err != nil {
- ctx.ServerError("GetPublicRepositoryCount", err)
- return
- }
- total = int(count)
- }
- } else {
- repos, count, err = models.SearchRepositoryByName(&models.SearchRepoOptions{
- Keyword: keyword,
- OwnerID: ctxUser.ID,
- OrderBy: orderBy,
- Private: showPrivate,
- Page: page,
- IsProfile: true,
- PageSize: setting.UI.User.RepoPagingNum,
- Collaborate: util.OptionalBoolFalse,
- TopicOnly: topicOnly,
- })
- if err != nil {
- ctx.ServerError("SearchRepositoryByName", err)
- return
- }
-
- total = int(count)
+ repos, count, err = models.SearchRepositoryByName(&models.SearchRepoOptions{
+ Keyword: keyword,
+ OwnerID: ctxUser.ID,
+ OrderBy: orderBy,
+ Private: ctx.IsSigned,
+ UserIsAdmin: ctx.IsUserSiteAdmin(),
+ UserID: ctx.Data["SignedUserID"].(int64),
+ Page: page,
+ IsProfile: true,
+ PageSize: setting.UI.User.RepoPagingNum,
+ Collaborate: util.OptionalBoolFalse,
+ TopicOnly: topicOnly,
+ })
+ if err != nil {
+ ctx.ServerError("SearchRepositoryByName", err)
+ return
}
+
+ total = int(count)
}
ctx.Data["Repos"] = repos
ctx.Data["Total"] = total