From 50936924cb2ef36b6b24c40528c85d80fde18b8f Mon Sep 17 00:00:00 2001 From: alex Date: Fri, 13 Oct 2023 16:11:02 +0200 Subject: [PATCH] added get page --- rspagination/rspagination.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/rspagination/rspagination.go b/rspagination/rspagination.go index 70f1de1..f9b50ee 100644 --- a/rspagination/rspagination.go +++ b/rspagination/rspagination.go @@ -38,3 +38,24 @@ func DbPageQuery(database *gorm.DB, query PageQuery, paginationLimit int, result Order(orderBy). Find(result) } + +// GetPage returns start and end for pagination +// can be used like this: robots[start:end] +func GetPage(lenList int, page int, limit int) (start int, end int) { + if page <= 0 { + page = 1 + } + + start = (page - 1) * limit + end = page * limit + + if start > lenList { + start = lenList + } + + if end > lenList { + end = lenList + } + + return start, end +}