diff options
Diffstat (limited to 'routers/admin/repos.go')
-rw-r--r-- | routers/admin/repos.go | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/routers/admin/repos.go b/routers/admin/repos.go index 3f63887139..d1d97b279b 100644 --- a/routers/admin/repos.go +++ b/routers/admin/repos.go @@ -5,17 +5,20 @@ package admin import ( + "github.com/Unknwon/paginater" "math" "github.com/gogits/gogs/models" "github.com/gogits/gogs/modules/base" "github.com/gogits/gogs/modules/middleware" + "github.com/gogits/gogs/modules/setting" ) const ( REPOS base.TplName = "admin/repo/list" ) +//* TODO Remove after general using of github.com/Unknwon/paginater func pagination(ctx *middleware.Context, count int64, pageNum int) int { p := ctx.QueryInt("p") if p < 1 { @@ -33,19 +36,28 @@ func pagination(ctx *middleware.Context, count int64, pageNum int) int { return p } +//*/ func Repositories(ctx *middleware.Context) { ctx.Data["Title"] = ctx.Tr("admin.repositories") ctx.Data["PageIsAdmin"] = true ctx.Data["PageIsAdminRepositories"] = true - pageNum := 50 - p := pagination(ctx, models.CountRepositories(), pageNum) + total := models.CountRepositories() + page := ctx.QueryInt("page") + if page <= 1 { + page = 1 + } + ctx.Data["Page"] = paginater.New(int(total), setting.AdminRepoPagingNum, page, 5) + + repos, err := models.RepositoriesWithUsers(page, setting.AdminRepoPagingNum) - var err error - ctx.Data["Repos"], err = models.GetRepositoriesWithUsers(pageNum, (p-1)*pageNum) if err != nil { - ctx.Handle(500, "GetRepositoriesWithUsers", err) + ctx.Handle(500, "RepositoriesWithUsers", err) return } + + ctx.Data["Repos"] = repos + ctx.Data["Total"] = total + ctx.HTML(200, REPOS) } |