summaryrefslogtreecommitdiff
path: root/srv/src/api/render.go
diff options
context:
space:
mode:
authorBrian Picciano <mediocregopher@gmail.com>2022-05-14 20:42:43 -0600
committerBrian Picciano <mediocregopher@gmail.com>2022-05-14 20:42:43 -0600
commite24dd6d630cf558c616c1252bacfff6d343b4194 (patch)
tree8e272e095f2f906adeae4688f4b81396926e7a73 /srv/src/api/render.go
parente41ff2b897be24a894e75b850f1c06652cc034be (diff)
Import posts in dev-shell target
Diffstat (limited to 'srv/src/api/render.go')
-rw-r--r--srv/src/api/render.go17
1 files changed, 14 insertions, 3 deletions
diff --git a/srv/src/api/render.go b/srv/src/api/render.go
index b2ca3c8..6359505 100644
--- a/srv/src/api/render.go
+++ b/srv/src/api/render.go
@@ -59,7 +59,7 @@ func (a *api) renderIndexHandler() http.Handler {
return
}
- posts, _, err := a.params.PostStore.Get(page, pageCount)
+ posts, hasMore, err := a.params.PostStore.WithOrderDesc().Get(page, pageCount)
if err != nil {
apiutil.InternalServerError(
rw, r, fmt.Errorf("fetching page %d of posts: %w", page, err),
@@ -68,9 +68,20 @@ func (a *api) renderIndexHandler() http.Handler {
}
tplData := struct {
- Posts []post.StoredPost
+ Posts []post.StoredPost
+ PrevPage, NextPage int
}{
- Posts: posts,
+ Posts: posts,
+ PrevPage: -1,
+ NextPage: -1,
+ }
+
+ if page > 0 {
+ tplData.PrevPage = page - 1
+ }
+
+ if hasMore {
+ tplData.NextPage = page + 1
}
if err := tpl.Execute(rw, tplData); err != nil {