diff options
Diffstat (limited to 'routers/admin/repos.go')
-rw-r--r-- | routers/admin/repos.go | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/routers/admin/repos.go b/routers/admin/repos.go index 6d9169f94d..3f63887139 100644 --- a/routers/admin/repos.go +++ b/routers/admin/repos.go @@ -5,6 +5,8 @@ package admin import ( + "math" + "github.com/gogits/gogs/models" "github.com/gogits/gogs/modules/base" "github.com/gogits/gogs/modules/middleware" @@ -14,6 +16,23 @@ const ( REPOS base.TplName = "admin/repo/list" ) +func pagination(ctx *middleware.Context, count int64, pageNum int) int { + p := ctx.QueryInt("p") + if p < 1 { + p = 1 + } + curCount := int64((p-1)*pageNum + pageNum) + if curCount >= count { + p = int(math.Ceil(float64(count) / float64(pageNum))) + } else { + ctx.Data["NextPageNum"] = p + 1 + } + if p > 1 { + ctx.Data["LastPageNum"] = p - 1 + } + return p +} + func Repositories(ctx *middleware.Context) { ctx.Data["Title"] = ctx.Tr("admin.repositories") ctx.Data["PageIsAdmin"] = true |