refactor(templates): Dynamic image loading
This commit is contained in:
parent
c5dc4f7e79
commit
11a9b51197
@ -47,15 +47,12 @@ func GenerateContract(c *fiber.Ctx) error {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
sponsoringHeader := services.GetImage("sponsoringheader")
|
|
||||||
|
|
||||||
genConfig := &models.ContractTemplateOptions{
|
genConfig := &models.ContractTemplateOptions{
|
||||||
Runners: contract.Runners,
|
Runners: contract.Runners,
|
||||||
CurrencySymbol: "€",
|
CurrencySymbol: "€",
|
||||||
Disclaimer: "This is a disclaimer",
|
Disclaimer: "This is a disclaimer",
|
||||||
ReceiptMinimumAmount: 10,
|
ReceiptMinimumAmount: 10,
|
||||||
EventName: "Event name",
|
EventName: "Event name",
|
||||||
SponsoringHeader: sponsoringHeader,
|
|
||||||
BarcodeFormat: "ean13",
|
BarcodeFormat: "ean13",
|
||||||
BarcodePrefix: "1",
|
BarcodePrefix: "1",
|
||||||
}
|
}
|
||||||
|
@ -90,7 +90,11 @@ func (t *DefaultTemplater) SelectSponsorImage(id int) (string, error) {
|
|||||||
return GetImage(sponsors[id%len(sponsors)]), nil
|
return GetImage(sponsors[id%len(sponsors)]), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func FormatUnit(unit string, locale string, amount int) (string, error) {
|
func (t *DefaultTemplater) LoadImage(name string) (string, error) {
|
||||||
|
return GetImage(name), nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *DefaultTemplater) FormatUnit(unit string, locale string, amount int) (string, error) {
|
||||||
var formatted string
|
var formatted string
|
||||||
switch unit {
|
switch unit {
|
||||||
case "kilometer":
|
case "kilometer":
|
||||||
@ -111,7 +115,8 @@ func (t *DefaultTemplater) StringToTemplate(templateString string) (*template.Te
|
|||||||
return template.New("template").Funcs(template.FuncMap{
|
return template.New("template").Funcs(template.FuncMap{
|
||||||
"barcode": t.GenerateBarcode,
|
"barcode": t.GenerateBarcode,
|
||||||
"sponsorLogo": t.SelectSponsorImage,
|
"sponsorLogo": t.SelectSponsorImage,
|
||||||
"formatUnit": FormatUnit,
|
"formatUnit": t.FormatUnit,
|
||||||
|
"loadImage": t.LoadImage,
|
||||||
}).Parse(templateString)
|
}).Parse(templateString)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
1
static/images/certificate_background.base64
Normal file
1
static/images/certificate_background.base64
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -27,7 +27,7 @@
|
|||||||
<body class="A5 landscape">
|
<body class="A5 landscape">
|
||||||
{{ range .Runners }}
|
{{ range .Runners }}
|
||||||
<div class="sheet">
|
<div class="sheet">
|
||||||
<img id="header_img" width="100%" src="data:image/png;base64,{{ $.SponsoringHeader}}" />
|
<img id="header_img" width="100%" src="data:image/png;base64,{{ loadImage "sponsoringheader" }}" />
|
||||||
<div style=" padding: 0 1rem 0 1rem;">
|
<div style=" padding: 0 1rem 0 1rem;">
|
||||||
<div class="columns">
|
<div class="columns">
|
||||||
<div class="column is-10">
|
<div class="column is-10">
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
<body class="A5 landscape">
|
<body class="A5 landscape">
|
||||||
{{ range .Runners }}
|
{{ range .Runners }}
|
||||||
<div class="sheet">
|
<div class="sheet">
|
||||||
<img id="header_img" width="100%" src="data:image/png;base64,{{ $.SponsoringHeader}}" />
|
<img id="header_img" width="100%" src="data:image/png;base64,{{ loadImage "sponsoringheader" }}" />
|
||||||
<div style=" padding: 0 1rem 0 1rem;">
|
<div style=" padding: 0 1rem 0 1rem;">
|
||||||
<div class="columns">
|
<div class="columns">
|
||||||
<div class="column is-10">
|
<div class="column is-10">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user