aboutsummaryrefslogtreecommitdiff
path: root/pkg/handler/quote/quote.go
blob: b25eb9008dff0ebc919dd1ad6cd1dffd922c007d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
package quote

import (
	"strconv"

	"github.com/labstack/echo/v4"
	"sh.org.ru/pkg/model"
	"sh.org.ru/pkg/tpl"
)

func (h *Handler) Quote(c echo.Context) error {
	sid := c.Param("id")
	id, err := strconv.Atoi(sid)
	if err != nil {
		return echo.ErrNotFound
	}

	quote := new(model.Quote)
	err = h.db.NewSelect().
		Model(quote).
		Where("id = ?", id).Scan(c.Request().Context(), quote)
	if err != nil {
		return err
	}

	return tpl.QuotePage(quote).Render(c.Request().Context(), c.Response())
}