From 34ccc98a942098faefb5f4211b215ff9ccc7ad0e Mon Sep 17 00:00:00 2001 From: Alexander Neonxp Kiryukhin Date: Mon, 9 Dec 2024 01:07:15 +0300 Subject: Начальный MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/api/next.go | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 pkg/api/next.go (limited to 'pkg/api/next.go') diff --git a/pkg/api/next.go b/pkg/api/next.go new file mode 100644 index 0000000..c73af62 --- /dev/null +++ b/pkg/api/next.go @@ -0,0 +1,28 @@ +package api + +import ( + "time" + + "git.neonxp.ru/neonxp/guessr/pkg/middleware" + "github.com/labstack/echo/v4" +) + +func (h *Handler) PostNext(c echo.Context) error { + p, err := h.places.GetNext(c.Request().Context()) + if err != nil { + return err + } + + if state := c.Get("state"); state == nil { + return echo.ErrBadRequest + } + + state := c.Get("state").(*middleware.State) + state.CurrentGUID = p.GUID + state.Image = p.Img + if err := middleware.SetState(c, *state, int(365*24*time.Hour)); err != nil { + return err + } + + return c.JSON(200, state) +} -- cgit v1.2.3