putting web from main into this branch

This commit is contained in:
viljarb
2026-02-18 20:52:50 +01:00
parent 77dd155299
commit f00bf0a684
37 changed files with 3558 additions and 0 deletions

30
pkg/web/handler/forms.go Normal file
View File

@@ -0,0 +1,30 @@
package handler
import (
"net/http"
"github.com/go-playground/form/v4"
"github.com/go-playground/validator/v10"
)
var (
decoder = form.NewDecoder()
validate = validator.New(validator.WithRequiredStructEnabled())
)
func ParseForm[T any](r *http.Request) (*T, error) {
if err := r.ParseForm(); err != nil {
return nil, err
}
var data T
if err := decoder.Decode(&data, r.PostForm); err != nil {
return nil, err
}
return &data, nil
}
func ValidateForm[T any](data *T) error {
return validate.Struct(data)
}