Compare commits
3 Commits
e10448f1e3
...
2537235ce6
Author | SHA1 | Date | |
---|---|---|---|
2537235ce6 | |||
4deda8adf1 | |||
d910a722df |
@ -7,6 +7,7 @@ import (
|
||||
"html/template"
|
||||
"image/png"
|
||||
|
||||
"git.odit.services/lfk/document-server/templates"
|
||||
"github.com/boombuler/barcode"
|
||||
"github.com/boombuler/barcode/code128"
|
||||
"github.com/boombuler/barcode/ean"
|
||||
@ -79,10 +80,19 @@ func (t *DefaultTemplater) GenerateBarcode(code string, format string, prefix st
|
||||
return base64.StdEncoding.EncodeToString(buf.Bytes()), nil
|
||||
}
|
||||
|
||||
func (t *DefaultTemplater) SelectSponsorImage(id int) (string, error) {
|
||||
sponsors := []string{
|
||||
"vrbank",
|
||||
"odit",
|
||||
"sparkasse",
|
||||
}
|
||||
return templates.GetImage(sponsors[id%len(sponsors)]), nil
|
||||
}
|
||||
|
||||
func (t *DefaultTemplater) StringToTemplate(templateString string) (*template.Template, error) {
|
||||
return template.New("template").Funcs(template.FuncMap{
|
||||
"barcode": t.GenerateBarcode,
|
||||
"sponsorLogo": func(id int) string { return "a" },
|
||||
"sponsorLogo": t.SelectSponsorImage,
|
||||
}).Parse(templateString)
|
||||
}
|
||||
|
||||
|
1
static/images/odit.base64
Normal file
1
static/images/odit.base64
Normal file
File diff suppressed because one or more lines are too long
1
static/images/sparkasse.base64
Normal file
1
static/images/sparkasse.base64
Normal file
File diff suppressed because one or more lines are too long
1
static/images/vrbank.base64
Normal file
1
static/images/vrbank.base64
Normal file
File diff suppressed because one or more lines are too long
1
templates/images/error.base64
Normal file
1
templates/images/error.base64
Normal file
File diff suppressed because one or more lines are too long
@ -3,6 +3,8 @@ package templates
|
||||
import (
|
||||
_ "embed"
|
||||
"fmt"
|
||||
"log"
|
||||
"os"
|
||||
)
|
||||
|
||||
//go:embed card/en.html
|
||||
@ -20,6 +22,9 @@ var ContractTemplateDe string
|
||||
//go:embed images/sponsoringheader.base64
|
||||
var ImageSponsoringHeaderBase64 string
|
||||
|
||||
//go:embed images/error.base64
|
||||
var ImageErrorBase64 string
|
||||
|
||||
func GetTemplate(locale, templateName string) (string, error) {
|
||||
switch templateName {
|
||||
case "card":
|
||||
@ -39,3 +44,12 @@ func GetTemplate(locale, templateName string) (string, error) {
|
||||
}
|
||||
return "", fmt.Errorf("template not found with name %s and locale %s", templateName, locale)
|
||||
}
|
||||
|
||||
func GetImage(imageName string) string {
|
||||
content, err := os.ReadFile("static/images/" + imageName + ".base64")
|
||||
if content == nil || err != nil {
|
||||
log.Printf("error reading image %s: %v", imageName, err)
|
||||
return ImageErrorBase64
|
||||
}
|
||||
return string(content)
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user