woodpecker/server/router/middleware/session/pagination.go
qwerty287 42a115e19e
Add PR pipeline list (#1641)
Instead of viewing PR pipelines in the branches lists, add a separate
list for them. The API endpoint for PRs supports pagination (thus I
added a lot of pagination-related stuff), the UI doesn't yet though.


![wp](https://user-images.githubusercontent.com/80460567/226099133-bb4935d6-c357-4d73-8465-9157e25c0d82.png)

Closes #1619 

Extends this part of #1640

---------

Co-authored-by: Anbraten <anton@ju60.de>
2023-03-19 10:43:57 +01:00

28 lines
508 B
Go

package session
import (
"strconv"
"github.com/gin-gonic/gin"
"github.com/woodpecker-ci/woodpecker/server/model"
)
const (
defaultPage = 1
defaultPerPage = 25
)
func Pagination(c *gin.Context) *model.PaginationData {
page, err := strconv.ParseInt(c.Param("page"), 10, 64)
if err != nil {
page = defaultPage
}
perPage, err := strconv.ParseInt(c.Param("perPage"), 10, 64)
if err != nil {
perPage = defaultPerPage
}
return &model.PaginationData{
Page: page,
PerPage: perPage,
}
}