forked from forgejo/forgejo
[API] generalize list header (#16551)
* Add info about list endpoints to CONTRIBUTING.md * Let all list endpoints return X-Total-Count header * Add TODOs for GetCombinedCommitStatusByRef * Fix models/issue_stopwatch.go * Rrefactor models.ListDeployKeys * Introduce helper func and use them for SetLinkHeader related func
This commit is contained in:
parent
ca13e1d56c
commit
2289580bb7
88 changed files with 637 additions and 329 deletions
|
@ -5,7 +5,6 @@
|
|||
package admin
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"net/http"
|
||||
|
||||
"code.gitea.io/gitea/models"
|
||||
|
@ -47,8 +46,7 @@ func ListUnadoptedRepositories(ctx *context.APIContext) {
|
|||
ctx.InternalServerError(err)
|
||||
}
|
||||
|
||||
ctx.Header().Set("X-Total-Count", fmt.Sprintf("%d", count))
|
||||
ctx.Header().Set("Access-Control-Expose-Headers", "X-Total-Count")
|
||||
ctx.SetTotalCountHeader(int64(count))
|
||||
|
||||
ctx.JSON(http.StatusOK, repoNames)
|
||||
}
|
||||
|
|
|
@ -11,6 +11,7 @@ import (
|
|||
"code.gitea.io/gitea/modules/cron"
|
||||
"code.gitea.io/gitea/modules/log"
|
||||
"code.gitea.io/gitea/modules/structs"
|
||||
"code.gitea.io/gitea/modules/util"
|
||||
"code.gitea.io/gitea/routers/api/v1/utils"
|
||||
)
|
||||
|
||||
|
@ -36,12 +37,10 @@ func ListCronTasks(ctx *context.APIContext) {
|
|||
// "403":
|
||||
// "$ref": "#/responses/forbidden"
|
||||
tasks := cron.ListTasks()
|
||||
listOpts := utils.GetListOptions(ctx)
|
||||
start, end := listOpts.GetStartEnd()
|
||||
count := len(tasks)
|
||||
|
||||
if len(tasks) > listOpts.PageSize {
|
||||
tasks = tasks[start:end]
|
||||
}
|
||||
listOpts := utils.GetListOptions(ctx)
|
||||
tasks = util.PaginateSlice(tasks, listOpts.Page, listOpts.PageSize).(cron.TaskTable)
|
||||
|
||||
res := make([]structs.Cron, len(tasks))
|
||||
for i, task := range tasks {
|
||||
|
@ -53,6 +52,8 @@ func ListCronTasks(ctx *context.APIContext) {
|
|||
ExecTimes: task.ExecTimes,
|
||||
}
|
||||
}
|
||||
|
||||
ctx.SetTotalCountHeader(int64(count))
|
||||
ctx.JSON(http.StatusOK, res)
|
||||
}
|
||||
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
package admin
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"net/http"
|
||||
|
||||
"code.gitea.io/gitea/models"
|
||||
|
@ -121,7 +120,6 @@ func GetAllOrgs(ctx *context.APIContext) {
|
|||
}
|
||||
|
||||
ctx.SetLinkHeader(int(maxResults), listOptions.PageSize)
|
||||
ctx.Header().Set("X-Total-Count", fmt.Sprintf("%d", maxResults))
|
||||
ctx.Header().Set("Access-Control-Expose-Headers", "X-Total-Count, Link")
|
||||
ctx.SetTotalCountHeader(maxResults)
|
||||
ctx.JSON(http.StatusOK, &orgs)
|
||||
}
|
||||
|
|
|
@ -423,7 +423,6 @@ func GetAllUsers(ctx *context.APIContext) {
|
|||
}
|
||||
|
||||
ctx.SetLinkHeader(int(maxResults), listOptions.PageSize)
|
||||
ctx.Header().Set("X-Total-Count", fmt.Sprintf("%d", maxResults))
|
||||
ctx.Header().Set("Access-Control-Expose-Headers", "X-Total-Count, Link")
|
||||
ctx.SetTotalCountHeader(maxResults)
|
||||
ctx.JSON(http.StatusOK, &results)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue