bin/util.go

46 lines
971 B
Go
Raw Normal View History

2023-09-10 23:40:19 +02:00
package main
import (
"context"
"github.com/a-h/templ"
"github.com/labstack/echo/v4"
"github.com/teris-io/shortid"
)
func RenderComponent(c echo.Context, status int, component templ.Component) error {
w := c.Response().Writer
c.Response().Status = status
return component.Render(context.Background(), w)
}
func RenderErrorToast(c echo.Context, message string) error {
SetHeader(c, "HX-Retarget", "#toast")
SetHeader(c, "HX-Reswap", "beforeend")
return RenderComponent(c, 200, ToastError(message))
}
func AddHeader(c echo.Context, key, value string) {
c.Response().Header().Add(key, value)
}
func SetHeader(c echo.Context, key, value string) {
c.Response().Header().Set(key, value)
}
func SetContentType(c echo.Context, value string) {
SetHeader(c, "Content-Type", value)
}
func generateCodes() (code string, adminCode string, err error) {
code, err = shortid.Generate()
if err != nil {
return
}
adminCode, err = shortid.Generate()
return
}