fix(card): Use correct template endpoints

This commit is contained in:
Nicolai Ort 2024-12-03 18:51:34 +01:00
parent 1657a10dec
commit 5dbe7816cd
Signed by: niggl
GPG Key ID: 13AFA55AF62F269F
3 changed files with 24 additions and 12 deletions

View File

@ -48,6 +48,7 @@ func GenerateCard(c *fiber.Ctx) error {
genConfig := &models.CardTemplateOptions{
Cards: cardRequest.Cards,
CardsSwapped: invertCardArrayItems(cardRequest.Cards),
EventName: "Event name",
CardSubtitle: "Card subtitle",
BarcodeFormat: "ean13",
@ -60,15 +61,24 @@ func GenerateCard(c *fiber.Ctx) error {
"error": err.Error(),
})
}
c.Set(fiber.HeaderContentType, "text/html")
return c.SendString(result)
// converter := services.GotenbergConverter{BaseUrl: "http://localhost:3001"}
// pdf, err := converter.ToPdf(result, "a4", false)
// if err != nil {
// return c.Status(fiber.StatusInternalServerError).JSON(fiber.Map{
// "error": err.Error(),
// })
// }
converter := services.GotenbergConverter{BaseUrl: "http://localhost:3001"}
pdf, err := converter.ToPdf(result, "a5", true)
if err != nil {
return c.Status(fiber.StatusInternalServerError).JSON(fiber.Map{
"error": err.Error(),
})
}
c.Set(fiber.HeaderContentType, "application/pdf")
return c.Send(pdf)
// c.Set(fiber.HeaderContentType, "application/pdf")
// return c.Send(pdf)
}
func invertCardArrayItems(cards []models.Card) []models.Card {
inverted := make([]models.Card, 0)
for i := len(cards) - 1; i >= 0; i-- {
inverted = append(inverted, cards[i])
}
return inverted
}

View File

@ -1,7 +1,7 @@
package models
type CardRequest struct {
Cards []Card `json:"card"`
Cards []Card `json:"cards"`
Locale string `json:"locale" enums:"en,de"`
}
@ -14,6 +14,7 @@ type Card struct {
type CardTemplateOptions struct {
Cards []Card `json:"cards"`
CardsSwapped []Card `json:"cards_swapped"`
EventName string `json:"event_name"`
CardSubtitle string `json:"card_subtitle"`
BarcodeFormat string `json:"barcode_format"`

View File

@ -84,7 +84,8 @@ func (t *DefaultTemplater) GenerateBarcode(code int, format string, prefix strin
func (t *DefaultTemplater) StringToTemplate(templateString string) (*template.Template, error) {
return template.New("template").Funcs(template.FuncMap{
"barcode": t.GenerateBarcode,
"barcode": t.GenerateBarcode,
"sponsorLogo": func(id int) string { return "a" },
}).Parse(templateString)
}