document-server/templates/templates.go

43 lines
923 B
Go

package templates
import (
_ "embed"
"fmt"
"html/template"
)
//go:embed card/en.html
var CardTemplateEn string
//go:embed card/de.html
var CardTemplateDe string
//go:embed contract/en.html
var ContractTemplateEn string
//go:embed contract/de.html
var ContractTemplateDe string
//go:embed images/sponsoringheader.base64
var ImageSponsoringHeaderBase64 string
func GetTemplate(locale, templateName string) (*template.Template, error) {
switch templateName {
case "card":
switch locale {
case "en":
return template.New("card").Parse(CardTemplateEn)
case "de":
return template.New("card").Parse(CardTemplateDe)
}
case "contract":
switch locale {
case "en":
return template.New("contract").Parse(ContractTemplateEn)
case "de":
return template.New("contract").Parse(ContractTemplateDe)
}
}
return nil, fmt.Errorf("template not found with name %s and locale %s", templateName, locale)
}