commit 23b4241cbf28e92c7b2b58ae9e452a011f592511
parent 5b6235647b520a24c9520859195db3b727687cbc
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Sun, 15 Jan 2023 20:26:07 -0800
use paginator
Diffstat:
1 file changed, 2 insertions(+), 12 deletions(-)
diff --git a/pkg/web/handlers/admin.go b/pkg/web/handlers/admin.go
@@ -247,29 +247,19 @@ func AdminHandler(c echo.Context) error {
var data adminData
data.ActiveTab = "users"
data.Query = strings.TrimSpace(c.QueryParam("q"))
- wantedPage := utils.DoParseInt64(c.QueryParam("p"))
likeQuery := "%" + data.Query + "%"
query := database.DB.Table("users")
if data.Query != "" {
query = query.Where("username LIKE ?", likeQuery, likeQuery, data.Query)
}
- query.Count(&data.UsersCount)
- page, maxPage := Paginate(ResultsPerPage, wantedPage, data.UsersCount)
+ data.CurrentPage, data.MaxPage, data.UsersCount, query = NewPaginator().Paginate(c, query)
- query = database.DB.
- Order("id DESC").
- Offset((page - 1) * ResultsPerPage).
- Limit(ResultsPerPage)
- if data.Query != "" {
- query = query.Where("username LIKE ?", likeQuery, likeQuery, data.Query)
- }
+ query = query.Order("id DESC")
if err := query.Find(&data.Users).Error; err != nil {
logrus.Error(err)
}
- data.CurrentPage = page
- data.MaxPage = maxPage
return c.Render(http.StatusOK, "admin.users", data)
}