aboutsummaryrefslogtreecommitdiffstats
path: root/routers/api/v1/notify
diff options
context:
space:
mode:
author6543 <6543@obermui.de>2021-08-12 14:43:08 +0200
committerGitHub <noreply@github.com>2021-08-12 14:43:08 +0200
commit2289580bb7ef8dfa4124c2b3bfb89897dbb35f46 (patch)
treee68aae604bb3d738b44156504a1415adaf042c68 /routers/api/v1/notify
parentca13e1d56c561f72cf8ad251fe61b1898abfec51 (diff)
downloadgitea-2289580bb7ef8dfa4124c2b3bfb89897dbb35f46.tar.gz
gitea-2289580bb7ef8dfa4124c2b3bfb89897dbb35f46.zip
[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
Diffstat (limited to 'routers/api/v1/notify')
-rw-r--r--routers/api/v1/notify/repo.go8
-rw-r--r--routers/api/v1/notify/user.go7
2 files changed, 15 insertions, 0 deletions
diff --git a/routers/api/v1/notify/repo.go b/routers/api/v1/notify/repo.go
index af4507f896..1a36642b6a 100644
--- a/routers/api/v1/notify/repo.go
+++ b/routers/api/v1/notify/repo.go
@@ -108,6 +108,12 @@ func ListRepoNotifications(ctx *context.APIContext) {
}
opts.RepoID = ctx.Repo.Repository.ID
+ totalCount, err := models.CountNotifications(opts)
+ if err != nil {
+ ctx.InternalServerError(err)
+ return
+ }
+
nl, err := models.GetNotifications(opts)
if err != nil {
ctx.InternalServerError(err)
@@ -119,6 +125,8 @@ func ListRepoNotifications(ctx *context.APIContext) {
return
}
+ ctx.SetTotalCountHeader(totalCount)
+
ctx.JSON(http.StatusOK, convert.ToNotifications(nl))
}
diff --git a/routers/api/v1/notify/user.go b/routers/api/v1/notify/user.go
index c2178b4dee..e4626cb719 100644
--- a/routers/api/v1/notify/user.go
+++ b/routers/api/v1/notify/user.go
@@ -68,6 +68,12 @@ func ListNotifications(ctx *context.APIContext) {
return
}
+ totalCount, err := models.CountNotifications(opts)
+ if err != nil {
+ ctx.InternalServerError(err)
+ return
+ }
+
nl, err := models.GetNotifications(opts)
if err != nil {
ctx.InternalServerError(err)
@@ -79,6 +85,7 @@ func ListNotifications(ctx *context.APIContext) {
return
}
+ ctx.SetTotalCountHeader(totalCount)
ctx.JSON(http.StatusOK, convert.ToNotifications(nl))
}